|  View source on GitHub | 
A selection by name or index from a struct-typed value in TFF's language.
Inherits From: ComputationBuildingBlock, TypedObject
tff.framework.Selection(
    source: tff.framework.ComputationBuildingBlock,
    name: Optional[str] = None,
    index: Optional[int] = None
)
The concise syntax for selections is foo.bar (selecting a named bar from
the value of expression foo), and foo[n] (selecting element at index n
from the value of foo).
| Args | |
|---|---|
| source | The source value to select from (an instance of ComputationBuildingBlock). | 
| name | A string name of the element to be selected. | 
| index | A numeric index of the element to be selected. | 
| Attributes | |
|---|---|
| index | |
| name | |
| proto | Returns a serialized form of this object as a pb.Computation instance. | 
| source | |
| type_signature | Returns the TFF type of this object (an instance of tff.Type). | 
Methods
as_index
as_index() -> int
children
children() -> Iterator[tff.framework.ComputationBuildingBlock]
Returns an iterator yielding immediate child building blocks.
compact_representation
compact_representation()
Returns the compact string representation of this building block.
formatted_representation
formatted_representation()
Returns the formatted string representation of this building block.
from_proto
@classmethodfrom_proto( computation_proto: pb.Computation ) -> 'Selection'
Returns an instance of a derived class based on 'computation_proto'.
| Args | |
|---|---|
| computation_proto | An instance of pb.Computation. | 
| Returns | |
|---|---|
| An instance of a class that implements 'ComputationBuildingBlock' and that contains the deserialized logic from in 'computation_proto'. | 
| Raises | |
|---|---|
| NotImplementedError | if computation_proto contains a kind of computation for which deserialization has not been implemented yet. | 
| ValueError | if deserialization failed due to the argument being invalid. | 
structural_representation
structural_representation()
Returns the structural string representation of this building block.
__eq__
__eq__(
    other: object
) -> bool
Return self==value.