RegexRunner.runtrack Fält
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Backtracking stack
Detta API stöder produktinfrastrukturen och är inte avsett att användas direkt från koden.
protected public: cli::array <int> ^ runtrack;
protected internal int[]? runtrack;
protected internal int[] runtrack;
val mutable runtrack : int[]
Protected Friend runtrack As Integer()
Fältvärde
Kommentarer
Opcodes använder detta för att lagra data om vad de har matchat och var de ska backas till. Varje "ram" i stacken har formen [CodePosition Data1 Data2...], där CodePosition är positionen för den aktuella opcoden och alla datavärden är valfria. CodePosition kan vara negativt och dessa värden (kallas även "back2") används av BranchMark-serien med opcodes för att ange om de backar efter en lyckad eller misslyckad matchning. När vi backar dyker vi upp CodePosition från stacken, anger den aktuella instruktionspekaren till den kodpositionen och markerar opcode med en bakåtspårande flagga ("Bakåt"). Varje opcode vet sedan hur man hanterar sina egna data.