summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorYoon Kyong Sik <sam1287@gmail.com>2020-08-19 01:44:43 +0900
committerGitHub <noreply@github.com>2020-08-18 09:44:43 -0700
commite86d5b8e97c09d4eac46dbbb8541f180d05f1da2 (patch)
treed896a41cd0e13f12dba26c0325d1999230496ae0 /include
parentdb2aa9b4eca0edc94aea9e2059c21ce8786fc762 (diff)
downloadflatbuffers-e86d5b8e97c09d4eac46dbbb8541f180d05f1da2.tar.gz
flatbuffers-e86d5b8e97c09d4eac46dbbb8541f180d05f1da2.tar.bz2
flatbuffers-e86d5b8e97c09d4eac46dbbb8541f180d05f1da2.zip
[Kotlin] Attach JvmStatic annotation to each method in companion object (#6052)
* Attach JvmStatic annotation to each method of companion object Kotlin does not have static accessor so companion object used instead of static. It's so natural. But when use kotlin companion object methods on java it is very inconvenient. ```java GeneratedClassByFlatBuffer.Companion.someMethod() ``` If use @JvmStatic annotation it can be shorten like below. ```java GeneratedClassByFlatBuffer.someMethod() ``` * Formatting by Idea Google C++ style * Add comments - Commit for missing cla Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Add comments - Commit for missing cla Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Reset code formatting except modified lines Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Pass missing flag to validateVersion method Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Add annotations to missing method in companion object * addVector * createVector * endVector * tableCreator And also I tried add compiler option for generate annotation who don't like this operation. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Modify unmatched option name in compiler usage Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Add missing operation for finishSizePrefixed and finishStructBuffer method. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Add compiled example with --kotlin-gen-jvmstatic option. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Fix Compiler.md Change option name from --gen-jvm-static-annotation to --kotlin-gen-jvmstatic Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Use IDLOptions reference instead of bool parameter. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Change option name - kotlin_gen_jvmstatic to gen_jvmstatic Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Use IDLOptions reference instead of bool parameter and missing process @JvmStatic as suffix. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Add code generation for --gen-jvmstatic option Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Miss typo directory for including. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Miss typo variable suffix for including. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Fix camel case to snake case. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Rollback generate code for gen_jvmstatic option. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Delete generated test files. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * add missing new line at end of file. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> * Remove generated test file by command line. Signed-off-by: Yoon KyongSik <sam1287@gmail.com> Co-authored-by: sam <sam@jennifersoft.com>
Diffstat (limited to 'include')
-rw-r--r--include/flatbuffers/idl.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/flatbuffers/idl.h b/include/flatbuffers/idl.h
index 70a2b787..847c976a 100644
--- a/include/flatbuffers/idl.h
+++ b/include/flatbuffers/idl.h
@@ -509,6 +509,7 @@ struct ServiceDef : public Definition {
// Container of options that may apply to any of the source/text generators.
struct IDLOptions {
+ bool gen_jvmstatic;
// Use flexbuffers instead for binary and text generation
bool use_flexbuffers;
bool strict_json;
@@ -604,7 +605,8 @@ struct IDLOptions {
bool set_empty_vectors_to_null;
IDLOptions()
- : use_flexbuffers(false),
+ : gen_jvmstatic(false),
+ use_flexbuffers(false),
strict_json(false),
skip_js_exports(false),
use_goog_js_export_format(false),