コード例 #1
0
ファイル: FileAST.cs プロジェクト: supuy-ruby/ZCompileCore
        public override string ToCode()
        {
            StringBuilder buf = new StringBuilder();

            buf.AppendLine();
            if (ExtendsToken != null)
            {
                buf.AppendFormat("属于:{0};", ExtendsToken.GetText());
                buf.AppendLine();
            }
            if (NameToken != null)
            {
                buf.AppendFormat("名称:{0};", NameToken.GetText());
                buf.AppendLine();
            }

            /*
             * if (this.ImportList.Count > 0)
             * {
             *  foreach (var p in ImportList)
             *  {
             *      buf.Append(p.ToCode());
             *  }
             * }*/
            if (this.ImportPackage != null)
            {
                buf.Append(this.ImportPackage.ToCode());
            }

            if (this.SimpleUse != null)
            {
                buf.Append(this.SimpleUse.ToCode());
            }

            if (PropertyList.Count > 0)
            {
                foreach (var p in PropertyList)
                {
                    buf.Append(p.ToCode());
                }
            }
            foreach (var fn in MethodList)
            {
                buf.Append(fn.ToCode());
                buf.AppendLine();
            }

            foreach (var fn in AgreementList)
            {
                buf.Append(fn.ToCode());
                buf.AppendLine();
            }

            buf.AppendLine();
            return(buf.ToString());
        }
コード例 #2
0
ファイル: JadeParser.cs プロジェクト: mirannda/Jade4Net
        private Node parseExtends()
        {
            Token token = expect(typeof(ExtendsToken))
            ;
            ExtendsToken extendsToken = (ExtendsToken)token;
            String       templateName = extendsToken.getValue().Trim();

            JadeParser jadeParser = createParser(templateName);

            jadeParser.setBlocks(blocks);
            jadeParser.setContexts(contexts);
            extending = jadeParser;

            LiteralNode node = new LiteralNode();

            node.setValue("");
            return(node);
        }