Add exvar.FuncInt for exporting indirect integer variables.
R=r
APPROVED=r
DELTA=21 (21 added, 0 deleted, 0 changed)
OCL=29320
CL=29338
diff --git a/src/lib/exvar/exvar.go b/src/lib/exvar/exvar.go
index fea5683..6473f7a 100644
--- a/src/lib/exvar/exvar.go
+++ b/src/lib/exvar/exvar.go
@@ -128,6 +128,14 @@
v.s = value;
}
+// IntFunc wraps a func() int64 to create a value that satisfies the Var interface.
+// The function will be called each time the Var is evaluated.
+type IntFunc func() int64;
+
+func (v IntFunc) String() string {
+ return strconv.Itoa64(v())
+}
+
// All published variables.
var vars map[string] Var = make(map[string] Var);