aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/go/graph.go
diff options
context:
space:
mode:
authorGravatar Dandelion Man? <dandelion@google.com>2017-12-15 17:12:41 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2017-12-15 17:16:29 -0800
commitd55f532867a3670d66460c5ee3b774519542adc1 (patch)
tree7de4d85bcd61e93401459276b4d371ab0be23c1f /tensorflow/go/graph.go
parent32d5048ae96116202f2aa0fa739ef37514ee8a54 (diff)
Merge changes from github.
PiperOrigin-RevId: 179258973
Diffstat (limited to 'tensorflow/go/graph.go')
-rw-r--r--tensorflow/go/graph.go17
1 files changed, 16 insertions, 1 deletions
diff --git a/tensorflow/go/graph.go b/tensorflow/go/graph.go
index f200a8e00a..fc087d9d99 100644
--- a/tensorflow/go/graph.go
+++ b/tensorflow/go/graph.go
@@ -28,7 +28,8 @@ package tensorflow
// int num_shapes) {
// const int64_t** dims =
// (const int64_t**)malloc(sizeof(const int64_t*) * num_shapes);
-// for (int i = 0; i < num_shapes; i++) {
+// int i = 0;
+// for (i = 0; i < num_shapes; i++) {
// dims[i] = flat_dims;
// if (num_dims[i] > 0) {
// // flat_dims will be NULL iff num_shapes is 0 or all elements in num_dims are <= 0.
@@ -132,6 +133,20 @@ func (g *Graph) Operation(name string) *Operation {
return &Operation{cop, g}
}
+// Operations returns a list of all operations in the graph
+func (g *Graph) Operations() []Operation {
+ var pos C.size_t = 0
+ ops := []Operation{}
+ for {
+ cop := C.TF_GraphNextOperation(g.c, &pos)
+ if cop == nil {
+ break
+ }
+ ops = append(ops, Operation{cop, g})
+ }
+ return ops
+}
+
// OpSpec is the specification of an Operation to be added to a Graph
// (using Graph.AddOperation).
type OpSpec struct {