Exemple #1
0
        public IParseItem Visit(FuncDefItem target)
        {
            if (target == null)
            {
                throw new ArgumentNullException(nameof(target));
            }

            if (target.Local)
            {
                _tree.DefineLocal(new[] { target.Prefix as NameItem });
            }

            using (_tree.DefineFunc()) {
                _tree.DefineLocal(target.Arguments);
                target.Block.Accept(this);
            }
            target.FunctionInformation = _tree.EndFunc();

            return(target);
        }