public override Result VisitInst([NotNull] testParser.InstContext context) { var ident = context.IDENT(); var inst = ident.GetText().ToUpper(); if (!InstTable.Table.ContainsKey(inst)) { return(Result.CreateError("未知の命令後")); } var suffix = context.SUFFIX(); if (suffix != null) { //サフィックス } return(Result.CreateSuccess(new Instruction { Name = inst, Attribute = InstTable.Table[inst] })); }
/// <summary> /// Exit a parse tree produced by <see cref="testParser.inst"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitInst([NotNull] testParser.InstContext context) { }
/// <summary> /// Visit a parse tree produced by <see cref="testParser.inst"/>. /// <para> /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/> /// on <paramref name="context"/>. /// </para> /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public virtual Result VisitInst([NotNull] testParser.InstContext context) { return(VisitChildren(context)); }