// automatically generated by the FlatBuffers compiler, do not modify

package MyGame.Example;

@SuppressWarnings("unused")
public final class TestEnum {
  private TestEnum() { }
  public static final byte A = 0;
  public static final byte B = 1;
  public static final byte C = 2;

  public static final String[] names = { "A", "B", "C", };

  public static String name(int e) { return names[e]; }
}

