123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- package me.hammerle.code;
- public enum Syntax
- {
- UNKNOWN(" ", 0),
- OPEN_BRACKET("(", 1, (byte) 2),
- CLOSE_BRACKET(")", 1, (byte) 1),
- OPEN_SBRACKET("[", 1, (byte) 4),
- CLOSE_SBRACKET("]", 1, (byte) 3),
- INC("++", 2, (byte) 5, (byte) 1),
- POST_INC("p+", 2, (byte) 5, (byte) 1),
- DEC("--", 2, (byte) 5, (byte) 1),
- POST_DEC("p-", 2, (byte) 5, (byte) 1),
- NOT("!", 2, (byte) 0, (byte) 1),
- BIT_NOT("~", 2, (byte) 0, (byte) 1),
- MUL("*", 3),
- DIV("/", 3),
- MOD("%", 3),
- ADD("+", 4),
- SUB("-", 4),
- LEFT_SHIFT("<<", 5),
- RIGHT_SHIFT(">>", 5),
- SMALLER("<", 6),
- SMALLER_EQUAL("<=", 6),
- GREATER(">", 6),
- GREATER_EQUAL(">=", 6),
- EQUAL("==", 7),
- NOT_EQUAL("!=", 7),
- BIT_AND("&", 8),
- BIT_XOR("^", 9),
- BIT_OR("|", 10),
- AND("&&", 11),
- OR("||", 12),
- SET("=", 14),
- SET_ADD("+=", 14),
- SET_SUB("-=", 14),
- SET_MUL("*=", 14),
- SET_DIV("/=", 14),
- SET_MOD("%=", 14),
- SET_SHIFT_LEFT("<<=", 14),
- SET_SHIFT_RIGHT(">>=", 14),
- SET_BIT_AND("&=", 14),
- SET_BIT_XOR("^=", 14),
- SET_BIT_OR("|=", 14),
- COMMA(",", 15, (byte) -1);
- private int weight;
- private String function;
- private byte status;
- private byte pars;
- Syntax(String function, int weight, byte status, byte pars)
- {
- this.weight = weight;
- this.function = function;
- this.status = status;
- this.pars = pars;
- }
-
- Syntax(String function, int weight, byte status)
- {
- this(function, weight, status, (byte) 2);
- }
- Syntax(String function, int weight)
- {
- this(function, weight, (byte) 0);
- }
- public String getFunction()
- {
- return function;
- }
- public int getWeight()
- {
- return weight;
- }
- public boolean shouldStartLayer()
- {
- return status == 1 || status == 3;
- }
- public boolean shouldEndLayer()
- {
- return status == 2 || status == 4;
- }
-
- public boolean isFunction()
- {
- return status >= 0;
- }
- public boolean isArray()
- {
- return status == 3 || status == 4;
- }
-
- public boolean isIncOrDec()
- {
- return status == 5;
- }
-
- public byte getParameters()
- {
- return pars;
- }
- }
|