static { Precedence[] values = Precedence.values(); for (Precedence precedence : values) { int ordinal = precedence.ordinal(); precedence.higher = ordinal > 0 ? values[ordinal - 1] : null; } }