Example #1
0
 internal override void ReservePath(RENode child)
 {
     //this child (mRefNode) must be called when generating the string (cannot repeat zero times)
     mReservedPath = child;
     base.ReservePath(child);
 }
Example #2
0
        private bool mSameValue; //Repeat same character?

        #endregion Fields

        #region Constructors

        //If this is not null then the node must repeat at least once
        internal RERepeatNode(RENode refNode, int minRepeat, int maxRepeat, bool sameValue)
        {
            //if this does not cover zero to infinity, then this node can be invalidated
            if (RECompiler.IsInvalidSection && (minRepeat > 0 || maxRepeat != -1))
            {
                RECompiler.InvalidableNodes.Add(this);
            }
            mMinRepeat = minRepeat;
            mMaxRepeat = maxRepeat;
            mSameValue = sameValue;
            mRefNode = refNode;
            mRefNode.Parent = this;
        }
Example #3
0
 //Required for GenerateInvalid.
 //Marks along the RegEx tree to ensure that 'child' is part of the generated string
 //child - The child node that must be part of the generated string
 internal virtual void ReservePath(RENode child)
 {
     if (Parent != null)
     {
         Parent.ReservePath(this);
     }
 }
Example #4
0
 //Chosen node is random if this is null
 internal override void ReservePath(RENode child)
 {
     //this child (in Children) must be called when generating the string
     mReservedPath = child;
     base.ReservePath(child);
 }
Example #5
0
 internal RESubExprNode(RENode subExpr)
 {
     mRefNode = subExpr;
     mRefNode.Parent = this;
 }