@Override
	public int hashCode() {
		return this.kind.ordinal() * 37 + (this.startpos + this.endpos) * 37 +
				(this.kind.hasPayload() ? this.data.hashCode() : 0);
	}
Constructor for use when there is extra data to associate with a token. For example the text for an identifier
token.
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/job/dsl/Token.java