xbr._schema¶
Attributes¶
Classes¶
FlatBuffers enum type. |
|
crossbar.interfaces.IInventory |
|
Flatbuffers type. |
Functions¶
|
|
|
|
|
|
|
|
|
Module Contents¶
- class FbsEnum(repository: FbsRepository, schema: FbsSchema, declaration_file: str, name: str, id: int, values: Dict[str, FbsEnumValue], values_by_id: List[FbsEnumValue], is_union: bool, underlying_type: int, attrs: Dict[str, FbsAttribute], docs: str)[source]¶
Bases:
objectFlatBuffers enum type.
- class FbsEnumValue(repository: FbsRepository, schema: FbsSchema, name: str, id: int, value, docs)[source]¶
Bases:
object
- class FbsField(repository: FbsRepository, schema: FbsSchema, name: str, type: FbsType, id: int, offset: int, default_int: int, default_real: float, deprecated: bool, required: bool, attrs: Dict[str, FbsAttribute], docs: str)[source]¶
Bases:
object- __slots__ = ('_repository', '_schema', '_name', '_type', '_id', '_offset', '_default_int', '_default_real',...[source]¶
- property attrs: Dict[str, FbsAttribute][source]¶
- property repository: FbsRepository[source]¶
- class FbsObject(repository: FbsRepository, schema: FbsSchema, declaration_file: str, name: str, fields: Dict[str, FbsField], fields_by_id: List[FbsField], is_struct: bool, min_align: int, bytesize: int, attrs: Dict[str, FbsAttribute], docs: str)[source]¶
Bases:
object- __slots__ = ('_repository', '_schema', '_declaration_file', '_name', '_fields', '_fields_by_id',...[source]¶
- property attrs: Dict[str, FbsAttribute][source]¶
- property repository: FbsRepository[source]¶
- class FbsRPCCall(repository: FbsRepository, schema: FbsSchema, name: str, id: int, request: FbsObject, response: FbsObject, docs: str, attrs: Dict[str, FbsAttribute])[source]¶
Bases:
object
- class FbsRepository(basemodule: str)[source]¶
Bases:
object- crossbar.interfaces.IInventory
add: FbsRepository[] - load: FbsSchema[]
https://github.com/google/flatbuffers/blob/master/reflection/reflection.fbs
- _services: Dict[str, FbsService][source]¶
- static from_address(address: str) FbsRepository[source]¶
- static from_archive(filename: str) FbsRepository[source]¶
- load(filename: str) Tuple[int, int][source]¶
Load and add all schemata from Flatbuffers binary schema files (*.bfbs) found in the given directory. Alternatively, a path to a single schema file can be provided.
- Parameters:
filename – Filesystem path of a directory or single file from which to load and add Flatbuffers schemata.
- render(jinja2_env, output_dir, output_lang)[source]¶
- Parameters:
jinja2_env
output_dir
output_lang
- Returns:
- property services: Dict[str, FbsService][source]¶
- validate(validation_type: str, args: List[Any], kwargs: Dict[str, Any]) FbsObject | None[source]¶
Validate the WAMP application payload provided in positional argument in
argsand in keyword-based arguments inkwargsagainst the FlatBuffers table typevalidation_typefrom this repository.If the application payload does not validate against the provided type, an
autobahn.wamp.exception.InvalidPayloadis raised.- Parameters:
validation_type – Flatbuffers type (fully qualified) against to validate application payload.
args – The application payload WAMP positional arguments.
kwargs – The application payload WAMP keyword-based arguments.
- Returns:
The validation type object from this repository (reference in
validation_type) which has been used for validation.
- validate_obj(validation_type: str | None, value: Any | None)[source]¶
Validate value against the validation type given.
If the application payload does not validate against the provided type, an
autobahn.wamp.exception.InvalidPayloadis raised.- Parameters:
validation_type – Flatbuffers type (fully qualified) against to validate application payload.
value – Value to validate.
- Returns:
- class FbsSchema(repository: FbsRepository, file_name: str, file_sha256: str, file_size: int, file_ident: str, file_ext: str, fbs_files: List[Dict[str, str]], root_table: FbsObject, root: zlmdb.flatbuffers.reflection.Schema.Schema, objs: Dict[str, FbsObject] | None = None, objs_by_id: List[FbsObject] | None = None, enums: Dict[str, FbsEnum] | None = None, enums_by_id: List[FbsEnum] | None = None, services: Dict[str, FbsService] | None = None, services_by_id: List[FbsService] | None = None)[source]¶
Bases:
object- static load(repository: FbsRepository, sfile: str | io.RawIOBase | IO[bytes], filename: str | None = None) FbsSchema[source]¶
- Parameters:
repository
sfile
filename
- Returns:
- class FbsService(repository: FbsRepository, schema: FbsSchema, declaration_file: str, name: str, calls: Dict[str, FbsRPCCall], calls_by_id: List[FbsRPCCall], attrs: Dict[str, FbsAttribute], docs: str)[source]¶
Bases:
object
- class FbsType(repository: FbsRepository, schema: FbsSchema, basetype: int, element: int, index: int, objtype: str | None = None, elementtype: str | None = None)[source]¶
Bases:
objectFlatbuffers type.
- __slots__ = ('_repository', '_schema', '_basetype', '_element', '_index', '_objtype', '_elementtype')[source]¶
- property elementtype: str | None[source]¶
If basetype == Vector, fully qualified element type name.
- Returns:
- property index: int[source]¶
If basetype == Object, index into “objects”. If base_type == Union, UnionType, or integral derived from an enum, index into “enums”. If base_type == Vector && element == Union or UnionType.
- Returns:
- map(language: str, attrs: Dict | None = None, required: bool | None = True, objtype_as_string: bool = False) str[source]¶
- Parameters:
language
attrs
required
objtype_as_string
- Returns:
- property objtype: str | None[source]¶
If basetype == Object, fully qualified object type name.
- Returns:
- property repository: FbsRepository[source]¶