Skip to content

Method: equalsTemplate(Token)

1: package de.fhdw.wtf.common.token.keywords;
2:
3: import de.fhdw.wtf.common.token.Position;
4: import de.fhdw.wtf.common.token.Token;
5:
6: /**
7: * Represents the "operation"- or "function"-modifier as a token in WTF.
8: */
9: public final class OperationToken extends KeywordToken {
10:         
11:         /**
12:          * generated.
13:          */
14:         private static final long serialVersionUID = -8890085544585927480L;
15:         
16:         /**
17:          * Defines constant for hashCodeTemplate().
18:          */
19:         private static final int HASHCODE_TEMPLATE_CONSTANT = 9728344;
20:         
21:         /**
22:          * Defines constant "function" for {@link OperationToken}.
23:          */
24:         private static final String TEXTUAL_REPRESENTATION = "function";
25:         
26:         /**
27:          * Private constructor for {@link OperationToken}. Use create(...)-Factory instead!
28:          *
29:          * @param position
30:          * represents the start position of the {@link KeywordToken} <function> in the original input.
31:          */
32:         private OperationToken(final Position position) {
33:                 super(position);
34:         }
35:         
36:         /**
37:          * Factory method for {@link OperationToken}.
38:          *
39:          * @param position
40:          * represents the start position of this {@link KeywordToken} in the original input.
41:          * @return a new instance of this {@link KeywordToken}.
42:          */
43:         public static OperationToken create(final Position position) {
44:                 return new OperationToken(position);
45:         }
46:         
47:         @Override
48:         public boolean isOperationToken() {
49:                 return true;
50:         }
51:         
52:         @Override
53:         public int getLength() {
54:                 return OperationToken.TEXTUAL_REPRESENTATION.length();
55:         }
56:         
57:         @Override
58:         protected boolean equalsTemplate(final Token t) {
59:                 return t.isOperationToken();
60:         }
61:         
62:         @Override
63:         public String stringRepresentation() {
64:                 return TEXTUAL_REPRESENTATION;
65:         }
66:         
67:         @Override
68:         protected int hashCodeTemplate() {
69:                 return HASHCODE_TEMPLATE_CONSTANT;
70:         }
71:         
72: }