set_message_tupleT_set_message_tupleSetMessageTupleSetMessageTupleset_message_tuple (Operator)

Name

set_message_tupleT_set_message_tupleSetMessageTupleSetMessageTupleset_message_tuple — Hinzufügen eines Schlüssel-Tupeldaten-Paares zu einer Nachricht.

Signatur

set_message_tuple( : : MessageHandle, Key, TupleData : )

Herror T_set_message_tuple(const Htuple MessageHandle, const Htuple Key, const Htuple TupleData)

void SetMessageTuple(const HTuple& MessageHandle, const HTuple& Key, const HTuple& TupleData)

void HMessage::SetMessageTuple(const HTuple& Key, const HTuple& TupleData) const

void HMessage::SetMessageTuple(const HString& Key, const HTuple& TupleData) const

void HMessage::SetMessageTuple(const char* Key, const HTuple& TupleData) const

void HMessage::SetMessageTuple(const wchar_t* Key, const HTuple& TupleData) const   (Nur Windows)

static void HOperatorSet.SetMessageTuple(HTuple messageHandle, HTuple key, HTuple tupleData)

void HMessage.SetMessageTuple(HTuple key, HTuple tupleData)

void HMessage.SetMessageTuple(string key, HTuple tupleData)

def set_message_tuple(message_handle: HHandle, key: Union[str, int], tuple_data: Sequence[HTupleElementType]) -> None

Beschreibung

set_message_tupleset_message_tupleSetMessageTupleSetMessageTupleSetMessageTupleset_message_tuple speichert in einer Nachricht ähnlich zu einem assoziativem Array ein Datentupel in Verbindung mit einem Schlüssel ab. Das Nachrichtenobjekt wird durch den Parameter MessageHandleMessageHandleMessageHandleMessageHandlemessageHandlemessage_handle referenziert.

TupleDataTupleDataTupleDataTupleDatatupleDatatuple_data wird in das Nachrichtenobjekt kopiert und kann anschließend weiterverwendet oder gelöscht werden. Ein leeres Tupel ist ebenfalls ein gültiger Wert, der mit einem Schlüssel referenziert werden kann. Falls bereits Daten (Tupel oder Objekt) durch den gegebenen Schlüssel referenziert werden, werden die alten Daten freigegeben und durch TupleDataTupleDataTupleDataTupleDatatupleDatatuple_data ersetzt.

KeyKeyKeyKeykeykey ist ein String oder ein Integer, wobei bei Strings die Groß-/Kleinschreibung beachtet wird.

Die Tupeldaten für den übergebenen Schlüssel können mit Hilfe des Operators get_message_tupleget_message_tupleGetMessageTupleGetMessageTupleGetMessageTupleget_message_tuple aus dem Nachrichtenobjekt wieder ausgelesen werden.

Achtung

Falls TupleDataTupleDataTupleDataTupleDatatupleDatatuple_data Handles enthält, werden nur die Handle-Werte kopiert, nicht aber die Objekte welche die Handles referenzieren.

Ausführungsinformationen

Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:

Während der Ausführung dieses Operators muss der Zugriff auf den Wert dieses Parameters synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.

Parameter

MessageHandleMessageHandleMessageHandleMessageHandlemessageHandlemessage_handle (input_control, Zustand wird modifiziert)  message HMessage, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Nachrichtenobjekt.

Parameteranzahl: MessageHandle == 1

Restriktion: MessageHandle != 0

KeyKeyKeyKeykeykey (input_control)  string HTupleUnion[str, int]HTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Schlüsselwort oder Integer.

Parameteranzahl: Key == 1

TupleDataTupleDataTupleDataTupleDatatupleDatatuple_data (input_control)  tuple-array HTupleSequence[HTupleElementType]HTupleHtuple (string / integer / real / handle) (string / int / long / double / HHandle) (HString / Hlong / double / HHandle) (char* / Hlong / double / handle)

Vom Schlüssel zu referenzierende Tupeldaten.

Beispiel (HDevelop)

create_message (Message)
set_message_tuple (Message, 'simple_integer', 27)
set_message_tuple (Message, 'simple_string', 'Hello world')
set_message_tuple (Message, 'mixed_tuple', ['The answer', 42])

Ergebnis

Im Erfolgsfall gibt set_message_tupleset_message_tupleSetMessageTupleSetMessageTupleSetMessageTupleset_message_tuple den Wert 2 (H_MSG_TRUE) zurück. Andernfalls wird eine Fehlerbehandlung durchgeführt. Mögliche Fehler sind ungültige Parameter (Nachrichtenobjekt oder Schlüssel) oder ein Allokierungsfehler.

Vorgänger

create_messagecreate_messageCreateMessageCreateMessageCreateMessagecreate_message

Nachfolger

enqueue_messageenqueue_messageEnqueueMessageEnqueueMessageEnqueueMessageenqueue_message, set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObjset_message_obj

Alternativen

set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObjset_message_obj

Siehe auch

create_messagecreate_messageCreateMessageCreateMessageCreateMessagecreate_message, clear_messageclear_messageClearMessageClearMessageClearMessageclear_message, get_message_tupleget_message_tupleGetMessageTupleGetMessageTupleGetMessageTupleget_message_tuple, set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObjset_message_obj, get_message_objget_message_objGetMessageObjGetMessageObjGetMessageObjget_message_obj, set_message_paramset_message_paramSetMessageParamSetMessageParamSetMessageParamset_message_param, get_message_paramget_message_paramGetMessageParamGetMessageParamGetMessageParamget_message_param, enqueue_messageenqueue_messageEnqueueMessageEnqueueMessageEnqueueMessageenqueue_message, dequeue_messagedequeue_messageDequeueMessageDequeueMessageDequeueMessagedequeue_message

Modul

Foundation