TensorFlow 2.0 Beta is available Learn more

tff.framework.Call

Class Call

A representation of a function invocation in TFF's internal language.

Inherits From: ComputationBuildingBlock

Defined in python/core/impl/computation_building_blocks.py.

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(bar), where foo is the function, and bar is the argument.

__init__

__init__(
    fn,
    arg=None
)

Creates a call to 'fn' with argument 'arg'.

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.

Properties

argument

function

proto

Returns a serialized form of this object as a pb.Computation instance.

tff_repr

Returns the representation of the instance using TFF syntax.

type_signature

Returns the TFF type of this object (an instance of tff.Type).

Methods

from_proto

@classmethod
from_proto(
    cls,
    computation_proto
)

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.