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

digraph message_graph { fontname="Arial"; fontsize=11; stylesheet="../_static/graphs.css"; node [fontsize=11,fontname="Arial"] edge [fontsize=11,fontname="Arial"] "6" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-rst-generic.html#rst.generic.MethodCall" TITLE="Structure rst.generic.MethodCall" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/message.svg"></IMG></TD><TD ALIGN="left">MethodCall</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-OCTET-VECTOR.html#OCTET-VECTOR" TITLE="Fundamental OCTET-VECTOR" TARGET="_parent">OCTET-VECTOR</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.MethodCall.name" TITLE="Field rst.generic.MethodCall.name" TARGET="_parent" PORT="name">name</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value" TITLE="Structure rst.generic.Value" TARGET="_parent">Value</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.MethodCall.arguments" TITLE="Field rst.generic.MethodCall.arguments" TARGET="_parent" PORT="arguments">arguments</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "1" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-rst-generic.html#rst.generic.KeyValuePair" TITLE="Structure rst.generic.KeyValuePair" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/message.svg"></IMG></TD><TD ALIGN="left">KeyValuePair</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-ASCII-STRING.html#ASCII-STRING" TITLE="Fundamental ASCII-STRING" TARGET="_parent">ASCII-STRING</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.KeyValuePair.key" TITLE="Field rst.generic.KeyValuePair.key" TARGET="_parent" PORT="key">key</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value" TITLE="Structure rst.generic.Value" TARGET="_parent">Value</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.KeyValuePair.value" TITLE="Field rst.generic.KeyValuePair.value" TARGET="_parent" PORT="value">value</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "2" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value" TITLE="Structure rst.generic.Value" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/message.svg"></IMG></TD><TD ALIGN="left">Value</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type" TITLE="Enum rst.generic.Value.Type" TARGET="_parent">Type</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.type" TITLE="Field rst.generic.Value.type" TARGET="_parent" PORT="type">type</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-INT64.html#INT64" TITLE="Fundamental INT64" TARGET="_parent">INT64</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.int" TITLE="Field rst.generic.Value.int" TARGET="_parent" PORT="int">int</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-FLOAT64.html#FLOAT64" TITLE="Fundamental FLOAT64" TARGET="_parent">FLOAT64</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.double" TITLE="Field rst.generic.Value.double" TARGET="_parent" PORT="double">double</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-ASCII-STRING.html#ASCII-STRING" TITLE="Fundamental ASCII-STRING" TARGET="_parent">ASCII-STRING</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.string" TITLE="Field rst.generic.Value.string" TARGET="_parent" PORT="string">string</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-BOOL.html#BOOL" TITLE="Fundamental BOOL" TARGET="_parent">BOOL</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.bool" TITLE="Field rst.generic.Value.bool" TARGET="_parent" PORT="bool">bool</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-OCTET-VECTOR.html#OCTET-VECTOR" TITLE="Fundamental OCTET-VECTOR" TARGET="_parent">OCTET-VECTOR</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.binary" TITLE="Field rst.generic.Value.binary" TARGET="_parent" PORT="binary">binary</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-Value.html#Value" TITLE="Structure Value" TARGET="_parent">Value</TD><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.array" TITLE="Field rst.generic.Value.array" TARGET="_parent" PORT="array">array</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "4" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-__rosetta-Value.html#Value" TITLE="Structure Value" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/message.svg"></IMG></TD><TD ALIGN="left">Value</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-Type.html#Value.Type" TITLE="Enum Value.Type" TARGET="_parent">Type</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-type.html#Value.type" TITLE="Field Value.type" TARGET="_parent" PORT="type">type</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-INT64.html#INT64" TITLE="Fundamental INT64" TARGET="_parent">INT64</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-int.html#Value.int" TITLE="Field Value.int" TARGET="_parent" PORT="int">int</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-FLOAT64.html#FLOAT64" TITLE="Fundamental FLOAT64" TARGET="_parent">FLOAT64</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-double.html#Value.double" TITLE="Field Value.double" TARGET="_parent" PORT="double">double</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-ASCII-STRING.html#ASCII-STRING" TITLE="Fundamental ASCII-STRING" TARGET="_parent">ASCII-STRING</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-string.html#Value.string" TITLE="Field Value.string" TARGET="_parent" PORT="string">string</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-BOOL.html#BOOL" TITLE="Fundamental BOOL" TARGET="_parent">BOOL</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-bool.html#Value.bool" TITLE="Field Value.bool" TARGET="_parent" PORT="bool">bool</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-OCTET-VECTOR.html#OCTET-VECTOR" TITLE="Fundamental OCTET-VECTOR" TARGET="_parent">OCTET-VECTOR</TD><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-binary.html#Value.binary" TITLE="Field Value.binary" TARGET="_parent" PORT="binary">binary</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "5" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-__rosetta-Type.html#Value.Type" TITLE="Enum Value.Type" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/enum.svg"></IMG></TD><TD ALIGN="left">Type</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-VOID.html#Value.Type.VOID" TITLE="Value Value.Type.VOID" TARGET="_parent">VOID</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-VOID.html#Value.Type.VOID" TITLE="Value Value.Type.VOID" TARGET="_parent">1</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-INT.html#Value.Type.INT" TITLE="Value Value.Type.INT" TARGET="_parent">INT</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-INT.html#Value.Type.INT" TITLE="Value Value.Type.INT" TARGET="_parent">2</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-DOUBLE.html#Value.Type.DOUBLE" TITLE="Value Value.Type.DOUBLE" TARGET="_parent">DOUBLE</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-DOUBLE.html#Value.Type.DOUBLE" TITLE="Value Value.Type.DOUBLE" TARGET="_parent">3</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-STRING.html#Value.Type.STRING" TITLE="Value Value.Type.STRING" TARGET="_parent">STRING</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-STRING.html#Value.Type.STRING" TITLE="Value Value.Type.STRING" TARGET="_parent">4</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-BOOL.html#Value.Type.BOOL" TITLE="Value Value.Type.BOOL" TARGET="_parent">BOOL</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-BOOL.html#Value.Type.BOOL" TITLE="Value Value.Type.BOOL" TARGET="_parent">5</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-BINARY.html#Value.Type.BINARY" TITLE="Value Value.Type.BINARY" TARGET="_parent">BINARY</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-BINARY.html#Value.Type.BINARY" TITLE="Value Value.Type.BINARY" TARGET="_parent">6</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-__rosetta-ARRAY.html#Value.Type.ARRAY" TITLE="Value Value.Type.ARRAY" TARGET="_parent">ARRAY</TD><TD ALIGN="right" HREF="../generated/stable/package-__rosetta-ARRAY.html#Value.Type.ARRAY" TITLE="Value Value.Type.ARRAY" TARGET="_parent">7</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "3" [label=<<TABLE BORDER="0"><TR><TD COLSPAN="2" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type" TITLE="Enum rst.generic.Value.Type" TARGET="_parent"><TABLE BORDER="0"><TR><TD ALIGN="right"><IMG SRC="../_static/enum.svg"></IMG></TD><TD ALIGN="left">Type</TD></TR></TABLE></TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.VOID" TITLE="Value rst.generic.Value.Type.VOID" TARGET="_parent">VOID</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.VOID" TITLE="Value rst.generic.Value.Type.VOID" TARGET="_parent">1</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.INT" TITLE="Value rst.generic.Value.Type.INT" TARGET="_parent">INT</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.INT" TITLE="Value rst.generic.Value.Type.INT" TARGET="_parent">2</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.DOUBLE" TITLE="Value rst.generic.Value.Type.DOUBLE" TARGET="_parent">DOUBLE</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.DOUBLE" TITLE="Value rst.generic.Value.Type.DOUBLE" TARGET="_parent">3</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.STRING" TITLE="Value rst.generic.Value.Type.STRING" TARGET="_parent">STRING</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.STRING" TITLE="Value rst.generic.Value.Type.STRING" TARGET="_parent">4</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.BOOL" TITLE="Value rst.generic.Value.Type.BOOL" TARGET="_parent">BOOL</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.BOOL" TITLE="Value rst.generic.Value.Type.BOOL" TARGET="_parent">5</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.BINARY" TITLE="Value rst.generic.Value.Type.BINARY" TARGET="_parent">BINARY</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.BINARY" TITLE="Value rst.generic.Value.Type.BINARY" TARGET="_parent">6</TD></TR><TR><TD ALIGN="left" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.ARRAY" TITLE="Value rst.generic.Value.Type.ARRAY" TARGET="_parent">ARRAY</TD><TD ALIGN="right" HREF="../generated/stable/package-rst-generic.html#rst.generic.Value.Type.ARRAY" TITLE="Value rst.generic.Value.Type.ARRAY" TARGET="_parent">7</TD></TR></TABLE>>,shape=box,style=filled,fillcolor="white"]; "6":arguments -> "2" []; "1":value -> "2" []; "2" -> "3" []; "2":array -> "4" []; "2":type -> "3" []; "4" -> "5" []; "4":type -> "5" []; }

clearer: should be made invisible via css

Message KeyValuePair

class rst.generic.KeyValuePair

Combines a generic value with an identifying string key.

Code author: Arne Nordmann <anordman@techfak.uni-bielefeld.de>

key
Type:ASCII-STRING

The key of this entry.

value
Type:rst.generic.Value

The value.

Download this file

message KeyValuePair {

    /**
     * The key of this entry.
     */
    required string key = 1;

    /**
     * The value.
     */
    required Value value = 2;

}

Message MethodCall

class rst.generic.MethodCall

Represents a call to a named method with multiple <Could not resolve reference to Value> as arguments.

Code author: Johannes Wienke <jwienke@techfak.uni-bielefeld.de>

name
Type:OCTET-VECTOR

Name of the method to call.

ASCII string.

arguments
Type:array of rst.generic.Value

The method arguments.

Download this file

message MethodCall {

    /**
     * Name of the method to call.
     *
     * ASCII string.
     */
    required bytes name = 1;

    /**
     * The method arguments.
     */
    repeated Value arguments = 2;

}

Message Value

class rst.generic.Value

A representation of a generic value with a dynamic type.

Each value has a declared type in type indicating which of the remaining type-specific fields contains the value, expect for VOID, where no value is transported at all (most useful for return types).

Code author: Johannes Wienke <jwienke@techfak.uni-bielefeld.de>

A representation of a generic value with a dynamic type.

Each value has a declared type in type indicating which of the remaining type-specific fields contains the value, expect for VOID, where no value is transported at all (most useful for return types).

Code author: Johannes Wienke <jwienke@techfak.uni-bielefeld.de>

type
Type:rst.generic.Value.Type

The type of the value transported in this message.

int
Type:INT64

Not documented

double
Type:FLOAT64

Not documented

string
Type:ASCII-STRING

Not documented

bool
Type:BOOL

Not documented

binary
Type:OCTET-VECTOR

Not documented

array
Type:array of Value

Contained elements can be of different types and ordering is important.

Download this file

message Value {

    /**
     * The list of supported types.
     */
    enum Type {
        VOID = 1;
        INT = 2;
        DOUBLE = 3;
        STRING = 4;
        BOOL = 5;
        BINARY = 6;
        /**
         * Indicate that a list of Values is contained in @ref Value.array
         * representing an array.
         */
        ARRAY = 7;
    }

    /**
     * The type of the value transported in this message.
     */
    required Type type = 1;

    optional int64 int = 2;
    optional double double = 3;
    optional string string = 4;
    optional bool bool = 5;
    optional bytes binary = 6;
    /**
     * Contained elements can be of different types and ordering is important.
     */
    repeated Value array = 7;

}

Message Type

class rst.generic.Value.Type

The list of supported types.

VOID
= 1

Not documented

INT
= 2

Not documented

DOUBLE
= 3

Not documented

STRING
= 4

Not documented

BOOL
= 5

Not documented

BINARY
= 6

Not documented

ARRAY
= 7

Indicate that a list of Values is contained in <Could not resolve reference to Value.array> representing an array.

Download this file

    enum Type {
        VOID = 1;
        INT = 2;
        DOUBLE = 3;
        STRING = 4;
        BOOL = 5;
        BINARY = 6;
        /**
         * Indicate that a list of Values is contained in @ref Value.array
         * representing an array.
         */
        ARRAY = 7;
    }