diff options
| author | Kai Gunger <kgunger12@gmail.com> | 2025-12-01 01:13:09 -0500 |
|---|---|---|
| committer | Kai Gunger <kgunger12@gmail.com> | 2025-12-01 01:13:09 -0500 |
| commit | 82d11944094349e7c4795659dac45fea954223e2 (patch) | |
| tree | 4ab2091ee633d5d40bbc7383a4638dff81fccebc /tnslc/compile/function.tnsl | |
| parent | 46e23fa81f651961b2388c95e9569d2d39c3cffb (diff) | |
initial struct sizing
Diffstat (limited to 'tnslc/compile/function.tnsl')
| -rw-r--r-- | tnslc/compile/function.tnsl | 70 |
1 files changed, 40 insertions, 30 deletions
diff --git a/tnslc/compile/function.tnsl b/tnslc/compile/function.tnsl index 4f7615b..b0a1d00 100644 --- a/tnslc/compile/function.tnsl +++ b/tnslc/compile/function.tnsl @@ -1,42 +1,52 @@ struct Function { - ~uint8 name, - utils.Vector - inputs, - outputs, - ~parse.Node _up, + ~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) - ;/ + /; 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) - ;/ + /; _resolve_type (~Module parent) + ;/ - /; _compile (~Module parent, ~CompBuf cb) - ;/ + /; _compile (~Module parent, ~CompBuf cb) + ;/ - /; end - _delete(self.name) + /; _print (int idt) + _indent(idt) + _printf("{ Function : \0") + _printf(self.name) + _printf("\n\0") - ~Var v - /; loop (int i = 0; i < self.inputs.count) [i++] - v = self.inputs.get(i) - v`.end() - ;/ - self.inputs.end() + _indent(idt) + _printf("}\n\0") + ;/ - /; loop (int i = 0; i < self.outputs.count) [i++] - v = self.outputs.get(i) - v`.end() - ;/ - self.outputs.end() - ;/ + /; 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() + ;/ ;/ |