public override bool Equals(object obj) { bool result; if (null == obj) { result = false; } else if (obj is LexToken) { LexToken lexToken = (LexToken)obj; result = (lexToken.getToken().Equals(this.getToken()) && lexToken.getType() == this.getType()); } else { string value = obj.ToString(); result = this.getToken().Equals(value); } return(result); }