Beispiel #1
0
        public override object VisitFnc_header([NotNull] KCCParser.Fnc_headerContext context)
        {
            foreach (var v in context.var_decl())
            {
                var type = v.symbol_id()[0].GetText();
                var id   = v.symbol_id()[1].GetText();

                _controller.DeclareHeaderVariable(id, type);

                if (v.expression() != null)
                {
                    VisitExpression(v.expression());
                    _controller.AddInstruction(InstOp.Set, id, null, null, OpModifier.FromLastTemp);
                }
            }

            return(null);
        }