") @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NameMap extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NameMap(Pointer p) { super(p); }
+ public NameMap() { allocate(); }
+ private native void allocate();
+ public native @Name("operator =") @ByRef NameMap put(@ByRef NameMap x);
+
+ public boolean empty() { return size() == 0; }
+ public native long size();
+
+ @Index public native Node get(@StdString BytePointer i);
+ public native NameMap put(@StdString BytePointer i, Node value);
+
+ public native void erase(@ByVal Iterator pos);
+ public native @ByVal Iterator begin();
+ public native @ByVal Iterator end();
+ @NoOffset @Name("iterator") public static class Iterator extends Pointer {
+ public Iterator(Pointer p) { super(p); }
+ public Iterator() { }
+
+ public native @Name("operator ++") @ByRef Iterator increment();
+ public native @Name("operator ==") boolean equals(@ByRef Iterator it);
+ public native @Name("operator *().first") @MemberGetter @StdString BytePointer first();
+ public native @Name("operator *().second") @MemberGetter @Const Node second();
+ }
+
+ public native long erase(@StdString BytePointer key);
+}
+
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeGraphPointer.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeGraphPointer.java
new file mode 100644
index 00000000000..b947a4b322f
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeGraphPointer.java
@@ -0,0 +1,18 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+
+@Name("tensorflow::Graph") @Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NativeGraphPointer extends Pointer {
+ /** Empty constructor. Calls {@code super((Pointer)null)}. */
+ public NativeGraphPointer() { super((Pointer)null); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NativeGraphPointer(Pointer p) { super(p); }
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOperation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOperation.java
new file mode 100644
index 00000000000..af771a0aa12
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOperation.java
@@ -0,0 +1,49 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+
+/** \addtogroup core
+ * \{
+
+ * Represents a node in the computation graph. */
+@Name("tensorflow::Operation") @NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NativeOperation extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NativeOperation(Pointer p) { super(p); }
+ /** Native array allocator. Access with {@link Pointer#position(long)}. */
+ public NativeOperation(long size) { super((Pointer)null); allocateArray(size); }
+ private native void allocateArray(long size);
+ @Override public NativeOperation position(long position) {
+ return (NativeOperation)super.position(position);
+ }
+ @Override public NativeOperation getPointer(long i) {
+ return new NativeOperation((Pointer)this).offsetAddress(i);
+ }
+
+ public NativeOperation() { super((Pointer)null); allocate(); }
+ private native void allocate();
+ public NativeOperation(Node n) { super((Pointer)null); allocate(n); }
+ private native void allocate(Node n);
+
+
+
+
+
+
+
+
+
+ public native Node node();
+
+
+
+ public native @Cast("bool") @Name("operator ==") boolean equals(@Const @ByRef NativeOperation other);
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutput.java
new file mode 100644
index 00000000000..55bcac60f5b
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutput.java
@@ -0,0 +1,45 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+
+/** Represents a tensor value produced by an Operation. */
+@Name("tensorflow::Output") @NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NativeOutput extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NativeOutput(Pointer p) { super(p); }
+ /** Native array allocator. Access with {@link Pointer#position(long)}. */
+ public NativeOutput(long size) { super((Pointer)null); allocateArray(size); }
+ private native void allocateArray(long size);
+ @Override public NativeOutput position(long position) {
+ return (NativeOutput)super.position(position);
+ }
+ @Override public NativeOutput getPointer(long i) {
+ return new NativeOutput((Pointer)this).offsetAddress(i);
+ }
+
+ public NativeOutput() { super((Pointer)null); allocate(); }
+ private native void allocate();
+ public NativeOutput(Node n) { super((Pointer)null); allocate(n); }
+ private native void allocate(Node n);
+ public NativeOutput(Node n, @Cast("tensorflow::int32") int index) { super((Pointer)null); allocate(n, index); }
+ private native void allocate(Node n, @Cast("tensorflow::int32") int index);
+ public NativeOutput(@Const @ByRef NativeOperation op, @Cast("tensorflow::int32") int index) { super((Pointer)null); allocate(op, index); }
+ private native void allocate(@Const @ByRef NativeOperation op, @Cast("tensorflow::int32") int index);
+
+ public native @ByVal NativeOperation op();
+ public native Node node();
+ public native @Cast("tensorflow::int32") int index();
+
+ public native @StdString BytePointer name();
+ public native @Cast("bool") @Name("operator ==") boolean equals(@Const @ByRef NativeOutput other);
+
+
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutputVector.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutputVector.java
new file mode 100644
index 00000000000..9dc9dd5b971
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeOutputVector.java
@@ -0,0 +1,79 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+@Name("std::vector") @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NativeOutputVector extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NativeOutputVector(Pointer p) { super(p); }
+ public NativeOutputVector(NativeOutput value) { this(1); put(0, value); }
+ public NativeOutputVector(NativeOutput ... array) { this(array.length); put(array); }
+ public NativeOutputVector() { allocate(); }
+ public NativeOutputVector(long n) { allocate(n); }
+ private native void allocate();
+ private native void allocate(@Cast("size_t") long n);
+ public native @Name("operator =") @ByRef NativeOutputVector put(@ByRef NativeOutputVector x);
+
+ public boolean empty() { return size() == 0; }
+ public native long size();
+ public void clear() { resize(0); }
+ public native void resize(@Cast("size_t") long n);
+
+ @Index(function = "at") public native @ByRef NativeOutput get(@Cast("size_t") long i);
+ public native NativeOutputVector put(@Cast("size_t") long i, NativeOutput value);
+
+ public native @ByVal Iterator insert(@ByVal Iterator pos, @ByRef NativeOutput value);
+ public native @ByVal Iterator erase(@ByVal Iterator pos);
+ public native @ByVal Iterator begin();
+ public native @ByVal Iterator end();
+ @NoOffset @Name("iterator") public static class Iterator extends Pointer {
+ public Iterator(Pointer p) { super(p); }
+ public Iterator() { }
+
+ public native @Name("operator ++") @ByRef Iterator increment();
+ public native @Name("operator ==") boolean equals(@ByRef Iterator it);
+ public native @Name("operator *") @ByRef @Const NativeOutput get();
+ }
+
+ public NativeOutput[] get() {
+ NativeOutput[] array = new NativeOutput[size() < Integer.MAX_VALUE ? (int)size() : Integer.MAX_VALUE];
+ for (int i = 0; i < array.length; i++) {
+ array[i] = get(i);
+ }
+ return array;
+ }
+ @Override public String toString() {
+ return java.util.Arrays.toString(get());
+ }
+
+ public NativeOutput pop_back() {
+ long size = size();
+ NativeOutput value = get(size - 1);
+ resize(size - 1);
+ return value;
+ }
+ public NativeOutputVector push_back(NativeOutput value) {
+ long size = size();
+ resize(size + 1);
+ return put(size, value);
+ }
+ public NativeOutputVector put(NativeOutput value) {
+ if (size() != 1) { resize(1); }
+ return put(0, value);
+ }
+ public NativeOutputVector put(NativeOutput ... array) {
+ if (size() != array.length) { resize(array.length); }
+ for (int i = 0; i < array.length; i++) {
+ put(i, array[i]);
+ }
+ return this;
+ }
+}
+
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeStatus.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeStatus.java
new file mode 100644
index 00000000000..7e21aae659b
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NativeStatus.java
@@ -0,0 +1,94 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+// #endif
+
+/** \ingroup core
+ * Denotes success or failure of a call in Tensorflow. */
+@Name("tensorflow::Status") @NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NativeStatus extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NativeStatus(Pointer p) { super(p); }
+
+ /** Create a success status. */
+
+ /** \brief Create a status with the specified error code and msg as a
+ * human-readable string containing more detailed information. */
+
+ /** \brief Create a status with the specified error code, msg, and stack trace
+ * as a human-readable string containing more detailed information. */
+// #ifndef SWIG
+// #endif
+
+ /** Copy the specified status. */
+ public native @ByRef @Name("operator =") NativeStatus put(@Const @ByRef NativeStatus s);
+// #ifndef SWIG
+// #endif // SWIG
+
+ public static native @ByVal NativeStatus OK();
+
+ /** Returns true iff the status indicates success. */
+ public native @Cast("bool") boolean ok();
+
+
+
+ public native @StdString BytePointer error_message();
+
+ public native @Cast("bool") @Name("operator ==") boolean equals(@Const @ByRef NativeStatus x);
+
+ ///
+ public native @Cast("bool") @Name("operator !=") boolean notEquals(@Const @ByRef NativeStatus x);
+
+ /** \brief If {@code ok()}, stores {@code new_status} into {@code *this}. If {@code !ok()},
+ * preserves the current status, but may augment with additional
+ * information about {@code new_status}.
+ *
+ * Convenient way of keeping track of the first error encountered.
+ * Instead of:
+ * {@code if (overall_status.ok()) overall_status = new_status}
+ * Use:
+ * {@code overall_status.Update(new_status);} */
+ public native void Update(@Const @ByRef NativeStatus new_status);
+
+ /** \brief Return a string representation of this status suitable for
+ * printing. Returns the string {@code "OK"} for success. */
+ public native @StdString BytePointer ToString();
+
+ // Ignores any errors. This method does nothing except potentially suppress
+ // complaints from any tools that are checking that errors are not dropped on
+ // the floor.
+ public native void IgnoreError();
+
+ // The Payload-related APIs are cloned from absl::Status.
+ //
+ // Returns the payload of a status given its unique `type_url` key, if
+ // present. Returns an empty StringPiece if the status is ok, or if the key is
+ // not present.
+
+
+ // Sets the payload for a non-ok status using a `type_url` key, overwriting
+ // any existing payload for that `type_url`.
+ //
+ // This function does nothing if the Status is ok.
+
+
+ // Erases the payload corresponding to the `type_url` key. Returns `true` if
+ // the payload was present.
+
+
+ // Returns all the payload information.
+ // Returns an empty result if status is ok.
+
+
+ // Copies all the payloads using the input and discards existing payloads.
+ // Does nothing if status is ok or 'payloads' is empty.
+
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/Node.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/Node.java
new file mode 100644
index 00000000000..f3baf914963
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/Node.java
@@ -0,0 +1,155 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+// Parsed from tensorflow/core/graph/graph.h
+
+@Name("tensorflow::Node") @NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class Node extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public Node(Pointer p) { super(p); }
+
+ public native @StdString BytePointer DebugString();
+ public native int id();
+ public native int cost_id();
+ public native @StdString BytePointer name();
+ public native void set_name(@StdString BytePointer name);
+ public native void set_name(@StdString String name);
+ public native @StdString BytePointer type_string();
+
+ // def() provides the NodeDef the user supplied, but the specifics
+ // of this Node may have changed due to placement, optimization, etc.
+ // In particular:
+ // * def().name() will match name();
+ // * def().op() will match type_string() and op_def().name();
+ // * def().input() is not reliable, use "in_edges()" below instead;
+ // * def().device() is the "user's requested device" and may not match
+ // the actual assigned device, see assigned_device_name() below;
+ // * def().attr() is authoritative.
+ // TODO(irving): Replace with NodeInfo.
+
+ // TODO(mdan): This is only used by control_flow_deps_o_chains. Remove?
+
+ // input and output types
+ public native @Cast("tensorflow::int32") int num_inputs();
+
+ public native @Cast("tensorflow::int32") int num_outputs();
+
+ // The device requested by the user. For the actual assigned device,
+ // use assigned_device_name() below.
+ public native @StdString BytePointer requested_device();
+
+ // This changes the user requested device but not necessarily the device that
+ // on which the operation will run.
+ public native void set_requested_device(@StdString BytePointer device);
+ public native void set_requested_device(@StdString String device);
+
+ // This gives the device the runtime has assigned this node to. If
+ // you want the device the user requested, use def().device() instead.
+ // TODO(josh11b): Validate that the assigned_device, if not empty:
+ // fully specifies a device, and satisfies def().device().
+ // TODO(josh11b): Move assigned_device_name outside of Node into a
+ // NodeId->DeviceName map.
+ public native @StdString BytePointer assigned_device_name();
+ public native void set_assigned_device_name(@StdString BytePointer device_name);
+ public native void set_assigned_device_name(@StdString String device_name);
+ public native @Cast("bool") boolean has_assigned_device_name();
+ public native int assigned_device_name_index();
+ public native void set_assigned_device_name_index(int index);
+
+ // Sets 'original_node_names' field of this node's DebugInfo proto to
+ // 'names'.
+
+
+ // Read only access to attributes
+
+ // Inputs requested by the NodeDef. For the actual inputs, use in_edges.
+
+ // Get the neighboring nodes via edges either in or out of this node. This
+ // includes control edges.
+
+ // Node type helpers.
+ public native @Cast("bool") boolean IsSource();
+ public native @Cast("bool") boolean IsSink();
+ // Anything other than the special Source & Sink nodes.
+ public native @Cast("bool") boolean IsOp();
+
+ // Node class helpers
+ public native @Cast("bool") boolean IsSwitch();
+ public native @Cast("bool") boolean IsMerge();
+ public native @Cast("bool") boolean IsEnter();
+ public native @Cast("bool") boolean IsExit();
+ public native @Cast("bool") boolean IsNextIteration();
+ public native @Cast("bool") boolean IsLoopCond();
+ public native @Cast("bool") boolean IsControlTrigger();
+ public native @Cast("bool") boolean IsSend();
+ public native @Cast("bool") boolean IsRecv();
+ public native @Cast("bool") boolean IsConstant();
+ public native @Cast("bool") boolean IsVariable();
+ public native @Cast("bool") boolean IsIdentity();
+ public native @Cast("bool") boolean IsGetSessionHandle();
+ public native @Cast("bool") boolean IsGetSessionTensor();
+ public native @Cast("bool") boolean IsDeleteSessionTensor();
+ public native @Cast("bool") boolean IsControlFlow();
+ public native @Cast("bool") boolean IsHostSend();
+ public native @Cast("bool") boolean IsHostRecv();
+ public native @Cast("bool") boolean IsScopedAllocator();
+ public native @Cast("bool") boolean IsCollective();
+
+ public native @Cast("bool") boolean IsMetadata();
+ public native @Cast("bool") boolean IsFakeParam();
+ public native @Cast("bool") boolean IsPartitionedCall();
+
+ // Returns true if this node is any kind of function call node.
+ //
+ // NOTE: "function call nodes" include partitioned call ops, symbolic gradient
+ // ops, and ops whose type_string is the name of a function ("function ops").
+ public native @Cast("bool") boolean IsFunctionCall();
+
+ public native @Cast("bool") boolean IsIfNode();
+ public native @Cast("bool") boolean IsWhileNode();
+ public native @Cast("bool") boolean IsCaseNode();
+ // Is this node a function input
+ public native @Cast("bool") boolean IsArg();
+ // Is this node a function output
+ public native @Cast("bool") boolean IsRetval();
+
+ public native @Cast("bool") boolean IsDistributedCommunication();
+
+
+
+
+
+
+
+ // Returns into '*e' the edge connecting to the 'idx' input of this Node.
+
+ // Returns into '*edges' the input data edges of this Node, indexed by input
+ // number. Does not return control edges.
+
+ // Returns into '*n' the node that has an output connected to the
+ // 'idx' input of this Node.
+
+
+
+ // Returns into '*t' the idx-th input tensor of this node, represented as the
+ // output tensor of input_node(idx).
+
+ // Sets the stack trace for the node. Assumes that getting and setting the
+ // stack trace for a given node will not race.
+
+
+ // Get the stack trace for when the node was instantiated.
+
+
+ // Called after an attr has changed. Decides whether we need to update some
+ // property of the node (stored in props_).
+ public native void UpdateProperties();
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NodeBuilder.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NodeBuilder.java
new file mode 100644
index 00000000000..5922ff38b0a
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/NodeBuilder.java
@@ -0,0 +1,17 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+@Namespace("tensorflow") @Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class NodeBuilder extends Pointer {
+ /** Empty constructor. Calls {@code super((Pointer)null)}. */
+ public NodeBuilder() { super((Pointer)null); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public NodeBuilder(Pointer p) { super(p); }
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java
index f4521d36625..c4d88baf176 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java
@@ -8,19 +8,42 @@
import static org.tensorflow.internal.c_api.global.tensorflow.*;
+// Parsed from tensorflow/c/c_api_internal.h
-// TODO(jeff,sanjay):
-// - export functions to set Config fields
-
-// --------------------------------------------------------------------------
-// The new graph construction API, still under development.
-
-// Represents a computation graph. Graphs may be shared between sessions.
-// Graphs are thread-safe when used as directed below.
-@Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+@NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
public class TF_Graph extends org.tensorflow.internal.c_api.AbstractTF_Graph {
- /** Empty constructor. Calls {@code super((Pointer)null)}. */
- public TF_Graph() { super((Pointer)null); }
+ static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public TF_Graph(Pointer p) { super(p); }
+
+
+
+ public native @MemberGetter @ByRef NativeGraphPointer graph();
+
+ // Runs shape inference.
+
+
+ // Maps from name of an operation to the Node* in 'graph'.
+ public native @ByRef NameMap name_map(); public native TF_Graph name_map(NameMap setter);
+
+ // The keys of this map are all the active sessions using this graph. Each
+ // value records whether the graph has been mutated since the corresponding
+ // session has been run (this is detected in RecordMutation function). If the
+ // string is empty, no mutation has occurred. Otherwise the string is a
+ // description of the mutation suitable for returning to the user.
+ //
+ // Sessions are added to this map in TF_NewSession, and removed in
+ // TF_DeleteSession.
+ // TF_Graph may only / must be deleted when
+ // sessions.size() == 0 && delete_requested == true
+ //
+ // TODO(b/74949947): mutations currently trigger a warning instead of a bad
+ // status, this should be reverted when possible.
+
+ // set true by TF_DeleteGraph
+
+ // Used to link graphs contained in TF_WhileParams to the parent graph that
+ // will eventually contain the full while loop.
+ public native TF_Graph parent(); public native TF_Graph parent(TF_Graph setter);
+ public native TF_Output parent_inputs(); public native TF_Graph parent_inputs(TF_Output setter);
}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java
index 4daad4f8a2a..96e5ef47b38 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java
@@ -8,14 +8,11 @@
import static org.tensorflow.internal.c_api.global.tensorflow.*;
-
-// Operation that has been added to the graph. Valid until the graph is
-// deleted -- in particular adding a new operation to the graph does not
-// invalidate old TF_Operation* pointers.
-@Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+@Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
public class TF_Operation extends Pointer {
- /** Empty constructor. Calls {@code super((Pointer)null)}. */
- public TF_Operation() { super((Pointer)null); }
+ static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public TF_Operation(Pointer p) { super(p); }
+
+ public native @MemberGetter @ByRef Node node();
}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java
index 490ca238753..71738f4ac02 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java
@@ -8,12 +8,14 @@
import static org.tensorflow.internal.c_api.global.tensorflow.*;
-
-// Operation being built. The underlying graph must outlive this.
-@Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+@NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
public class TF_OperationDescription extends Pointer {
- /** Empty constructor. Calls {@code super((Pointer)null)}. */
- public TF_OperationDescription() { super((Pointer)null); }
+ static { Loader.load(); }
/** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
public TF_OperationDescription(Pointer p) { super(p); }
+
+
+ public native @ByRef NodeBuilder node_builder(); public native TF_OperationDescription node_builder(NodeBuilder setter);
+ public native TF_Graph graph(); public native TF_OperationDescription graph(TF_Graph setter);
+
}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Scope.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Scope.java
new file mode 100644
index 00000000000..bea7ec98a25
--- /dev/null
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/TF_Scope.java
@@ -0,0 +1,216 @@
+// Targeted by JavaCPP version 1.5.6: DO NOT EDIT THIS FILE
+
+package org.tensorflow.internal.c_api;
+
+import java.nio.*;
+import org.bytedeco.javacpp.*;
+import org.bytedeco.javacpp.annotation.*;
+
+import static org.tensorflow.internal.c_api.global.tensorflow.*;
+
+
+/** \addtogroup core
+ * \{
+
+ * A {@code Scope} object represents a set of related TensorFlow ops that have the
+ * same properties such as a common name prefix.
+ *
+ * A Scope object is a container for TensorFlow Op properties. Op constructors
+ * get a Scope object as a mandatory first argument and the constructed op
+ * acquires the properties in the object.
+ *
+ * A simple example:
+ *
+ * using namespace ops;
+ * Scope root = Scope::NewRootScope();
+ * auto c1 = Const(root, { {1, 1} });
+ * auto m = MatMul(root, c1, { {41}, {1} });
+ * GraphDef gdef;
+ * Status s = root.ToGraphDef(&gdef);
+ * if (!s.ok()) { ... }
+ *
+ * Scope hierarchy:
+ *
+ * The Scope class provides various With<> functions that create a new scope.
+ * The new scope typically has one property changed while other properties are
+ * inherited from the parent scope.
+ * NewSubScope(name) method appends {@code name} to the prefix of names for ops
+ * created within the scope, and WithOpName() changes the suffix which
+ * otherwise defaults to the type of the op.
+ *
+ * Name examples:
+ *
+ * Scope root = Scope::NewRootScope();
+ * Scope linear = root.NewSubScope("linear");
+ * // W will be named "linear/W"
+ * auto W = Variable(linear.WithOpName("W"),
+ * {2, 2}, DT_FLOAT);
+ * // b will be named "linear/b_3"
+ * int idx = 3;
+ * auto b = Variable(linear.WithOpName("b_", idx),
+ * {2}, DT_FLOAT);
+ * auto x = Const(linear, {...}); // name: "linear/Const"
+ * auto m = MatMul(linear, x, W); // name: "linear/MatMul"
+ * auto r = BiasAdd(linear, m, b); // name: "linear/BiasAdd"
+ *
+ * Scope lifetime:
+ *
+ * A new scope is created by calling Scope::NewRootScope. This creates some
+ * resources that are shared by all the child scopes that inherit from this
+ * scope, directly or transitively. For instance, a new scope creates a new
+ * Graph object to which operations are added when the new scope or its
+ * children are used by an Op constructor. The new scope also has a Status
+ * object which will be used to indicate errors by Op-constructor functions
+ * called on any child scope. The Op-constructor functions have to check the
+ * scope's status by calling the ok() method before proceeding to construct the
+ * op.
+ *
+ * Thread safety:
+ *
+ * A {@code Scope} object is NOT thread-safe. Threads cannot concurrently call
+ * op-constructor functions on the same {@code Scope} object. */
+@Name("tensorflow::Scope") @NoOffset @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class)
+public class TF_Scope extends Pointer {
+ static { Loader.load(); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public TF_Scope(Pointer p) { super(p); }
+
+ public TF_Scope(@Const @ByRef TF_Scope other) { super((Pointer)null); allocate(other); }
+ private native void allocate(@Const @ByRef TF_Scope other);
+ public native @ByRef @Name("operator =") TF_Scope put(@Const @ByRef TF_Scope other);
+
+ // The following functions are for users making graphs. They return brand new
+ // scopes, or scopes derived from an existing scope object.
+
+ /** Return a new scope.
+ * This creates a new graph and all operations constructed in this graph
+ * should use the returned object as the "root" scope. */
+ public static native @ByVal TF_Scope NewRootScope();
+
+ /** Return a new scope. Ops created with this scope will have
+ * {@code name/child_scope_name} as the prefix. The actual name will be unique
+ * in the current scope. All other properties are inherited from the current
+ * scope. If {@code child_scope_name} is empty, the {@code /} is elided. */
+ public native @ByVal TF_Scope NewSubScope(@StdString BytePointer child_scope_name);
+ public native @ByVal TF_Scope NewSubScope(@StdString String child_scope_name);
+
+ /** Return a new scope. All ops created within the returned scope will have
+ * names of the form {@code name/StrCat(fragments...)[_suffix]} */
+
+ /** Return a new scope. All ops created within the returned scope will have as
+ * control dependencies the union of operations in the control_deps vector
+ * and the control dependencies of the current scope. */
+ public native @ByVal TF_Scope WithControlDependencies(
+ @Span NativeOperation control_deps);
+ /** Same as above, but convenient to add control dependency on the operation
+ * producing the control_dep output. */
+ public native @ByVal TF_Scope WithControlDependencies(@Const @ByRef NativeOutput control_dep);
+
+ /** Return a new scope. All ops created within the returned scope will have no
+ * control dependencies on other operations. */
+ public native @ByVal TF_Scope WithNoControlDependencies();
+
+ /** Return a new scope. All ops created within the returned scope will have
+ * the device field set to 'device'. */
+ public native @ByVal TF_Scope WithDevice(@StdString BytePointer device);
+ public native @ByVal TF_Scope WithDevice(@StdString String device);
+
+ /** Returns a new scope. All ops created within the returned scope will have
+ * their assigned device set to {@code assigned_device}. */
+
+
+ /** Returns a new scope. All ops created within the returned scope will have
+ * their _XlaCluster attribute set to {@code xla_cluster}. */
+
+
+ /** Return a new scope. All ops created within the returned scope will be
+ * co-located on the device where op is placed.
+ * NOTE: This function is intended to be use internal libraries only for
+ * controlling placement of ops on to devices. Public use is not encouraged
+ * because the implementation of device placement is subject to change. */
+
+ /** Convenience function for above. */
+
+ /** Clear all colocation constraints. */
+
+
+ /** Return a new scope. The op-constructor functions taking the returned scope
+ * as the scope argument will exit as soon as an error is detected, instead
+ * of setting the status on the scope. */
+ public native @ByVal TF_Scope ExitOnError();
+
+ /** Return a new scope. All ops created with the new scope will have
+ * kernel_label as the value for their '_kernel' attribute; */
+
+
+ // The following functions are for scope object consumers.
+
+ /** Return a unique name, using default_name if an op name has not been
+ * specified. */
+ public native @StdString BytePointer GetUniqueNameForOp(@StdString BytePointer default_name);
+ public native @StdString String GetUniqueNameForOp(@StdString String default_name);
+
+ /** Update the status on this scope.
+ * Note: The status object is shared between all children of this scope.
+ * If the resulting status is not Status::OK() and exit_on_error_ is set on
+ * this scope, this function exits by calling LOG(FATAL). */
+
+
+ // START_SKIP_DOXYGEN
+
+ /** Update the builder with properties accumulated in this scope. Does not set
+ * status(). */
+ // TODO(skyewm): NodeBuilder is not part of public API
+ public native void UpdateBuilder(NodeBuilder builder);
+ // END_SKIP_DOXYGEN
+
+ public native @Cast("bool") boolean ok();
+
+ // TODO(skyewm): Graph is not part of public API
+ public native NativeGraphPointer graph();
+
+ // TODO(skyewm): Graph is not part of public API
+
+
+
+
+ /** If status() is Status::OK(), convert the Graph object stored in this scope
+ * to a GraphDef proto and return Status::OK(). Otherwise, return the error
+ * status as is without performing GraphDef conversion. */
+
+
+ // START_SKIP_DOXYGEN
+
+ /** If status() is Status::OK(), construct a Graph object using {@code opts} as the
+ * GraphConstructorOptions, and return Status::OK if graph construction was
+ * successful. Otherwise, return the error status. */
+ // TODO(josh11b, keveman): Make this faster; right now it converts
+ // Graph->GraphDef->Graph. This cleans up the graph (e.g. adds
+ // edges from the source and to the sink node, resolves back edges
+ // by name), and makes sure the resulting graph is valid.
+
+
+ // Calls AddNode() using this scope's ShapeRefiner. This exists in the public
+ // API to prevent custom op wrappers from needing access to shape_refiner.h or
+ // scope_internal.h.
+ // TODO(skyewm): remove this from public API
+
+
+ // Creates a new root scope that causes all DoShapeInference() calls to return
+ // Status::OK() (on the returned scope and any subscopes). Used for testing.
+ // TODO(skyewm): fix tests that still require this and eventually remove, or
+ // at least remove from public API
+
+ // END_SKIP_DOXYGEN
+
+
+
+ // START_SKIP_DOXYGEN
+ @Opaque public static class Impl extends Pointer {
+ /** Empty constructor. Calls {@code super((Pointer)null)}. */
+ public Impl() { super((Pointer)null); }
+ /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
+ public Impl(Pointer p) { super(p); }
+ }
+ public native Impl impl();
+}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java
index 56ed191ae28..3128389e255 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java
@@ -11,6 +11,12 @@
public class tensorflow extends org.tensorflow.internal.c_api.presets.tensorflow {
static { Loader.load(); }
+// Targeting ../NativeOutputVector.java
+
+
+// Targeting ../NameMap.java
+
+
// Parsed from tensorflow/core/platform/ctstring_internal.h
/* Copyright 2019 The TensorFlow Authors. All Rights Reserved.
@@ -982,9 +988,15 @@ public static native void TF_SetConfig(TF_SessionOptions options,
// Destroy an options object.
public static native void TF_DeleteSessionOptions(TF_SessionOptions arg0);
-// Targeting ../TF_Graph.java
+// TODO(jeff,sanjay):
+// - export functions to set Config fields
+
+// --------------------------------------------------------------------------
+// The new graph construction API, still under development.
+// Represents a computation graph. Graphs may be shared between sessions.
+// Graphs are thread-safe when used as directed below.
// Return a new graph object.
public static native TF_Graph TF_NewGraph();
@@ -992,12 +1004,12 @@ public static native void TF_SetConfig(TF_SessionOptions options,
// Destroy an options object. Graph will be deleted once no more
// TFSession's are referencing it.
public static native void TF_DeleteGraph(TF_Graph arg0);
-// Targeting ../TF_OperationDescription.java
-
-
-// Targeting ../TF_Operation.java
+// Operation being built. The underlying graph must outlive this.
+// Operation that has been added to the graph. Valid until the graph is
+// deleted -- in particular adding a new operation to the graph does not
+// invalidate old TF_Operation* pointers.
// Targeting ../TF_Input.java
@@ -1079,6 +1091,15 @@ public static native void TF_GraphGetTensorShape(TF_Graph graph,
@Cast("int64_t*") long[] dims, int num_dims,
TF_Status status);
+// TF_NewOperation, but without locking the graph.
+// Should prefer TF_NewOperation when possible.
+public static native TF_OperationDescription TF_NewOperationLocked(TF_Graph graph,
+ @Cast("const char*") BytePointer op_type,
+ @Cast("const char*") BytePointer oper_name);
+public static native TF_OperationDescription TF_NewOperationLocked(TF_Graph graph,
+ String op_type,
+ String oper_name);
+
// Operation will only be added to *graph when TF_FinishOperation() is
// called (assuming TF_FinishOperation() does not return an error).
// *graph must not be deleted until after TF_FinishOperation() is
@@ -1418,6 +1439,11 @@ public static native void TF_SetAttrValueProto(TF_OperationDescription desc,
@Cast("size_t") long proto_len,
TF_Status status);
+// TF_FinishOperation, but without locking the graph.
+// TF_FinishOperation should be preferred when possible.
+public static native TF_Operation TF_FinishOperationLocked(TF_OperationDescription desc,
+ TF_Status status);
+
// If this function succeeds:
// * *status is set to an OK value,
// * a TF_Operation is added to the graph,
@@ -4084,6 +4110,26 @@ public static native void TF_ShapeInferenceContextConcatenateShapes(
// #endif // TENSORFLOW_C_OPS_H_
+// Parsed from tensorflow_adapters.h
+
+/*
+ Copyright 2021 The TensorFlow Authors. All Rights Reserved.
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ =======================================================================
+ */
+
+// #include "absl/types/span.h"
+
+
+
// Parsed from tensorflow/c/eager/c_api.h
/* Copyright 2017 The TensorFlow Authors. All Rights Reserved.
@@ -4783,4 +4829,306 @@ public static native void TFE_OpSetAttrValueProto(@Const TFE_Op op,
public static final int TFE_CUSTOM_DEVICE_VERSION = 4;
+// Parsed from tensorflow/cc/framework/scope.h
+
+/* Copyright 2016 The TensorFlow Authors. All Rights Reserved.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+==============================================================================*/
+
+// #ifndef TENSORFLOW_CC_FRAMEWORK_SCOPE_H_
+// #define TENSORFLOW_CC_FRAMEWORK_SCOPE_H_
+
+// #include
+// #include
+// #include
+// #include
+// #include
+
+// #include "absl/strings/str_cat.h"
+// #include "tensorflow/cc/framework/ops.h"
+// #include "tensorflow/core/common_runtime/graph_constructor.h"
+// #include "tensorflow/core/lib/core/status.h"
+// #include "tensorflow/core/lib/gtl/array_slice.h"
+// Targeting ../NativeGraphPointer.java
+
+
+// Targeting ../NodeBuilder.java
+
+
+// Targeting ../TF_Scope.java
+
+
+
+/** A helper struct to hold the scopes that would be used by a function
+ * constructing a composite op. */
+
+// Creates a node of the given operation, with the given inputs, and assigns the
+// result to output. This does not support the ability to add additional
+// attributes.
+
+/** \} */
+
+ // namespace tensorflow
+
+// #endif // TENSORFLOW_CC_FRAMEWORK_SCOPE_H_
+
+
+// Parsed from tensorflow/cc/framework/grad_op_registry.h
+
+/* Copyright 2016 The TensorFlow Authors. All Rights Reserved.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+==============================================================================*/
+
+// #ifndef TENSORFLOW_CC_FRAMEWORK_GRAD_OP_REGISTRY_H_
+// #define TENSORFLOW_CC_FRAMEWORK_GRAD_OP_REGISTRY_H_
+
+// #include
+
+// #include "tensorflow/cc/framework/ops.h"
+// #include "tensorflow/cc/framework/scope.h"
+// Targeting ../GradFunc.java
+
+
+// Targeting ../GradOpRegistry.java
+
+
+
+ // namespace ops
+
+// Macros used to define gradient functions for ops.
+// #define REGISTER_GRADIENT_OP(name, fn)
+// REGISTER_GRADIENT_OP_UNIQ_HELPER(__COUNTER__, name, fn)
+
+// #define REGISTER_NO_GRADIENT_OP(name)
+// REGISTER_GRADIENT_OP_UNIQ_HELPER(__COUNTER__, name, nullptr)
+
+// #define REGISTER_GRADIENT_OP_UNIQ_HELPER(ctr, name, fn)
+// REGISTER_GRADIENT_OP_UNIQ(ctr, name, fn)
+
+// #define REGISTER_GRADIENT_OP_UNIQ(ctr, name, fn)
+// static bool unused_ret_val_##ctr =
+// ::tensorflow::ops::GradOpRegistry::Global()->Register(name, fn)
+
+ // namespace tensorflow
+
+// #endif // TENSORFLOW_CC_FRAMEWORK_GRAD_OP_REGISTRY_H_
+
+
+// Parsed from tensorflow/core/platform/status.h
+
+/* Copyright 2015 The TensorFlow Authors. All Rights Reserved.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+==============================================================================*/
+
+// #ifndef TENSORFLOW_CORE_PLATFORM_STATUS_H_
+// #define TENSORFLOW_CORE_PLATFORM_STATUS_H_
+
+// #include
+// #include
+// #include
+// #include
+// #include
+
+// #include "tensorflow/core/platform/logging.h"
+// #include "tensorflow/core/platform/macros.h"
+// #include "tensorflow/core/platform/stack_frame.h"
+// #include "tensorflow/core/platform/stringpiece.h"
+// #include "tensorflow/core/platform/types.h"
+// #include "tensorflow/core/protobuf/error_codes.pb.h"
+
+// #if defined(__clang__)
+// Only clang supports warn_unused_result as a type annotation.
+// Targeting ../NativeStatus.java
+
+
+
+// Helper class to manage multiple child status values.
+
+
+
+
+
+// #ifndef SWIG
+
+
+
+// #endif // SWIG
+
+
+
+
+
+/** \ingroup core */
+@Namespace("tensorflow") public static native @Cast("std::ostream*") @ByRef @Name("operator <<") Pointer shiftLeft(@Cast("std::ostream*") @ByRef Pointer os, @Const @ByRef NativeStatus x);
+
+@Namespace("tensorflow") public static native @StdString BytePointer TfCheckOpHelperOutOfLine(
+ @Const @ByRef NativeStatus v, @Cast("const char*") BytePointer msg);
+@Namespace("tensorflow") public static native @StdString BytePointer TfCheckOpHelperOutOfLine(
+ @Const @ByRef NativeStatus v, String msg);
+
+@Namespace("tensorflow") public static native @StdString BytePointer TfCheckOpHelper(@ByVal NativeStatus v,
+ @Cast("const char*") BytePointer msg);
+@Namespace("tensorflow") public static native @StdString BytePointer TfCheckOpHelper(@ByVal NativeStatus v,
+ String msg);
+
+// #define TF_DO_CHECK_OK(val, level)
+// while (auto _result = ::tensorflow::TfCheckOpHelper(val, #val))
+// LOG(level) << *(_result)
+
+// #define TF_CHECK_OK(val) TF_DO_CHECK_OK(val, FATAL)
+// #define TF_QCHECK_OK(val) TF_DO_CHECK_OK(val, QFATAL)
+
+// DEBUG only version of TF_CHECK_OK. Compiler still parses 'val' even in opt
+// mode.
+// #ifndef NDEBUG
+// #define TF_DCHECK_OK(val) TF_CHECK_OK(val)
+// #else
+// #define TF_DCHECK_OK(val)
+// while (false && (::tensorflow::Status::OK() == (val))) LOG(FATAL)
+// #endif
+
+ // namespace tensorflow
+
+// #endif // TENSORFLOW_CORE_PLATFORM_STATUS_H_
+
+
+// Targeting ../Node.java
+
+
+
+// Stores debug information associated with the Node.
+
+
+// Parsed from tensorflow/c/tf_status_helper.h
+
+/* Copyright 2016 The TensorFlow Authors. All Rights Reserved.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+==============================================================================*/
+
+// #ifndef TENSORFLOW_C_TF_STATUS_HELPER_H_
+// #define TENSORFLOW_C_TF_STATUS_HELPER_H_
+
+// #include "tensorflow/c/tf_status.h"
+// #include "tensorflow/core/platform/status.h"
+
+// Set the attribute of "tf_status" from the attributes of "status".
+@Namespace("tensorflow") public static native void Set_TF_Status_from_Status(TF_Status tf_status,
+ @Const @ByRef NativeStatus status);
+
+// Returns a "status" from "tf_status".
+@Namespace("tensorflow") public static native @ByVal NativeStatus StatusFromTF_Status(@Const TF_Status tf_status);
+ // namespace internal
+
+ // namespace tensorflow
+
+// #endif // TENSORFLOW_C_TF_STATUS_HELPER_H_
+
+
+// Parsed from tensorflow/cc/framework/ops.h
+
+/* Copyright 2016 The TensorFlow Authors. All Rights Reserved.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+==============================================================================*/
+
+// #ifndef TENSORFLOW_CC_FRAMEWORK_OPS_H_
+// #define TENSORFLOW_CC_FRAMEWORK_OPS_H_
+
+// #include
+
+// #include "tensorflow/core/framework/tensor.h"
+// #include "tensorflow/core/framework/tensor.pb.h"
+// #include "tensorflow/core/graph/graph.h"
+// #include "tensorflow/core/lib/hash/hash.h"
+// #include "tensorflow/core/lib/strings/strcat.h"
+
+/** \defgroup core Core Tensorflow API */
+// Targeting ../NativeOperation.java
+
+
+// Targeting ../NativeOutput.java
+
+
+
+/** Hash class that can be used for e.g. storing Outputs in an unordered_map */
+
+/** Represents a tensor value that can be used as an operand to an Operation. */
+
+/** A type for representing the output of ops that produce more than one output,
+ * or a list of tensors. */
+
+/** A type for representing the input to ops that require a list of tensors. */
+
+/** \} */
+
+ // namespace tensorflow
+
+// #endif // TENSORFLOW_CC_FRAMEWORK_OPS_H_
+
+
+// Targeting ../TF_Graph.java
+
+
+// Targeting ../TF_OperationDescription.java
+
+
+// Targeting ../TF_Operation.java
+
+
+
+
}
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/AudioSpectrogram.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/AudioSpectrogram.java
index 12fca67165e..4bc3f61c197 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/AudioSpectrogram.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/AudioSpectrogram.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TFloat32;
@@ -54,6 +56,10 @@
* tensorflow/examples/wav_to_spectrogram to read in an audio file and save out the
* resulting spectrogram as a PNG image.
*/
+@OpMetadata(
+ opType = AudioSpectrogram.OP_NAME,
+ inputsClass = AudioSpectrogram.Inputs.class
+)
@Operator(
group = "audio"
)
@@ -65,8 +71,8 @@ public final class AudioSpectrogram extends RawOp implements Operand {
private Output spectrogram;
- private AudioSpectrogram(Operation operation) {
- super(operation);
+ public AudioSpectrogram(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
spectrogram = operation.output(outputIdx++);
}
@@ -148,6 +154,9 @@ public Options magnitudeSquared(Boolean magnitudeSquared) {
}
}
+ @OpInputsMetadata(
+ outputsClass = AudioSpectrogram.class
+ )
public static class Inputs extends RawOpInputs {
/**
* Float representation of audio data.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/DecodeWav.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/DecodeWav.java
index 0caa473a0db..1666d475d57 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/DecodeWav.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/DecodeWav.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TFloat32;
import org.tensorflow.types.TInt32;
@@ -46,6 +48,10 @@
* number of samples. For example, a ten-sample-long stereo WAV file should give an
* output shape of [10, 2].
*/
+@OpMetadata(
+ opType = DecodeWav.OP_NAME,
+ inputsClass = DecodeWav.Inputs.class
+)
@Operator(
group = "audio"
)
@@ -59,8 +65,8 @@ public final class DecodeWav extends RawOp {
private Output sampleRate;
- private DecodeWav(Operation operation) {
- super(operation);
+ public DecodeWav(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
audio = operation.output(outputIdx++);
sampleRate = operation.output(outputIdx++);
@@ -165,6 +171,9 @@ public Options desiredSamples(Long desiredSamples) {
}
}
+ @OpInputsMetadata(
+ outputsClass = DecodeWav.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The WAV-encoded audio, usually from a file.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/EncodeWav.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/EncodeWav.java
index 8e535d1d48b..ecbafeb2d4e 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/EncodeWav.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/EncodeWav.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TFloat32;
import org.tensorflow.types.TInt32;
@@ -41,6 +43,10 @@
* {@code audio} is a 2-D float Tensor of shape {@code [length, channels]}.
* {@code sample_rate} is a scalar Tensor holding the rate to use (e.g. 44100).
*/
+@OpMetadata(
+ opType = EncodeWav.OP_NAME,
+ inputsClass = EncodeWav.Inputs.class
+)
@Operator(
group = "audio"
)
@@ -52,8 +58,8 @@ public final class EncodeWav extends RawOp implements Operand {
private Output contents;
- private EncodeWav(Operation operation) {
- super(operation);
+ public EncodeWav(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
contents = operation.output(outputIdx++);
}
@@ -90,6 +96,9 @@ public Output asOutput() {
return contents;
}
+ @OpInputsMetadata(
+ outputsClass = EncodeWav.class
+ )
public static class Inputs extends RawOpInputs {
/**
* 2-D with shape {@code [length, channels]}.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/Mfcc.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/Mfcc.java
index b75d638879c..cf1f13ea4ac 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/Mfcc.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/audio/Mfcc.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TFloat32;
import org.tensorflow.types.TInt32;
@@ -40,6 +42,10 @@
* history in the speech recognition world, and https://en.wikipedia.org/wiki/Mel-frequency_cepstrum
* is a good resource to learn more.
*/
+@OpMetadata(
+ opType = Mfcc.OP_NAME,
+ inputsClass = Mfcc.Inputs.class
+)
@Operator(
group = "audio"
)
@@ -51,8 +57,8 @@ public final class Mfcc extends RawOp implements Operand {
private Output output;
- private Mfcc(Operation operation) {
- super(operation);
+ public Mfcc(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
output = operation.output(outputIdx++);
}
@@ -212,6 +218,9 @@ public Options dctCoefficientCount(Long dctCoefficientCount) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Mfcc.class
+ )
public static class Inputs extends RawOpInputs {
/**
* Typically produced by the Spectrogram op, with magnitude_squared
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java
index 0a208566534..75e1d6e8a5f 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -53,6 +55,10 @@
*
* @param data type for {@code z} output
*/
+@OpMetadata(
+ opType = BitwiseAnd.OP_NAME,
+ inputsClass = BitwiseAnd.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -64,8 +70,8 @@ public final class BitwiseAnd extends RawOp implements Operan
private Output z;
- private BitwiseAnd(Operation operation) {
- super(operation);
+ public BitwiseAnd(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
z = operation.output(outputIdx++);
}
@@ -103,6 +109,9 @@ public Output asOutput() {
return z;
}
+ @OpInputsMetadata(
+ outputsClass = BitwiseAnd.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java
index ba212ec5596..28865bc0cc8 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -53,6 +55,10 @@
*
* @param data type for {@code z} output
*/
+@OpMetadata(
+ opType = BitwiseOr.OP_NAME,
+ inputsClass = BitwiseOr.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -64,8 +70,8 @@ public final class BitwiseOr extends RawOp implements Operand
private Output z;
- private BitwiseOr(Operation operation) {
- super(operation);
+ public BitwiseOr(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
z = operation.output(outputIdx++);
}
@@ -103,6 +109,9 @@ public Output asOutput() {
return z;
}
+ @OpInputsMetadata(
+ outputsClass = BitwiseOr.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java
index 57248c5cc6d..e4655d95f8f 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -53,6 +55,10 @@
*
* @param data type for {@code z} output
*/
+@OpMetadata(
+ opType = BitwiseXor.OP_NAME,
+ inputsClass = BitwiseXor.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -64,8 +70,8 @@ public final class BitwiseXor extends RawOp implements Operan
private Output z;
- private BitwiseXor(Operation operation) {
- super(operation);
+ public BitwiseXor(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
z = operation.output(outputIdx++);
}
@@ -103,6 +109,9 @@ public Output asOutput() {
return z;
}
+ @OpInputsMetadata(
+ outputsClass = BitwiseXor.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java
index f5f2765eb33..4dd4375304c 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -74,6 +76,10 @@
*
* @param data type for {@code y} output
*/
+@OpMetadata(
+ opType = Invert.OP_NAME,
+ inputsClass = Invert.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -85,8 +91,8 @@ public final class Invert extends RawOp implements Operand
private Output y;
- private Invert(Operation operation) {
- super(operation);
+ public Invert(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
y = operation.output(outputIdx++);
}
@@ -122,6 +128,9 @@ public Output asOutput() {
return y;
}
+ @OpInputsMetadata(
+ outputsClass = Invert.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java
index 6420dcc7f65..0173cdc694d 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -64,6 +66,10 @@
*
* @param data type for {@code z} output
*/
+@OpMetadata(
+ opType = LeftShift.OP_NAME,
+ inputsClass = LeftShift.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -75,8 +81,8 @@ public final class LeftShift extends RawOp implements Operand
private Output z;
- private LeftShift(Operation operation) {
- super(operation);
+ public LeftShift(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
z = operation.output(outputIdx++);
}
@@ -114,6 +120,9 @@ public Output asOutput() {
return z;
}
+ @OpInputsMetadata(
+ outputsClass = LeftShift.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java
index 5fa84781682..00990db0ce0 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -66,6 +68,10 @@
*
* @param data type for {@code z} output
*/
+@OpMetadata(
+ opType = RightShift.OP_NAME,
+ inputsClass = RightShift.Inputs.class
+)
@Operator(
group = "bitwise"
)
@@ -77,8 +83,8 @@ public final class RightShift extends RawOp implements Operan
private Output z;
- private RightShift(Operation operation) {
- super(operation);
+ public RightShift(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
z = operation.output(outputIdx++);
}
@@ -116,6 +122,9 @@ public Output asOutput() {
return z;
}
+ @OpInputsMetadata(
+ outputsClass = RightShift.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The x input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KMC2ChainInitialization.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KMC2ChainInitialization.java
index 39eb7f70ce5..7c2432bcc34 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KMC2ChainInitialization.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KMC2ChainInitialization.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.types.TFloat32;
import org.tensorflow.types.TInt64;
@@ -37,6 +39,10 @@
* of the k-MC^2 algorithm and returns the index of one candidate point to be added
* as an additional cluster center.
*/
+@OpMetadata(
+ opType = KMC2ChainInitialization.OP_NAME,
+ inputsClass = KMC2ChainInitialization.Inputs.class
+)
public final class KMC2ChainInitialization extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -45,8 +51,8 @@ public final class KMC2ChainInitialization extends RawOp implements Operand index;
- private KMC2ChainInitialization(Operation operation) {
- super(operation);
+ public KMC2ChainInitialization(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
index = operation.output(outputIdx++);
}
@@ -85,6 +91,9 @@ public Output asOutput() {
return index;
}
+ @OpInputsMetadata(
+ outputsClass = KMC2ChainInitialization.class
+ )
public static class Inputs extends RawOpInputs {
/**
* Vector with squared distances to the closest previously sampled cluster center
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KmeansPlusPlusInitialization.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KmeansPlusPlusInitialization.java
index 65058cc1268..e2d7fc5f79a 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KmeansPlusPlusInitialization.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/cluster/KmeansPlusPlusInitialization.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.types.TFloat32;
import org.tensorflow.types.TInt64;
@@ -37,6 +39,10 @@
* distance from the nearest row selected thus far till num_to_sample rows have
* been sampled.
*/
+@OpMetadata(
+ opType = KmeansPlusPlusInitialization.OP_NAME,
+ inputsClass = KmeansPlusPlusInitialization.Inputs.class
+)
public final class KmeansPlusPlusInitialization extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -45,8 +51,8 @@ public final class KmeansPlusPlusInitialization extends RawOp implements Operand
private Output samples;
- private KmeansPlusPlusInitialization(Operation operation) {
- super(operation);
+ public KmeansPlusPlusInitialization(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
samples = operation.output(outputIdx++);
}
@@ -91,6 +97,9 @@ public Output asOutput() {
return samples;
}
+ @OpInputsMetadata(
+ outputsClass = KmeansPlusPlusInitialization.class
+ )
public static class Inputs extends RawOpInputs {
/**
* Matrix of shape (n, d). Rows are assumed to be input points.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/AllReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/AllReduce.java
index e338973185a..53e72874745 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/AllReduce.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/AllReduce.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -38,6 +40,10 @@
*
* @deprecated use {@link org.tensorflow.op.collective.Reduce} instead
*/
+@OpMetadata(
+ opType = AllReduce.OP_NAME,
+ inputsClass = AllReduce.Inputs.class
+)
@Deprecated
public final class AllReduce extends RawOp implements Operand {
/**
@@ -47,8 +53,8 @@ public final class AllReduce extends RawOp implements Operand
private Output data;
- private AllReduce(Operation operation) {
- super(operation);
+ public AllReduce(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -218,6 +224,9 @@ public Options timeoutSeconds(Float timeoutSeconds) {
}
}
+ @OpInputsMetadata(
+ outputsClass = AllReduce.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastRecv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastRecv.java
index 76cdc37a0c4..94dbc145772 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastRecv.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastRecv.java
@@ -29,6 +29,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -37,6 +39,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = BroadcastRecv.OP_NAME,
+ inputsClass = BroadcastRecv.Inputs.class
+)
public final class BroadcastRecv extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -45,8 +51,8 @@ public final class BroadcastRecv extends RawOp implements Opera
private Output data;
- private BroadcastRecv(Operation operation) {
- super(operation);
+ public BroadcastRecv(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -156,6 +162,9 @@ public Options timeoutSeconds(Float timeoutSeconds) {
}
}
+ @OpInputsMetadata(
+ outputsClass = BroadcastRecv.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The T attribute
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastSend.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastSend.java
index 707032af259..cc18c528581 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastSend.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/BroadcastSend.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -36,6 +38,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = BroadcastSend.OP_NAME,
+ inputsClass = BroadcastSend.Inputs.class
+)
public final class BroadcastSend extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -44,8 +50,8 @@ public final class BroadcastSend extends RawOp implements Opera
private Output data;
- private BroadcastSend(Operation operation) {
- super(operation);
+ public BroadcastSend(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -155,6 +161,9 @@ public Options timeoutSeconds(Float timeoutSeconds) {
}
}
+ @OpInputsMetadata(
+ outputsClass = BroadcastSend.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Gather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Gather.java
index b058a53afea..9140ca240ca 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Gather.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Gather.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -36,6 +38,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = Gather.OP_NAME,
+ inputsClass = Gather.Inputs.class
+)
public final class Gather extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -44,8 +50,8 @@ public final class Gather extends RawOp implements Operand
private Output data;
- private Gather(Operation operation) {
- super(operation);
+ public Gather(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -155,6 +161,9 @@ public Options timeoutSeconds(Float timeoutSeconds) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Gather.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/GatherV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/GatherV2.java
index 77e32799164..2ee7eda0773 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/GatherV2.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/GatherV2.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TInt32;
import org.tensorflow.types.family.TNumber;
@@ -38,6 +40,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = GatherV2.OP_NAME,
+ inputsClass = GatherV2.Inputs.class
+)
public final class GatherV2 extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -46,8 +52,8 @@ public final class GatherV2 extends RawOp implements Operand<
private Output data;
- private GatherV2(Operation operation) {
- super(operation);
+ public GatherV2(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -184,6 +190,9 @@ public Options NorderingToken(Long NorderingToken) {
}
}
+ @OpInputsMetadata(
+ outputsClass = GatherV2.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Reduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Reduce.java
index 3b86c960d1a..7d503474d02 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Reduce.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/Reduce.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TNumber;
@@ -36,6 +38,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = Reduce.OP_NAME,
+ inputsClass = Reduce.Inputs.class
+)
public final class Reduce extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -44,8 +50,8 @@ public final class Reduce extends RawOp implements Operand
private Output data;
- private Reduce(Operation operation) {
- super(operation);
+ public Reduce(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -215,6 +221,9 @@ public Options timeoutSeconds(Float timeoutSeconds) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Reduce.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/ReduceV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/ReduceV2.java
index da55ef12535..0c09c73f020 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/ReduceV2.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/ReduceV2.java
@@ -28,6 +28,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TInt32;
import org.tensorflow.types.family.TNumber;
@@ -38,6 +40,10 @@
*
* @param data type for {@code data} output
*/
+@OpMetadata(
+ opType = ReduceV2.OP_NAME,
+ inputsClass = ReduceV2.Inputs.class
+)
public final class ReduceV2 extends RawOp implements Operand {
/**
* The name of this op, as known by TensorFlow core engine
@@ -46,8 +52,8 @@ public final class ReduceV2 extends RawOp implements Operand<
private Output data;
- private ReduceV2(Operation operation) {
- super(operation);
+ public ReduceV2(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
data = operation.output(outputIdx++);
}
@@ -215,6 +221,9 @@ public Options maxSubdivsPerDevice(Long maxSubdivsPerDevice) {
}
}
+ @OpInputsMetadata(
+ outputsClass = ReduceV2.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* The input input
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Abort.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Abort.java
index 455cb214124..c51158b43dc 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Abort.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Abort.java
@@ -25,6 +25,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
/**
@@ -33,6 +35,10 @@
* otherwise it will exit with a SIGABORT signal.
* Returns nothing but an exception.
*/
+@OpMetadata(
+ opType = Abort.OP_NAME,
+ inputsClass = Abort.Inputs.class
+)
@Operator
public final class Abort extends RawOp {
/**
@@ -40,8 +46,8 @@ public final class Abort extends RawOp {
*/
public static final String OP_NAME = "Abort";
- private Abort(Operation operation) {
- super(operation);
+ public Abort(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -123,6 +129,9 @@ public Options exitWithoutError(Boolean exitWithoutError) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Abort.class
+ )
public static class Inputs extends RawOpInputs {
/**
* A string which is the message associated with the exception.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/All.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/All.java
index ca17e9a1ba0..81d49962fc1 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/All.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/All.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TBool;
@@ -39,6 +41,10 @@
* {@code axis}. If {@code keep_dims} is true, the reduced dimensions are
* retained with length 1.
*/
+@OpMetadata(
+ opType = All.OP_NAME,
+ inputsClass = All.Inputs.class
+)
@Operator
public final class All extends RawOp implements Operand {
/**
@@ -48,8 +54,8 @@ public final class All extends RawOp implements Operand {
private Output output;
- private All(Operation operation) {
- super(operation);
+ public All(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
output = operation.output(outputIdx++);
}
@@ -127,6 +133,9 @@ public Options keepDims(Boolean keepDims) {
}
}
+ @OpInputsMetadata(
+ outputsClass = All.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The tensor to reduce.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Any.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Any.java
index c853cf365ea..8ab3c606ad4 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Any.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Any.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TBool;
@@ -39,6 +41,10 @@
* {@code axis}. If {@code keep_dims} is true, the reduced dimensions are
* retained with length 1.
*/
+@OpMetadata(
+ opType = Any.OP_NAME,
+ inputsClass = Any.Inputs.class
+)
@Operator
public final class Any extends RawOp implements Operand {
/**
@@ -48,8 +54,8 @@ public final class Any extends RawOp implements Operand {
private Output output;
- private Any(Operation operation) {
- super(operation);
+ public Any(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
output = operation.output(outputIdx++);
}
@@ -127,6 +133,9 @@ public Options keepDims(Boolean keepDims) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Any.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The tensor to reduce.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssertThat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssertThat.java
index fdd9f9628c7..af5c1dd9f9e 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssertThat.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssertThat.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TBool;
@@ -36,6 +38,10 @@
* If {@code condition} evaluates to false, print the list of tensors in {@code data}.
* {@code summarize} determines how many entries of the tensors to print.
*/
+@OpMetadata(
+ opType = AssertThat.OP_NAME,
+ inputsClass = AssertThat.Inputs.class
+)
@Operator
public final class AssertThat extends RawOp {
/**
@@ -43,8 +49,8 @@ public final class AssertThat extends RawOp {
*/
public static final String OP_NAME = "Assert";
- private AssertThat(Operation operation) {
- super(operation);
+ public AssertThat(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -105,6 +111,9 @@ public Options summarize(Long summarize) {
}
}
+ @OpInputsMetadata(
+ outputsClass = AssertThat.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The condition to evaluate.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java
index 9af134e388e..ba1e413af71 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -38,6 +40,10 @@
*
* @param data type for {@code output_ref} output
*/
+@OpMetadata(
+ opType = Assign.OP_NAME,
+ inputsClass = Assign.Inputs.class
+)
@Operator
public final class Assign extends RawOp implements Operand {
/**
@@ -47,8 +53,8 @@ public final class Assign extends RawOp implements Operand {
private Output outputRef;
- private Assign(Operation operation) {
- super(operation);
+ public Assign(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
outputRef = operation.output(outputIdx++);
}
@@ -159,6 +165,9 @@ public Options useLocking(Boolean useLocking) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Assign.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* Should be from a {@code Variable} node. May be uninitialized.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java
index b863c0aed92..3a6df4bed6a 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -38,6 +40,10 @@
*
* @param data type for {@code output_ref} output
*/
+@OpMetadata(
+ opType = AssignAdd.OP_NAME,
+ inputsClass = AssignAdd.Inputs.class
+)
@Operator
public final class AssignAdd extends RawOp implements Operand {
/**
@@ -47,8 +53,8 @@ public final class AssignAdd extends RawOp implements Operand outputRef;
- private AssignAdd(Operation operation) {
- super(operation);
+ public AssignAdd(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
outputRef = operation.output(outputIdx++);
}
@@ -129,6 +135,9 @@ public Options useLocking(Boolean useLocking) {
}
}
+ @OpInputsMetadata(
+ outputsClass = AssignAdd.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* Should be from a {@code Variable} node.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAddVariableOp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAddVariableOp.java
index 618f646be84..e7dadaaec95 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAddVariableOp.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAddVariableOp.java
@@ -26,6 +26,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -35,6 +37,10 @@
* Any ReadVariableOp with a control dependency on this op is guaranteed to
* see the incremented value or a subsequent newer one.
*/
+@OpMetadata(
+ opType = AssignAddVariableOp.OP_NAME,
+ inputsClass = AssignAddVariableOp.Inputs.class
+)
@Operator
public final class AssignAddVariableOp extends RawOp {
/**
@@ -42,8 +48,8 @@ public final class AssignAddVariableOp extends RawOp {
*/
public static final String OP_NAME = "AssignAddVariableOp";
- private AssignAddVariableOp(Operation operation) {
- super(operation);
+ public AssignAddVariableOp(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -65,6 +71,9 @@ public static AssignAddVariableOp create(Scope scope, Operand extends TType> r
return new AssignAddVariableOp(opBuilder.build());
}
+ @OpInputsMetadata(
+ outputsClass = AssignAddVariableOp.class
+ )
public static class Inputs extends RawOpInputs {
/**
* handle to the resource in which to store the variable.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java
index a1d6c5bfb3a..8ae31dde667 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -38,6 +40,10 @@
*
* @param data type for {@code output_ref} output
*/
+@OpMetadata(
+ opType = AssignSub.OP_NAME,
+ inputsClass = AssignSub.Inputs.class
+)
@Operator
public final class AssignSub extends RawOp implements Operand {
/**
@@ -47,8 +53,8 @@ public final class AssignSub extends RawOp implements Operand outputRef;
- private AssignSub(Operation operation) {
- super(operation);
+ public AssignSub(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
outputRef = operation.output(outputIdx++);
}
@@ -129,6 +135,9 @@ public Options useLocking(Boolean useLocking) {
}
}
+ @OpInputsMetadata(
+ outputsClass = AssignSub.class
+ )
public static class Inputs extends RawOpInputs> {
/**
* Should be from a {@code Variable} node.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSubVariableOp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSubVariableOp.java
index ddd83dc834e..6de4c159ee1 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSubVariableOp.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSubVariableOp.java
@@ -26,6 +26,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -35,6 +37,10 @@
* Any ReadVariableOp with a control dependency on this op is guaranteed to
* see the decremented value or a subsequent newer one.
*/
+@OpMetadata(
+ opType = AssignSubVariableOp.OP_NAME,
+ inputsClass = AssignSubVariableOp.Inputs.class
+)
@Operator
public final class AssignSubVariableOp extends RawOp {
/**
@@ -42,8 +48,8 @@ public final class AssignSubVariableOp extends RawOp {
*/
public static final String OP_NAME = "AssignSubVariableOp";
- private AssignSubVariableOp(Operation operation) {
- super(operation);
+ public AssignSubVariableOp(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -65,6 +71,9 @@ public static AssignSubVariableOp create(Scope scope, Operand extends TType> r
return new AssignSubVariableOp(opBuilder.build());
}
+ @OpInputsMetadata(
+ outputsClass = AssignSubVariableOp.class
+ )
public static class Inputs extends RawOpInputs {
/**
* handle to the resource in which to store the variable.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignVariableOp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignVariableOp.java
index 98dd0682d0d..8a158a0f014 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignVariableOp.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignVariableOp.java
@@ -26,6 +26,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.family.TType;
@@ -35,6 +37,10 @@
* Any ReadVariableOp with a control dependency on this op is guaranteed to return
* this value or a subsequent newer value of the variable.
*/
+@OpMetadata(
+ opType = AssignVariableOp.OP_NAME,
+ inputsClass = AssignVariableOp.Inputs.class
+)
@Operator
public final class AssignVariableOp extends RawOp {
/**
@@ -42,8 +48,8 @@ public final class AssignVariableOp extends RawOp {
*/
public static final String OP_NAME = "AssignVariableOp";
- private AssignVariableOp(Operation operation) {
- super(operation);
+ public AssignVariableOp(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -65,6 +71,9 @@ public static AssignVariableOp create(Scope scope, Operand extends TType> reso
return new AssignVariableOp(opBuilder.build());
}
+ @OpInputsMetadata(
+ outputsClass = AssignVariableOp.class
+ )
public static class Inputs extends RawOpInputs {
/**
* handle to the resource in which to store the variable.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Barrier.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Barrier.java
index a722c116dd7..0bb0e71fc7a 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Barrier.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Barrier.java
@@ -30,6 +30,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TString;
@@ -45,6 +47,10 @@
* incomplete element has some undefined components in its value tuple,
* and may be updated using BarrierInsertMany.
*/
+@OpMetadata(
+ opType = Barrier.OP_NAME,
+ inputsClass = Barrier.Inputs.class
+)
@Operator
public final class Barrier extends RawOp implements Operand {
/**
@@ -54,8 +60,8 @@ public final class Barrier extends RawOp implements Operand {
private Output handle;
- private Barrier(Operation operation) {
- super(operation);
+ public Barrier(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
handle = operation.output(outputIdx++);
}
@@ -247,6 +253,9 @@ public Options sharedName(String sharedName) {
}
}
+ @OpInputsMetadata(
+ outputsClass = Barrier.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The type of each component in a value.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierClose.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierClose.java
index 509f714fb88..ba5c6c37b2b 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierClose.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierClose.java
@@ -26,6 +26,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TString;
@@ -38,6 +40,10 @@
* continue to succeed if sufficient completed elements remain in the barrier.
* Subsequent TakeMany operations that would block will fail immediately.
*/
+@OpMetadata(
+ opType = BarrierClose.OP_NAME,
+ inputsClass = BarrierClose.Inputs.class
+)
@Operator
public final class BarrierClose extends RawOp {
/**
@@ -45,8 +51,8 @@ public final class BarrierClose extends RawOp {
*/
public static final String OP_NAME = "BarrierClose";
- private BarrierClose(Operation operation) {
- super(operation);
+ public BarrierClose(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -108,6 +114,9 @@ public Options cancelPendingEnqueues(Boolean cancelPendingEnqueues) {
}
}
+ @OpInputsMetadata(
+ outputsClass = BarrierClose.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The handle to a barrier.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierIncompleteSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierIncompleteSize.java
index 1fe4a2be77e..88528da89eb 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierIncompleteSize.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierIncompleteSize.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TInt32;
import org.tensorflow.types.TString;
@@ -34,6 +36,10 @@
/**
* Computes the number of incomplete elements in the given barrier.
*/
+@OpMetadata(
+ opType = BarrierIncompleteSize.OP_NAME,
+ inputsClass = BarrierIncompleteSize.Inputs.class
+)
@Operator
public final class BarrierIncompleteSize extends RawOp implements Operand {
/**
@@ -43,8 +49,8 @@ public final class BarrierIncompleteSize extends RawOp implements Operand output;
- private BarrierIncompleteSize(Operation operation) {
- super(operation);
+ public BarrierIncompleteSize(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
output = operation.output(outputIdx++);
}
@@ -80,6 +86,9 @@ public Output asOutput() {
return output;
}
+ @OpInputsMetadata(
+ outputsClass = BarrierIncompleteSize.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The handle to a barrier.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierInsertMany.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierInsertMany.java
index b5d28bdc4da..c660005a872 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierInsertMany.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierInsertMany.java
@@ -26,6 +26,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TString;
@@ -38,6 +40,10 @@
* already has a value at component_index, this operation will fail with
* INVALID_ARGUMENT, and leave the barrier in an undefined state.
*/
+@OpMetadata(
+ opType = BarrierInsertMany.OP_NAME,
+ inputsClass = BarrierInsertMany.Inputs.class
+)
@Operator
public final class BarrierInsertMany extends RawOp {
/**
@@ -45,8 +51,8 @@ public final class BarrierInsertMany extends RawOp {
*/
public static final String OP_NAME = "BarrierInsertMany";
- private BarrierInsertMany(Operation operation) {
- super(operation);
+ public BarrierInsertMany(Operation operation) {
+ super(operation, OP_NAME);
}
/**
@@ -73,6 +79,9 @@ public static BarrierInsertMany create(Scope scope, Operand handle,
return new BarrierInsertMany(opBuilder.build());
}
+ @OpInputsMetadata(
+ outputsClass = BarrierInsertMany.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The handle to a barrier.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierReadySize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierReadySize.java
index f38db0fd368..ded885bc84d 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierReadySize.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierReadySize.java
@@ -27,6 +27,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.types.TInt32;
import org.tensorflow.types.TString;
@@ -34,6 +36,10 @@
/**
* Computes the number of complete elements in the given barrier.
*/
+@OpMetadata(
+ opType = BarrierReadySize.OP_NAME,
+ inputsClass = BarrierReadySize.Inputs.class
+)
@Operator
public final class BarrierReadySize extends RawOp implements Operand {
/**
@@ -43,8 +49,8 @@ public final class BarrierReadySize extends RawOp implements Operand {
private Output output;
- private BarrierReadySize(Operation operation) {
- super(operation);
+ public BarrierReadySize(Operation operation) {
+ super(operation, OP_NAME);
int outputIdx = 0;
output = operation.output(outputIdx++);
}
@@ -80,6 +86,9 @@ public Output asOutput() {
return output;
}
+ @OpInputsMetadata(
+ outputsClass = BarrierReadySize.class
+ )
public static class Inputs extends RawOpInputs {
/**
* The handle to a barrier.
diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierTakeMany.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierTakeMany.java
index baf77154ae3..18dacc2b92d 100644
--- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierTakeMany.java
+++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BarrierTakeMany.java
@@ -29,6 +29,8 @@
import org.tensorflow.op.RawOpInputs;
import org.tensorflow.op.Scope;
import org.tensorflow.op.annotation.Endpoint;
+import org.tensorflow.op.annotation.OpInputsMetadata;
+import org.tensorflow.op.annotation.OpMetadata;
import org.tensorflow.op.annotation.Operator;
import org.tensorflow.proto.framework.DataType;
import org.tensorflow.types.TInt32;
@@ -45,6 +47,10 @@
* information about the batch in which each element was originally inserted
* into the barrier.
*/
+@OpMetadata(
+ opType = BarrierTakeMany.OP_NAME,
+ inputsClass = BarrierTakeMany.Inputs.class
+)
@Operator
public final class BarrierTakeMany extends RawOp {
/**
@@ -59,8 +65,8 @@ public final class BarrierTakeMany extends RawOp {
private List