diff --git a/src/idl_gen_general.cpp b/src/idl_gen_general.cpp index 3245c586f..b8e987468 100644 --- a/src/idl_gen_general.cpp +++ b/src/idl_gen_general.cpp @@ -56,6 +56,7 @@ struct LanguageParameters { std::string optional_suffix; std::string includes; std::string class_annotation; + std::string generated_type_annotation; CommentConfig comment_config; }; @@ -87,7 +88,8 @@ const LanguageParameters &GetLangParams(IDLOptions::Language lang) { "", "import java.nio.*;\nimport java.lang.*;\nimport " "java.util.*;\nimport com.google.flatbuffers.*;\n", - "\n@SuppressWarnings(\"unused\")\n", + "\n@SuppressWarnings(\"unused\")", + "\n@javax.annotation.Generated(value=\"flatc\")\n", { "/**", " *", @@ -120,6 +122,7 @@ const LanguageParameters &GetLangParams(IDLOptions::Language lang) { "?", "using global::System;\nusing global::FlatBuffers;\n\n", "", + "", { nullptr, "///", @@ -218,6 +221,7 @@ class GeneralGenerator : public BaseGenerator { } code += lang_.class_annotation; } + code += lang_.generated_type_annotation; code += classcode; if (!namespace_name.empty()) code += lang_.namespace_end; auto filename = NamespaceDir(ns) + defname + lang_.file_extension; diff --git a/tests/MyGame/Example/Ability.java b/tests/MyGame/Example/Ability.java index 5e1c90e03..60fd5414e 100644 --- a/tests/MyGame/Example/Ability.java +++ b/tests/MyGame/Example/Ability.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Ability extends Struct { public void __init(int _i, ByteBuffer _bb) { bb_pos = _i; bb = _bb; } public Ability __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; } diff --git a/tests/MyGame/Example/Any.java b/tests/MyGame/Example/Any.java index 6e4fb76ca..d8603d409 100644 --- a/tests/MyGame/Example/Any.java +++ b/tests/MyGame/Example/Any.java @@ -2,6 +2,8 @@ package MyGame.Example; + +@javax.annotation.Generated(value="flatc") public final class Any { private Any() { } public static final byte NONE = 0; diff --git a/tests/MyGame/Example/Color.java b/tests/MyGame/Example/Color.java index 7c113b72f..bd323b5cf 100644 --- a/tests/MyGame/Example/Color.java +++ b/tests/MyGame/Example/Color.java @@ -2,6 +2,8 @@ package MyGame.Example; + +@javax.annotation.Generated(value="flatc") public final class Color { private Color() { } public static final byte Red = 1; diff --git a/tests/MyGame/Example/Monster.java b/tests/MyGame/Example/Monster.java index 8a5bb0e7e..d42a995ef 100644 --- a/tests/MyGame/Example/Monster.java +++ b/tests/MyGame/Example/Monster.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") /** * an example documentation comment: monster object */ diff --git a/tests/MyGame/Example/Referrable.java b/tests/MyGame/Example/Referrable.java index 9398597e9..ecf024604 100644 --- a/tests/MyGame/Example/Referrable.java +++ b/tests/MyGame/Example/Referrable.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Referrable extends Table { public static Referrable getRootAsReferrable(ByteBuffer _bb) { return getRootAsReferrable(_bb, new Referrable()); } public static Referrable getRootAsReferrable(ByteBuffer _bb, Referrable obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/MyGame/Example/Stat.java b/tests/MyGame/Example/Stat.java index 73e2bc8f6..947c9e366 100644 --- a/tests/MyGame/Example/Stat.java +++ b/tests/MyGame/Example/Stat.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Stat extends Table { public static Stat getRootAsStat(ByteBuffer _bb) { return getRootAsStat(_bb, new Stat()); } public static Stat getRootAsStat(ByteBuffer _bb, Stat obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/MyGame/Example/Test.java b/tests/MyGame/Example/Test.java index f584c4639..d66f7b933 100644 --- a/tests/MyGame/Example/Test.java +++ b/tests/MyGame/Example/Test.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Test extends Struct { public void __init(int _i, ByteBuffer _bb) { bb_pos = _i; bb = _bb; } public Test __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; } diff --git a/tests/MyGame/Example/TestSimpleTableWithEnum.java b/tests/MyGame/Example/TestSimpleTableWithEnum.java index ded3be496..dbfebffdd 100644 --- a/tests/MyGame/Example/TestSimpleTableWithEnum.java +++ b/tests/MyGame/Example/TestSimpleTableWithEnum.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") final class TestSimpleTableWithEnum extends Table { public static TestSimpleTableWithEnum getRootAsTestSimpleTableWithEnum(ByteBuffer _bb) { return getRootAsTestSimpleTableWithEnum(_bb, new TestSimpleTableWithEnum()); } public static TestSimpleTableWithEnum getRootAsTestSimpleTableWithEnum(ByteBuffer _bb, TestSimpleTableWithEnum obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/MyGame/Example/TypeAliases.java b/tests/MyGame/Example/TypeAliases.java index f74a3231f..fdad096dc 100644 --- a/tests/MyGame/Example/TypeAliases.java +++ b/tests/MyGame/Example/TypeAliases.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class TypeAliases extends Table { public static TypeAliases getRootAsTypeAliases(ByteBuffer _bb) { return getRootAsTypeAliases(_bb, new TypeAliases()); } public static TypeAliases getRootAsTypeAliases(ByteBuffer _bb, TypeAliases obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/MyGame/Example/Vec3.java b/tests/MyGame/Example/Vec3.java index 6cb820b72..118622f8f 100644 --- a/tests/MyGame/Example/Vec3.java +++ b/tests/MyGame/Example/Vec3.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Vec3 extends Struct { public void __init(int _i, ByteBuffer _bb) { bb_pos = _i; bb = _bb; } public Vec3 __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; } diff --git a/tests/MyGame/Example2/Monster.java b/tests/MyGame/Example2/Monster.java index 69a156241..832686c35 100644 --- a/tests/MyGame/Example2/Monster.java +++ b/tests/MyGame/Example2/Monster.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class Monster extends Table { public static Monster getRootAsMonster(ByteBuffer _bb) { return getRootAsMonster(_bb, new Monster()); } public static Monster getRootAsMonster(ByteBuffer _bb, Monster obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/MyGame/InParentNamespace.java b/tests/MyGame/InParentNamespace.java index 5ac27c205..90b5aaf0f 100644 --- a/tests/MyGame/InParentNamespace.java +++ b/tests/MyGame/InParentNamespace.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class InParentNamespace extends Table { public static InParentNamespace getRootAsInParentNamespace(ByteBuffer _bb) { return getRootAsInParentNamespace(_bb, new InParentNamespace()); } public static InParentNamespace getRootAsInParentNamespace(ByteBuffer _bb, InParentNamespace obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/monster_test.bfbs b/tests/monster_test.bfbs index 16c1648a7..a6b87d4a4 100644 Binary files a/tests/monster_test.bfbs and b/tests/monster_test.bfbs differ diff --git a/tests/namespace_test/NamespaceA/NamespaceB/EnumInNestedNS.java b/tests/namespace_test/NamespaceA/NamespaceB/EnumInNestedNS.java index e23cecc06..5553d1919 100644 --- a/tests/namespace_test/NamespaceA/NamespaceB/EnumInNestedNS.java +++ b/tests/namespace_test/NamespaceA/NamespaceB/EnumInNestedNS.java @@ -2,6 +2,8 @@ package NamespaceA.NamespaceB; + +@javax.annotation.Generated(value="flatc") public final class EnumInNestedNS { private EnumInNestedNS() { } public static final byte A = 0; diff --git a/tests/namespace_test/NamespaceA/NamespaceB/StructInNestedNS.java b/tests/namespace_test/NamespaceA/NamespaceB/StructInNestedNS.java index 42d47c13b..c781c059d 100644 --- a/tests/namespace_test/NamespaceA/NamespaceB/StructInNestedNS.java +++ b/tests/namespace_test/NamespaceA/NamespaceB/StructInNestedNS.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class StructInNestedNS extends Struct { public void __init(int _i, ByteBuffer _bb) { bb_pos = _i; bb = _bb; } public StructInNestedNS __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; } diff --git a/tests/namespace_test/NamespaceA/NamespaceB/TableInNestedNS.java b/tests/namespace_test/NamespaceA/NamespaceB/TableInNestedNS.java index 415fa6937..e5e703cc6 100644 --- a/tests/namespace_test/NamespaceA/NamespaceB/TableInNestedNS.java +++ b/tests/namespace_test/NamespaceA/NamespaceB/TableInNestedNS.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class TableInNestedNS extends Table { public static TableInNestedNS getRootAsTableInNestedNS(ByteBuffer _bb) { return getRootAsTableInNestedNS(_bb, new TableInNestedNS()); } public static TableInNestedNS getRootAsTableInNestedNS(ByteBuffer _bb, TableInNestedNS obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/namespace_test/NamespaceA/SecondTableInA.java b/tests/namespace_test/NamespaceA/SecondTableInA.java index 7c56b882f..6738c1464 100644 --- a/tests/namespace_test/NamespaceA/SecondTableInA.java +++ b/tests/namespace_test/NamespaceA/SecondTableInA.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class SecondTableInA extends Table { public static SecondTableInA getRootAsSecondTableInA(ByteBuffer _bb) { return getRootAsSecondTableInA(_bb, new SecondTableInA()); } public static SecondTableInA getRootAsSecondTableInA(ByteBuffer _bb, SecondTableInA obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/namespace_test/NamespaceA/TableInFirstNS.java b/tests/namespace_test/NamespaceA/TableInFirstNS.java index b03c4623b..0ef230ee8 100644 --- a/tests/namespace_test/NamespaceA/TableInFirstNS.java +++ b/tests/namespace_test/NamespaceA/TableInFirstNS.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class TableInFirstNS extends Table { public static TableInFirstNS getRootAsTableInFirstNS(ByteBuffer _bb) { return getRootAsTableInFirstNS(_bb, new TableInFirstNS()); } public static TableInFirstNS getRootAsTableInFirstNS(ByteBuffer _bb, TableInFirstNS obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } diff --git a/tests/namespace_test/NamespaceC/TableInC.java b/tests/namespace_test/NamespaceC/TableInC.java index 56d495450..01a2231bb 100644 --- a/tests/namespace_test/NamespaceC/TableInC.java +++ b/tests/namespace_test/NamespaceC/TableInC.java @@ -8,6 +8,7 @@ import java.util.*; import com.google.flatbuffers.*; @SuppressWarnings("unused") +@javax.annotation.Generated(value="flatc") public final class TableInC extends Table { public static TableInC getRootAsTableInC(ByteBuffer _bb) { return getRootAsTableInC(_bb, new TableInC()); } public static TableInC getRootAsTableInC(ByteBuffer _bb, TableInC obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); }