tff.framework.Reference
Stay organized with collections
Save and categorize content based on your preferences.
A reference to a name defined earlier in TFF's internal language.
Inherits From: ComputationBuildingBlock
, TypedObject
tff.framework.Reference(
name: str, type_spec: object, context=None
)
Names are defined by lambda expressions (which have formal named parameters),
and block structures (which can have one or more locals). The reference
construct is used to refer to those parameters or locals by a string name.
The usual hiding rules apply. A reference binds to the closest definition of
the given name in the most deeply nested surrounding lambda or block.
A concise notation for a reference to name foo
is foo
. For example, in
a lambda expression (x -> f(x))
there are two references, one to x
that
is defined as the formal parameter of the lambda epxression, and one to f
that must have been defined somewhere in the surrounding context.
Args |
name
|
The name of the referenced entity.
|
type_spec
|
The type spec of the referenced entity.
|
context
|
The optional context in which the referenced entity is defined.
This class does not prescribe what Python type the 'context' needs to be
and merely exposes it as a property (see below). The only requirement is
that the context implements str() and repr().
|
Raises |
TypeError
|
if the arguments are of the wrong types.
|
Attributes |
context
|
|
name
|
|
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
View source
children() -> Iterator[tff.framework.ComputationBuildingBlock
]
Returns an iterator yielding immediate child building blocks.
compact_representation
View source
compact_representation()
Returns the compact string representation of this building block.
View source
formatted_representation()
Returns the formatted string representation of this building block.
from_proto
View source
@classmethod
from_proto(
computation_proto: pb.Computation
) -> 'Reference'
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
View source
structural_representation()
Returns the structural string representation of this building block.
__eq__
View source
__eq__(
other: object
) -> bool
Return self==value.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-09-20 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-20 UTC."],[],[],null,["# tff.framework.Reference\n\n\u003cbr /\u003e\n\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [View source on GitHub](https://github.com/tensorflow/federated/blob/v0.87.0 Version 2.0, January 2004 Licensed under the Apache License, Version 2.0 (the) |\n\nA reference to a name defined earlier in TFF's internal language.\n\nInherits From: [`ComputationBuildingBlock`](../../tff/framework/ComputationBuildingBlock), [`TypedObject`](../../tff/TypedObject) \n\n tff.framework.Reference(\n name: str, type_spec: object, context=None\n )\n\nNames are defined by lambda expressions (which have formal named parameters),\nand block structures (which can have one or more locals). The reference\nconstruct is used to refer to those parameters or locals by a string name.\nThe usual hiding rules apply. A reference binds to the closest definition of\nthe given name in the most deeply nested surrounding lambda or block.\n\nA concise notation for a reference to name `foo` is `foo`. For example, in\na lambda expression `(x -\u003e f(x))` there are two references, one to `x` that\nis defined as the formal parameter of the lambda epxression, and one to `f`\nthat must have been defined somewhere in the surrounding context.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `name` | The name of the referenced entity. |\n| `type_spec` | The type spec of the referenced entity. |\n| `context` | The optional context in which the referenced entity is defined. This class does not prescribe what Python type the 'context' needs to be and merely exposes it as a property (see below). The only requirement is that the context implements str() and repr(). |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Raises ------ ||\n|-------------|------------------------------------------|\n| `TypeError` | if the arguments are of the wrong types. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Attributes ---------- ||\n|------------------|------------------------------------------------------------------------------------------|\n| `context` | \u003cbr /\u003e \u003cbr /\u003e |\n| `name` | \u003cbr /\u003e \u003cbr /\u003e |\n| `proto` | Returns a serialized form of this object as a pb.Computation instance. |\n| `type_signature` | Returns the TFF type of this object (an instance of [`tff.Type`](../../tff/types/Type)). |\n\n\u003cbr /\u003e\n\nMethods\n-------\n\n### `children`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n children() -\u003e Iterator[../../tff/framework/ComputationBuildingBlock]\n\nReturns an iterator yielding immediate child building blocks.\n\n### `compact_representation`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n compact_representation()\n\nReturns the compact string representation of this building block.\n\n### `formatted_representation`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n formatted_representation()\n\nReturns the formatted string representation of this building block.\n\n### `from_proto`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n @classmethod\n from_proto(\n computation_proto: pb.Computation\n ) -\u003e 'Reference'\n\nReturns an instance of a derived class based on 'computation_proto'.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ||\n|---------------------|--------------------------------|\n| `computation_proto` | An instance of pb.Computation. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ||\n|---|---|\n| An instance of a class that implements 'ComputationBuildingBlock' and that contains the deserialized logic from in 'computation_proto'. ||\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Raises ||\n|-----------------------|-------------------------------------------------------------------------------------------------------------|\n| `NotImplementedError` | if computation_proto contains a kind of computation for which deserialization has not been implemented yet. |\n| `ValueError` | if deserialization failed due to the argument being invalid. |\n\n\u003cbr /\u003e\n\n### `structural_representation`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n structural_representation()\n\nReturns the structural string representation of this building block.\n\n### `__eq__`\n\n[View source](https://github.com/tensorflow/federated/blob/v0.87.0\nVersion 2.0, January 2004\nLicensed under the Apache License, Version 2.0 (the) \n\n __eq__(\n other: object\n ) -\u003e bool\n\nReturn self==value."]]