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); }
/// <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) { }
/// <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)); }