private bool IsTagEnd() { if (this.pos.Count == 1) { if (this.scanner.IsEnd()) { return(true); } char value = this.scanner.Read(); if (this.pos.Peek().Length == 2) { if (value == '}') { return(true); } } else if (value != '.') { if (((value == '(' || ParserHelpers.IsWord(value)) && ParserHelpers.IsWord(this.scanner.Read(-1))) || ((value == '[' || ParserHelpers.IsWord(value)) && ParserHelpers.IsWord(this.scanner.Read(-1))) || (ParserHelpers.IsWord(value) && (this.scanner.Read(-1) == '.'))) { return(false); } return(true); } } return(false); }