Ejemplo n.º 1
0
        public override void GenerateCode(StringBuilder sb, int tabsOffset)
        {
            if (Attributes != null)
            {
                foreach (var item in Attributes)
                {
                    item.GenerateCode(sb, tabsOffset);
                    sb.AppendLine();
                }
            }

            ReturnType.AppendDeclaration(sb, tabsOffset);
            if (ReturnTypeInfo.Elements > 0)
            {
                sb.AppendFormat("[{0}]", ReturnTypeInfo.Elements);
            }
            sb.Append(" " + Name);
            sb.Append("(");

            if (Parameters != null && Parameters.Length > 0)
            {
                Parameters[0].GenerateCode(sb, 0);
                foreach (var item in Parameters.Skip(1))
                {
                    sb.Append(", ");
                    item.GenerateCode(sb, 0);
                }
            }
            sb.Append(")");
            if (ReturnSemantic != null)
            {
                sb.Append(":" + ReturnSemantic);
            }
            sb.AppendLine();
            Body.GenerateCode(sb, tabsOffset);
        }