func (self *BuildRule) setLocals(ns types.Namespace) { ns.Assign("TARGETS", self.targets) ns.Assign("SOURCES", self.sources) // these are really only meaningful for rules with one target or // one source... but such rules are pretty common, so these are // frequently handy ns.Assign("TARGET", self.targets.Nodes()[0]) ns.Assign("SOURCE", self.sources.Nodes()[0]) }