Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions Http.alusus
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,13 @@ module Http {
class Connection {
};

// connection user data
@expname[mg_set_user_connection_data]
func setUserConnectionData (connection: ptr[Connection], data : ptr[Void]);

@expname[mg_get_user_connection_data]
func getUserConnectionData (connection: ptr[Connection]) : ptr[Void];

// WebSocket Types
def WebSocketConnectCallback: alias ptr[func (connection: ptr[Connection], userData: ptr[Void]): Int];
def WebSocketReadyCallback: alias ptr[func (connection: ptr[Connection], userData: ptr[Void]): Void];
Expand Down
47 changes: 47 additions & 0 deletions README.ar.md
Original file line number Diff line number Diff line change
Expand Up @@ -1220,6 +1220,53 @@ def mutex: int[64];

يمكن استعمالها لقفل الاتصال من أجل الوصول المتزامن الآمن.

### عين_بيانات_إتصال_المستخدم (setUserConnectionData)

```
@تصدير[mg_set_user_connection_data]
دالة عين_بيانات_إتصال_المستخدم(اتصال: مؤشر[اتـصال]، بيانات_المستخدم: مؤشر[فـراغ])؛
```

<div dir=ltr>

```
@expname[mg_set_user_connection_data]
func setUserConnectionData (connection: ptr[Connection], userData : ptr[Void]);
```

</div>

يسجل مؤشر بيانات إلى اتصال.

* `اتصال` (`connection`) : مؤشر إلى الاتصال الذي تريد تسجيل البيانات فيه.
* `بيانات_المستخدم` (`userData`) : مؤشر للبيانات التي تريد تسجيلها.

يؤدي استدعاء هذه الدالة مرة أخرى على نفس مؤشر الاتصال إلى استبدال أي مؤشر بيانات مسجل مسبقًا.

يمكنك استرداد البيانات المسجلة عن طريق استدعاء دالة `هات_بيانات_إتصال_المستخدم (getUserConnectionData)`.

### هات_بيانات_إتصال_المستخدم (getUserConnectionData)

```
@تصدير[mg_get_user_connection_data]
دالة هات_بيانات_إتصال_المستخدم(اتصال: مؤشر[اتـصال]): مؤشر[فـراغ]؛
```

<div dir=ltr>

```
@expname[mg_get_user_connection_data]
func getUserConnectionData (connection: ptr[Connection]) : ptr[Void];
```

</div>

تُعيد هذه الدالة مؤشر البيانات الذي تم تسجيله مسبقًا للاتصال عبر `عين_بيانات_إتصال_المستخدم (setUserConnectionData)`.

* `اتصال` (`connection`) : مؤشر إلى الاتصال الذي تريد الحصول على البيانات المسجلة فيه.

يُرجع `عدم` (`null`) إذا لم يتم تسجيل أي بيانات لهذا الاتصال بعد.

### شغل_الخادم (startServer)

```
Expand Down
29 changes: 29 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,35 @@ def mutex: int[64]
```
Used for locking when we need to access synced data safely.

### setUserConnectionData

```
@expname[mg_set_user_connection_data]
func setUserConnectionData (connection: ptr[Connection], data : ptr[Void]);
```

Registers a data pointer to a connection.

* `connection` : pointer to the connection you want to register data to.
* `userData` : pointer for data you want to register.

Calling this function again on the same connection pointer overwrites any previously registered data pointer.

You can retrieve the registered data by calling `getUserConnectionData`;

### getUserConnectionData

```
@expname[mg_get_user_connection_data]
func getUserConnectionData (connection: ptr[Connection]) : ptr[Void];
```

This function returns the data pointer that was previously registered for a connection via `setUserConnectionData`.

* `connection` : pointer to the connection you want to get the data that was registered to.

Returns `null` if no data has been registered yet for this connection.

### startServer

```
Expand Down
3 changes: 3 additions & 0 deletions بـننت.أسس
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,9 @@

عرف اتـصال: لقب Connection؛

عرف عين_بيانات_إتصال_المستخدم: لقب setUserConnectionData؛

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

هل يمكن تغيير هذه إلى حدد_بيانات_إتصال_المستخدم، أي استخدام المصطلح "حدد" بدل "عين" كترجمة لset كي تكون متوافقة مع الترجمات في المكتبات الأخرى؟
عموما نحن نترجم "حدد" إلى set و "عين" إلى assign.

عرف هات_بيانات_إتصال_المستخدم: لقب getUserConnectionData؛

// أصناف ويب سوكت
عرف مـنادى_اتصال_ويب_سوكت: لقب WebSocketConnectCallback؛
عرف مـنادى_استعداد_ويب_سوكت: لقب WebSocketReadyCallback؛
Expand Down