twisted.protocols.amp.Argument class documentationtwisted.protocols.amp
View Source
(View In Hierarchy)
Known subclasses: twisted.protocols.amp.AmpList, twisted.protocols.amp.Boolean, twisted.protocols.amp.DateTime, twisted.protocols.amp.Decimal, twisted.protocols.amp.Float, twisted.protocols.amp.Integer, twisted.protocols.amp.ListOf, twisted.protocols.amp.String
Implements interfaces: twisted.protocols.amp.IArgumentType
Base-class of all objects that take values from Amp packets and convert them into objects for Python functions.
This implementation of IArgumentType
provides several higher-level hooks for subclasses to override. See toString
and fromString
which will be used to define the behavior of IArgumentType.toBox
and IArgumentType.fromBox,
respectively.
| Method | __init__ | Create an Argument. |
| Method | retrieve | Retrieve the given key from the given dictionary, removing it if found. |
| Method | fromBox | Populate an 'out' dictionary with mapping names to Python values decoded from an 'in' AmpBox mapping strings to string values. |
| Method | toBox | Populate an 'out' AmpBox with strings encoded from an 'in' dictionary mapping names to Python values. |
| Method | fromStringProto | Convert a string to a Python value. |
| Method | toStringProto | Convert a Python object to a string. |
| Method | fromString | Convert a string to a Python object. Subclasses must implement this. |
| Method | toString | Convert a Python object into a string for passing over the network. |
Create an Argument.
| Parameters | optional | a boolean indicating whether this argument can be omitted in the protocol. |
Retrieve the given key from the given dictionary, removing it if found.
| Parameters | d | a dictionary. |
| name | a key in d. | |
| proto | an instance of an AMP. | |
| Returns | d[name]. | |
| Raises | KeyError | if I am not optional and no value was found. |
Populate an 'out' dictionary with mapping names to Python values decoded from an 'in' AmpBox mapping strings to string values.
| Parameters | name | the argument name to retrieve (type: bytes) |
| strings | The AmpBox to read string(s) from, a mapping of argument names to string values. (type: AmpBox) | |
| objects | The dictionary to write object(s) to, a mapping of names to Python objects. Keys will be native strings. (type: dict) | |
| proto | an AMP instance. |
Populate an 'out' AmpBox with strings encoded from an 'in' dictionary mapping names to Python values.
| Parameters | name | the argument name to retrieve (type: bytes) |
| strings | The AmpBox to write string(s) to, a mapping of argument names to string values. (type: AmpBox) | |
| objects | The dictionary to read object(s) from, a mapping of names to Python objects. Keys should be native strings. (type: dict) | |
| proto | the protocol we are converting for. (type: AMP) |
Convert a string to a Python value.
| Parameters | inString | the string to convert. (type: bytes) |
| proto | the protocol we are converting for. (type: AMP) | |
| Returns | a Python object. | |
Convert a Python object to a string.
| Parameters | inObject | the object to convert. |
| proto | the protocol we are converting for. (type: AMP) |
Convert a string to a Python object. Subclasses must implement this.
| Parameters | inString | the string to convert. (type: bytes) |
| Returns | the decoded value from inString | |
Convert a Python object into a string for passing over the network.
| Parameters | inObject | an object of the type that this Argument is intended to deal with. |
| Returns | the wire encoding of inObject (type: bytes) | |