当前位置: 首页>>代码示例>>C#>>正文


C# ErrorList.ErrorParse方法代码示例

本文整理汇总了C#中ErrorList.ErrorParse方法的典型用法代码示例。如果您正苦于以下问题:C# ErrorList.ErrorParse方法的具体用法?C# ErrorList.ErrorParse怎么用?C# ErrorList.ErrorParse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ErrorList的用法示例。


在下文中一共展示了ErrorList.ErrorParse方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GenerateSet

 public ErrorList GenerateSet(Context ctx, Action<Context> exp)
 {
     Ctx = ctx;
     Errors.Clear();
     var errors = new ErrorList();
     if (T.Type == 0)
     {
         var error = (CommonErrorNode) T;
         errors.ErrorParse(error);
         return Errors;
     }
     var child = (CommonTree) T.Children[0];
     switch (child.Type)
     {
         case 0:
         {
             var error = (CommonErrorNode) child;
             errors.ErrorParse(error);
             break;
         }
         case TemplateLexer.MStart:
         case TemplateLexer.EStart:
         {
             EmitSet(child, exp);
             //pop off voidtype from final function in chain
             break;
         }
         default:
         {
             break;
         }
     }
     return Errors;
 }
开发者ID:jeffpanici75,项目名称:FastTemplate,代码行数:34,代码来源:Statement.cs

示例2: EmitArgList

        public ErrorList EmitArgList(CommonTree fnArgs, Action<Context> last)
        {
            var errors = new ErrorList();
            if (fnArgs.Type == 0)
            {
                EmitNullRef();
                errors.ErrorParse((CommonErrorNode) fnArgs);
                return errors;
            }
            var args = fnArgs.Children;
            var size = args.Count + 1;
            var local = Sink.DeclareLocal(typeof (ITemplateType[]));
            Sink.FastEmitConstInt(size);
            Sink.Emit(OpCodes.Newarr, typeof (ITemplateType));
            Sink.FastEmitStoreLocal(local.LocalIndex);
            for (var i = 0; i < args.Count; i++)
            {
                Sink.FastEmitLoadLocal(local.LocalIndex);
                Sink.FastEmitConstInt(i);
                var exp = new Expression(args[i]);
                errors.AddRange(exp.Generate(this));
                Sink.Emit(OpCodes.Stelem_Ref);
            }
            Sink.FastEmitLoadLocal(local.LocalIndex);
            Sink.FastEmitConstInt(fnArgs.Children.Count);
            last(this);
            Sink.Emit(OpCodes.Stelem_Ref);

            Sink.FastEmitLoadLocal(local.LocalIndex);
            return errors;
        }
开发者ID:jeffpanici75,项目名称:FastTemplate,代码行数:31,代码来源:Context.cs

示例3: OnGenerate

 protected override void OnGenerate()
 {
     var errors = new ErrorList();
     if (T.Type == 0)
     {
         var error = (CommonErrorNode) T;
         errors.ErrorParse(error);
         Ctx.EmitNullRef();
         return;
     }
     var child = (CommonTree) T.Children[0];
     switch (child.Type)
     {
         case 0:
         {
             var error = (CommonErrorNode) child;
             errors.ErrorParse(error);
             Ctx.EmitNullRef();
             break;
         }
         case TemplateLexer.MStart:
         case TemplateLexer.EStart:
         {
             EmitStatement(child);
             if (child.Type == TemplateLexer.MStart)
             {
                 EmitDoMacro();
             }
             break;
         }
         default:
         {
             break;
         }
     }
 }
开发者ID:jeffpanici75,项目名称:FastTemplate,代码行数:36,代码来源:Statement.cs


注:本文中的ErrorList.ErrorParse方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。