struct Function { ~uint8 name, utils.Vector inputs, outputs, ~parse.Node _up, } /; method Function /; init (~parse.Node n) self.name = utils.strcpy(n`.data) self._up = n Var v self.inputs.init(len v) self.outputs.init(len v) ;/ /; _resolve_type (~Module parent) ;/ /; _compile (~Module parent, ~CompBuf cb) ;/ /; end _delete(self.name) ~Var v /; loop (int i = 0; i < self.inputs.count) [i++] v = self.inputs.get(i) v`.end() ;/ self.inputs.end() /; loop (int i = 0; i < self.outputs.count) [i++] v = self.outputs.get(i) v`.end() ;/ self.outputs.end() ;/ ;/