Пример #1
0
        public override object VisitReg([NotNull] MipsAsmParser.RegContext context)
        {
            RegisterType reg = RegisterType.zero;
            string       ret = context.children[0].GetText();

            switch (ret)
            {
            case "$zero":
                reg = RegisterType.zero;
                break;

            case "$sp":
                reg = RegisterType.sp;
                break;

            case "$fp":
                reg = RegisterType.fp;
                break;

            case "$ra":
                reg = RegisterType.ra;
                break;

            default:
                reg = (RegisterType)Enum.Parse(typeof(RegisterType), ret.Substring(1));
                break;
            }
            return(reg);
        }
Пример #2
0
 /// <summary>
 /// Enter a parse tree produced by <see cref="MipsAsmParser.reg"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void EnterReg([NotNull] MipsAsmParser.RegContext context)
 {
 }
Пример #3
0
 /// <summary>
 /// Visit a parse tree produced by <see cref="MipsAsmParser.reg"/>.
 /// <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 VisitReg([NotNull] MipsAsmParser.RegContext context)
 {
     return(VisitChildren(context));
 }