View source on GitHub |
A representation of a function invocation in TFF's internal language.
Inherits From: ComputationBuildingBlock
, TypedObject
tff.framework.Call(
fn: tff.framework.ComputationBuildingBlock
,
arg: Optional[tff.framework.ComputationBuildingBlock
] = None
)
The call construct takes an argument struct with two elements, the first being the function to invoke (represented as a computation with a functional result type), and the second being the argument to feed to that function. Typically, the function is either a TFF instrinsic, or a lambda expression.
The concise notation for calls is foo(bar)
, where foo
is the function,
and bar
is the argument.
Args | |
---|---|
fn
|
A value of a functional type that represents the function to invoke. |
arg
|
The optional argument, present iff 'fn' expects one, of a type that matches the type of 'fn'. |
Raises | |
---|---|
TypeError
|
if the arguments are of the wrong types. |
Attributes | |
---|---|
argument
|
|
function
|
|
proto
|
Returns a serialized form of this object as a pb.Computation instance. |
type_signature
|
Returns the TFF type of this object (an instance of tff.Type ).
|
Methods
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
@classmethod
from_proto( computation_proto: pb.Computation ) -> 'Call'
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.