Пример #1
0
        public void CompileClass(SyntaxTreeNode node)
        {
            string name = node[0].ValueString;

            var context = new ResolutionContext(builder.Namespaces);

            foreach (var gen in node[3].Children)
            {
                context.AddGenericParameter(gen.ValueString);
            }

            var type = new InterType(name, context, TypeNameFromNode(node[1][0]), context.GenericParameters.Count);

            foreach (var n in node[2].Children)
            {
                type.AddFlag(n.ValueString);
            }
            builder.AddType(type);
            CompileNode(node[4]);
            builder.CurrentType = null;
        }