A representation of a function invocation in TFF's internal language.
The call construct takes an argument tuple 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 is the function, and
bar is the argument.
__init__( fn, arg=None )
Creates a call to 'fn' with argument 'arg'.
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'.
TypeError: if the arguments are of the wrong types.
Returns a serialized form of this object as a pb.Computation instance.
Returns the TFF type of this object (an instance of
Returns the compact string representation of this building block.
Returns the formatted string representation of this building block.
@classmethod from_proto( cls, computation_proto )
Returns an instance of a derived class based on 'computation_proto'.
computation_proto: An instance of pb.Computation.
An instance of a class that implements 'ComputationBuildingBlock' and that contains the deserialized logic from in 'computation_proto'.
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.
Returns the structural string representation of this building block.