| OLD | NEW |
| 1 function {{struct.name}}() { | 1 function {{struct.name}}() { |
| 2 {%- for packed_field in struct.packed.packed_fields %} | 2 {%- for packed_field in struct.packed.packed_fields %} |
| 3 this.{{packed_field.field.name}} = {{packed_field.field|default_value}}; | 3 this.{{packed_field.field.name}} = {{packed_field.field|default_value}}; |
| 4 {%- endfor %} | 4 {%- endfor %} |
| 5 } | 5 } |
| 6 | 6 |
| 7 {#--- Enums #} |
| 8 {%- from "enum_definition.tmpl" import enum_def -%} |
| 9 {% for enum in struct.enums %} |
| 10 {{ enum_def("%s.%s"|format(struct.name, enum.name), enum)}} |
| 11 {% endfor %} |
| 12 |
| 13 {#--- Encoding and decoding #} |
| 7 {{struct.name}}.encodedSize = codec.kStructHeaderSize + {{struct.packed|payloa
d_size}}; | 14 {{struct.name}}.encodedSize = codec.kStructHeaderSize + {{struct.packed|payloa
d_size}}; |
| 8 | 15 |
| 9 {{struct.name}}.decode = function(decoder) { | 16 {{struct.name}}.decode = function(decoder) { |
| 10 var packed; | 17 var packed; |
| 11 var val = new {{struct.name}}(); | 18 var val = new {{struct.name}}(); |
| 12 var numberOfBytes = decoder.read32(); | 19 var numberOfBytes = decoder.read32(); |
| 13 var numberOfFields = decoder.read32(); | 20 var numberOfFields = decoder.read32(); |
| 14 {%- for byte in struct.bytes %} | 21 {%- for byte in struct.bytes %} |
| 15 {%- if byte.packed_fields|length > 1 %} | 22 {%- if byte.packed_fields|length > 1 %} |
| 16 packed = decoder.read8(); | 23 packed = decoder.read8(); |
| (...skipping 27 matching lines...) Expand all Loading... |
| 44 {%- else %} | 51 {%- else %} |
| 45 {%- for packed_field in byte.packed_fields %} | 52 {%- for packed_field in byte.packed_fields %} |
| 46 encoder.{{packed_field.field.kind|encode_snippet}}val.{{packed_field.field.n
ame}}); | 53 encoder.{{packed_field.field.kind|encode_snippet}}val.{{packed_field.field.n
ame}}); |
| 47 {%- endfor %} | 54 {%- endfor %} |
| 48 {%- endif %} | 55 {%- endif %} |
| 49 {%- if byte.is_padding %} | 56 {%- if byte.is_padding %} |
| 50 encoder.skip(1); | 57 encoder.skip(1); |
| 51 {%- endif %} | 58 {%- endif %} |
| 52 {%- endfor %} | 59 {%- endfor %} |
| 53 }; | 60 }; |
| OLD | NEW |