RegexRunner.runstack Field

Definition

Utility stack

This API supports the product infrastructure and is not intended to be used directly from your code.

protected public: cli::array <int> ^ runstack;
protected internal int[]? runstack;
protected internal int[] runstack;
val mutable runstack : int[]
Protected Friend runstack As Integer() 

Field Value

Int32[]

Remarks

This stack is used to track text positions across different opcodes. For example, in /(a*b)+/, the parentheses result in a SetMark/CaptureMark pair. SetMark records the text position before we match a*b. Then CaptureMark uses that position to figure out where the capture starts. Opcodes which push onto this stack are always paired with other opcodes which will pop the value from it later. A successful match should mean that this stack is empty.

Applies to