diff options
| author | levlam <levlam@telegram.org> | 2019-11-22 18:48:03 +0300 |
|---|---|---|
| committer | levlam <levlam@telegram.org> | 2019-11-22 18:48:03 +0300 |
| commit | 7842b174b202ed243a71582ca069a472a5cc7b64 (patch) | |
| tree | 2f693a3b00b991b5d2229cbf552177e0615e5ed4 /tdtl | |
| parent | 003c93f0d6be7b7d208d95f790ae15007c2387e2 (diff) | |
Do not generate empty constructor for functions.
GitOrigin-RevId: 9a83f40616728dd814ca4ce5424b955b17ca4dfe
Diffstat (limited to 'tdtl')
| -rw-r--r-- | tdtl/td/tl/tl_generate.cpp | 4 | ||||
| -rw-r--r-- | tdtl/td/tl/tl_writer.cpp | 2 | ||||
| -rw-r--r-- | tdtl/td/tl/tl_writer.h | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/tdtl/td/tl/tl_generate.cpp b/tdtl/td/tl/tl_generate.cpp index 8660b64ec..a417d0e84 100644 --- a/tdtl/td/tl/tl_generate.cpp +++ b/tdtl/td/tl/tl_generate.cpp @@ -253,7 +253,7 @@ static void write_function(tl_outputer &out, const tl_combinator *t, const std:: std::vector<var_description> vars(t->var_count); out.append(w.gen_function_vars(t, vars)); - if (w.is_default_constructor_generated(t)) { + if (w.is_default_constructor_generated(t, true)) { write_class_constructor(out, t, class_name, true, w); } if (required_args) { @@ -306,7 +306,7 @@ static void write_constructor(tl_outputer &out, const tl_combinator *t, const st int required_args = gen_field_definitions(out, t, class_name, w); out.append(w.gen_flags_definitions(t)); - if (w.is_default_constructor_generated(t)) { + if (w.is_default_constructor_generated(t, false)) { write_class_constructor(out, t, class_name, true, w); } if (required_args) { diff --git a/tdtl/td/tl/tl_writer.cpp b/tdtl/td/tl/tl_writer.cpp index 0a9131ecb..839967478 100644 --- a/tdtl/td/tl/tl_writer.cpp +++ b/tdtl/td/tl/tl_writer.cpp @@ -135,7 +135,7 @@ bool TL_writer::is_documentation_generated() const { return false; } -bool TL_writer::is_default_constructor_generated(const tl_combinator *t) const { +bool TL_writer::is_default_constructor_generated(const tl_combinator *t, bool is_function) const { return true; } diff --git a/tdtl/td/tl/tl_writer.h b/tdtl/td/tl/tl_writer.h index f1c7ebebc..e71c53d3c 100644 --- a/tdtl/td/tl/tl_writer.h +++ b/tdtl/td/tl/tl_writer.h @@ -56,7 +56,7 @@ class TL_writer { virtual bool is_type_bare(const tl_type *t) const = 0; virtual bool is_combinator_supported(const tl_combinator *constructor) const; virtual bool is_documentation_generated() const; - virtual bool is_default_constructor_generated(const tl_combinator *t) const; + virtual bool is_default_constructor_generated(const tl_combinator *t, bool is_function) const; virtual int get_parser_type(const tl_combinator *t, const std::string &parser_name) const; virtual int get_storer_type(const tl_combinator *t, const std::string &storer_name) const; |
