| OLD | NEW |
| (Empty) |
| 1 | |
| 2 class {{struct.name}} { | |
| 3 public: | |
| 4 typedef internal::{{struct.name}}_Data Data_; | |
| 5 | |
| 6 {#--- Constants #} | |
| 7 {%- for constant in struct.constants %} | |
| 8 static const {{constant.kind|cpp_pod_type}} {{constant.name}}; | |
| 9 {%- endfor %} | |
| 10 {#--- Enums #} | |
| 11 {%- for enum in struct.enums -%} | |
| 12 {% macro enum_def() %}{% include "enum_declaration.tmpl" %}{% endmacro %} | |
| 13 {{enum_def()|indent(2)}} | |
| 14 {%- endfor %} | |
| 15 static {{struct.name}}Ptr New(); | |
| 16 | |
| 17 template <typename U> | |
| 18 static {{struct.name}}Ptr From(const U& u) { | |
| 19 return mojo::TypeConverter<{{struct.name}}Ptr, U>::Convert(u); | |
| 20 } | |
| 21 | |
| 22 template <typename U> | |
| 23 U To() const { | |
| 24 return mojo::TypeConverter<U, {{struct.name}}>::Convert(*this); | |
| 25 } | |
| 26 | |
| 27 {{struct.name}}(); | |
| 28 ~{{struct.name}}(); | |
| 29 | |
| 30 {% if struct|is_cloneable_kind %} | |
| 31 {{struct.name}}Ptr Clone() const; | |
| 32 {%- endif %} | |
| 33 bool Equals(const {{struct.name}}& other) const; | |
| 34 | |
| 35 {#--- Getters #} | |
| 36 {% for field in struct.fields %} | |
| 37 {%- set type = field.kind|cpp_wrapper_type %} | |
| 38 {%- set name = field.name %} | |
| 39 {{type}} {{name}}; | |
| 40 {%- endfor %} | |
| 41 }; | |
| OLD | NEW |