KlassenKlassen | | Operatoren

set_message_tupleT_set_message_tupleSetMessageTupleSetMessageTuple (Operator)

Name

set_message_tupleT_set_message_tupleSetMessageTupleSetMessageTuple — 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 HString& Key, const HTuple& TupleData) const

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

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

void HMessage.SetMessageTuple(string key, HTuple tupleData)

Beschreibung

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

TupleDataTupleDataTupleDataTupleDatatupleData 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üsselwort referenziert werden kann. Falls bereits Daten (Tupel oder Objekt) durch das gegebenen Schlüsselwort referenziert werden, werden die alten Daten freigegeben und durch TupleDataTupleDataTupleDataTupleDatatupleData ersetzt.

KeyKeyKeyKeykey ist ein nicht leerer String der ausnahmslos aus ASCII-Buchstaben, Zahlen und Unterstrichen besteht, wobei das Schlüsselwort mit einem Buchstaben beginnen muss. Dabei werden Groß-/Kleinschreibung beachtet.

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

Achtung

Falls TupleDataTupleDataTupleDataTupleDatatupleData 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:

Der Wert dieses Parameters darf nicht über mehrere Threads verwendet werden.

Parameter

MessageHandleMessageHandleMessageHandleMessageHandlemessageHandle (input_control, Zustand wird modifiziert)  message HMessage, HTupleHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Nachrichtenobjekt.

Parameteranzahl: MessageHandle == 1

Restriktion: MessageHandle != 0

KeyKeyKeyKeykey (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Schlüsselwort.

Parameteranzahl: Key == 1

Restriktion: length(Key) > 0

TupleDataTupleDataTupleDataTupleDatatupleData (input_control)  tuple-array HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

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_tupleSetMessageTupleSetMessageTupleSetMessageTuple 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_messageCreateMessageCreateMessageCreateMessage

Nachfolger

enqueue_messageenqueue_messageEnqueueMessageEnqueueMessageEnqueueMessage, set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObj

Alternativen

set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObj

Siehe auch

create_messagecreate_messageCreateMessageCreateMessageCreateMessage, clear_messageclear_messageClearMessageClearMessageClearMessage, get_message_tupleget_message_tupleGetMessageTupleGetMessageTupleGetMessageTuple, set_message_objset_message_objSetMessageObjSetMessageObjSetMessageObj, get_message_objget_message_objGetMessageObjGetMessageObjGetMessageObj, set_message_paramset_message_paramSetMessageParamSetMessageParamSetMessageParam, get_message_paramget_message_paramGetMessageParamGetMessageParamGetMessageParam, enqueue_messageenqueue_messageEnqueueMessageEnqueueMessageEnqueueMessage, dequeue_messagedequeue_messageDequeueMessageDequeueMessageDequeueMessage

Modul

Foundation


KlassenKlassen | | Operatoren