interface documentation

class IArgumentType(Interface): (source)

Known implementations: twisted.protocols.amp.Argument

View In Hierarchy

An IArgumentType can serialize a Python object into an AMP box and deserialize information from an AMP box back into a Python object.

Present Since
9.0
Method fromBox Given an argument name and an AMP box containing serialized values, extract one or more Python objects and add them to the objects dictionary.
Method toBox Given an argument name and a dictionary containing structured Python objects, serialize values into one or more strings and add them to the strings dictionary.
def fromBox(name, strings, objects, proto): (source)

Given an argument name and an AMP box containing serialized values, extract one or more Python objects and add them to the objects dictionary.

Parameters
name:bytesThe name associated with this argument. Most commonly this is the key which can be used to find a serialized value in strings.
strings:dictThe AMP box from which to extract one or more values.
objects:dictThe output dictionary to populate with the value for this argument. The key used will be derived from name. It may differ; in Python 3, for example, the key will be a Unicode/native string. See _wireNameToPythonIdentifier.
protoThe protocol instance which received the AMP box being interpreted. Most likely this is an instance of AMP, but this is not guaranteed.
Returns
None
def toBox(name, strings, objects, proto): (source)

Given an argument name and a dictionary containing structured Python objects, serialize values into one or more strings and add them to the strings dictionary.

Parameters
name:bytesThe name associated with this argument. Most commonly this is the key in strings to associate with a bytes giving the serialized form of that object.
strings:dictThe AMP box into which to insert one or more strings.
objects:dictThe input dictionary from which to extract Python objects to serialize. The key used will be derived from name. It may differ; in Python 3, for example, the key will be a Unicode/native string. See _wireNameToPythonIdentifier.
protoThe protocol instance which will send the AMP box once it is fully populated. Most likely this is an instance of AMP, but this is not guaranteed.
Returns
None