internal bool HasToken(JSToken token) { for (TokenSetListItem item = this._tokenSet; item != null; item = item._next) { int index = 0; int length = item._tokens.Length; while (index < length) { if (item._tokens[index] == token) { return(true); } index++; } } return(false); }
internal void Remove(JSToken[] tokens) { TokenSetListItem item = this._tokenSet; TokenSetListItem item2 = null; while (item != null) { if (item._tokens == tokens) { if (item2 == null) { this._tokenSet = this._tokenSet._next; return; } item2._next = item._next; return; } item2 = item; item = item._next; } }
internal void Remove(JSToken[] tokens) { TokenSetListItem item = this._tokenSet; TokenSetListItem item2 = null; while (item != null) { if (item._tokens == tokens) { if (item2 == null) { this._tokenSet = this._tokenSet._next; return; } item2._next = item._next; return; } item2 = item; item = item._next; } }
internal TokenSetListItem(JSToken[] tokens, TokenSetListItem next){ _next = next; _tokens = tokens; }
internal void Remove(JSToken[] tokens){ TokenSetListItem curr = _tokenSet, prev = null; while (curr != null){ if (curr._tokens == tokens){ if (prev == null){ Debug.Assert(_tokenSet == curr); _tokenSet = _tokenSet._next; }else{ prev._next = curr._next; } return; } prev = curr; curr = curr._next; } Debug.Assert(false, "Token set not in no skip token"); }
internal void Add(JSToken[] tokens){ _tokenSet = new TokenSetListItem(tokens, _tokenSet); }
internal NoSkipTokenSet(){ _tokenSet = null; }
internal void Add(JSToken[] tokens) { this._tokenSet = new TokenSetListItem(tokens, this._tokenSet); }