.. _package-rst-generic:
=====================
Package rst.generic
=====================
Message which are capable of handling dynamic data types.
This is not the preferred way of using RST, but cannot be avoided in certain
cases. If possible, use semantically-defined data types.
Messages
========
.. container:: mess4ge-multi
.. container:: mess4ge-graph
.. digraph:: message_graph
fontname="Arial";
fontsize=11;
stylesheet="../_static/graphs.css";
node [fontsize=11,fontname="Arial"]
edge [fontsize=11,fontname="Arial"]
"8" [label=<
| MethodCallCollection |
|
MethodCall | element |
>,shape=box,style=filled,fillcolor="white"];
"9" [label=< | MethodCall |
|
OCTET-VECTOR | name |
Value | arguments |
>,shape=box,style=filled,fillcolor="white"];
"1" [label=< | DictionaryCollection |
|
Dictionary | element |
>,shape=box,style=filled,fillcolor="white"];
"2" [label=< | Dictionary |
|
KeyValuePair | entries |
>,shape=box,style=filled,fillcolor="white"];
"3" [label=< | KeyValuePair |
|
ASCII-STRING | key |
Value | value |
>,shape=box,style=filled,fillcolor="white"];
"4" [label=< | Value |
|
Type | type |
INT64 | int |
FLOAT64 | double |
ASCII-STRING | string |
BOOL | bool |
OCTET-VECTOR | binary |
Value | array |
>,shape=box,style=filled,fillcolor="white"];
"6" [label=< | Value |
|
Type | type |
INT64 | int |
FLOAT64 | double |
ASCII-STRING | string |
BOOL | bool |
OCTET-VECTOR | binary |
>,shape=box,style=filled,fillcolor="white"];
"7" [label=< | Type |
|
VOID | 1 |
INT | 2 |
DOUBLE | 3 |
STRING | 4 |
BOOL | 5 |
BINARY | 6 |
ARRAY | 7 |
>,shape=box,style=filled,fillcolor="white"];
"5" [label=< | Type |
|
VOID | 1 |
INT | 2 |
DOUBLE | 3 |
STRING | 4 |
BOOL | 5 |
BINARY | 6 |
ARRAY | 7 |
>,shape=box,style=filled,fillcolor="white"];
"8":element -> "9" [];
"9":arguments -> "4" [];
"1":element -> "2" [];
"2":entries -> "3" [];
"3":value -> "4" [];
"4" -> "5" [];
"4":array -> "6" [];
"4":type -> "5" [];
"6" -> "7" [];
"6":type -> "7" [];
.. container:: mess4ge-list
.. container:: messages
* :ref:`DictionaryCollection `
* :ref:`MethodCallCollection `
* :ref:`Dictionary `
* :ref:`KeyValuePair `
* :ref:`MethodCall `
* :ref:`Value `
.. container:: clearer
clearer: should be made invisible via css
.. _message-rst-generic-dictionarycollection:
Message DictionaryCollection
----------------------------
.. container:: message-rst-generic-dictionarycollection-multi
.. container:: message-rst-generic-dictionarycollection-documentation
.. py:class:: rst.generic.DictionaryCollection
Collection of :py:class:`Dictionary ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.generic.Dictionary`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-generic-dictionarycollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/DictionaryCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/DictionaryCollection.proto
:lines: 12-22
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-generic-methodcallcollection:
Message MethodCallCollection
----------------------------
.. container:: message-rst-generic-methodcallcollection-multi
.. container:: message-rst-generic-methodcallcollection-documentation
.. py:class:: rst.generic.MethodCallCollection
Collection of :py:class:`MethodCall ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.generic.MethodCall`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-generic-methodcallcollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/MethodCallCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/MethodCallCollection.proto
:lines: 12-22
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-generic-dictionary:
Message Dictionary
------------------
.. container:: message-rst-generic-dictionary-multi
.. container:: message-rst-generic-dictionary-documentation
.. py:class:: rst.generic.Dictionary
A list of key-value pairs.
.. codeauthor:: Arne Nordmann
@create_collection
.. py:attribute:: entries
:type: array of :py:class:`rst.generic.KeyValuePair`
The list of key-value pairs.
Ordering is ignored and duplicated keys must be avoided.
.. container:: message-rst-generic-dictionary-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Dictionary.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Dictionary.proto
:lines: 15-24
:language: protobuf
:emphasize-lines: 8-8
.. _message-rst-generic-keyvaluepair:
Message KeyValuePair
--------------------
.. container:: message-rst-generic-keyvaluepair-multi
.. container:: message-rst-generic-keyvaluepair-documentation
.. py:class:: rst.generic.KeyValuePair
Combines a generic value with an identifying string key.
.. codeauthor:: Arne Nordmann
.. py:attribute:: key
:type: :py:class:`ASCII-STRING`
The key of this entry.
.. py:attribute:: value
:type: :py:class:`rst.generic.Value`
The value.
.. container:: message-rst-generic-keyvaluepair-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/KeyValuePair.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/KeyValuePair.proto
:lines: 14-26
:language: protobuf
:emphasize-lines: 6-6,11-11
.. _message-rst-generic-methodcall:
Message MethodCall
------------------
.. container:: message-rst-generic-methodcall-multi
.. container:: message-rst-generic-methodcall-documentation
.. py:class:: rst.generic.MethodCall
Represents a call to a named method with multiple as arguments.
.. codeauthor:: Johannes Wienke
@create_collection
.. py:attribute:: name
:type: :py:class:`OCTET-VECTOR`
Name of the method to call.
ASCII string.
.. py:attribute:: arguments
:type: array of :py:class:`rst.generic.Value`
The method arguments.
.. container:: message-rst-generic-methodcall-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/MethodCall.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/MethodCall.proto
:lines: 15-29
:language: protobuf
:emphasize-lines: 8-8,13-13
.. _message-rst-generic-value:
Message Value
-------------
.. container:: message-rst-generic-value-multi
.. container:: message-rst-generic-value-documentation
.. py:class:: rst.generic.Value
A representation of a generic value with a dynamic type.
Each value has a declared type in :py:attr:`type ` indicating which of the
remaining type-specific fields contains the value, expect for
:ref:`VOID `, where no value is transported at all (most useful
for return types).
.. codeauthor:: Johannes Wienke
A representation of a generic value with a dynamic type.
Each value has a declared type in :py:attr:`type ` indicating which of the
remaining type-specific fields contains the value, expect for
:ref:`VOID `, where no value is transported at all (most useful
for return types).
.. codeauthor:: Johannes Wienke
.. py:attribute:: type
:type: :py:class:`rst.generic.Value.Type`
The type of the value transported in this message.
.. py:attribute:: int
:type: :py:class:`INT64`
Contains the integer value in case :py:attr:`type ` is :ref:`INT `.
.. py:attribute:: double
:type: :py:class:`FLOAT64`
Contains the double value in case :py:attr:`type ` is
:ref:`DOUBLE `.
.. py:attribute:: string
:type: :py:class:`ASCII-STRING`
Contains the string value in case :py:attr:`type ` is
:ref:`STRING `.
.. py:attribute:: bool
:type: :py:class:`BOOL`
Contains the boolean value in case :py:attr:`type ` is :ref:`BOOL `.
.. py:attribute:: binary
:type: :py:class:`OCTET-VECTOR`
Contains the binary data in case :py:attr:`type ` is :ref:`BINARY `.
.. py:attribute:: array
:type: array of :py:class:`Value`
Represents the contents of an array in case :py:attr:`type ` is :ref:`ARRAY `.
Contained elements can be of different types and ordering is
important.
.. container:: message-rst-generic-value-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Value.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Value.proto
:lines: 17-104
:language: protobuf
:emphasize-lines: 50-50,55-55,61-61,67-67,72-72,77-77,86-86
.. _message-rst-generic-value-type:
Message Type
------------
.. container:: message-rst-generic-value-type-multi
.. container:: message-rst-generic-value-type-documentation
.. py:class:: rst.generic.Value.Type
The list of supported types.
.. py:attribute:: VOID
= 1
Indicates that no data is transported.
.. py:attribute:: INT
= 2
Indicates that an integer value is transported.
.. py:attribute:: DOUBLE
= 3
Indicates that a double precision floating point number is
transported.
.. py:attribute:: STRING
= 4
Indicates that a UTF-8 encoded string is transported.
.. py:attribute:: BOOL
= 5
Indicates that a boolean value is transported.
.. py:attribute:: BINARY
= 6
Indicates that a blob of binary data is transported.
.. py:attribute:: ARRAY
= 7
Indicate that a list of Values is contained in representing an array.
.. container:: message-rst-generic-value-type-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Value.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.15-merge-simulator/upstream/RST-0.15.0-Linux/share/rst0.15/proto/stable/rst/generic/Value.proto
:lines: 22-61
:language: protobuf
:emphasize-lines: 6-6,11-11,17-17,22-22,27-27,32-32,38-38