Terraria v1.4.4.9
Terraria source code documentation
All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros

◆ Goto()

void System.Text.RegularExpressions.RegexCompiler.Goto ( int i)
inlineprivateinherited

Definition at line 870 of file RegexCompiler.cs.

871 {
872 if (i < _codepos)
873 {
874 Label l = DefineLabel();
876 Ldc(_trackcount * 4);
877 Ble(l);
879 Ldc(_trackcount * 3);
880 BgtFar(_labels[i]);
881 MarkLabel(l);
883 Ldc(AddGoto(i));
884 DoPush();
886 }
887 else
888 {
889 BrFar(_labels[i]);
890 }
891 }

References System.Text.RegularExpressions.RegexCompiler._backtrack, System.Text.RegularExpressions.RegexCompiler._codepos, System.Text.RegularExpressions.RegexCompiler._labels, System.Text.RegularExpressions.RegexCompiler._runstackposLocal, System.Text.RegularExpressions.RegexCompiler._runtrackposLocal, System.Text.RegularExpressions.RegexCompiler._trackcount, System.Text.RegularExpressions.RegexCompiler.AddGoto(), System.Text.RegularExpressions.RegexCompiler.BgtFar(), System.Reflection.Emit.Ble, System.Text.RegularExpressions.RegexCompiler.BrFar(), System.Text.RegularExpressions.RegexCompiler.DefineLabel(), System.Text.RegularExpressions.RegexCompiler.DoPush(), System.Text.RegularExpressions.i, System.Text.RegularExpressions.RegexCompiler.Ldc(), System.Reflection.Emit.Ldloc, System.Text.RegularExpressions.RegexCompiler.MarkLabel(), and System.Text.RegularExpressions.RegexCompiler.ReadyPushTrack().

Referenced by System.Text.RegularExpressions.RegexCompiler.GenerateOneCode().