Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(474)

Side by Side Diff: mojo/public/tools/bindings/generators/dart_templates/struct_definition.tmpl

Issue 795593004: Update mojo sdk to rev cc531b32182099a5a034a99daff35ed5d38a61c8 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: More workarounds for MSVC Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 {#--- Begin #} 1 {#--- Begin #}
2 2
3 class {{struct.name}} { 3 class {{struct.name}} {
4 {#--- Enums #} 4 {#--- Enums #}
5 {%- from "enum_definition.tmpl" import enum_def %} 5 {%- from "enum_definition.tmpl" import enum_def %}
6 {% for enum in struct.enums %} 6 {% for enum in struct.enums %}
7 {{enum_def(" static ", enum)}} 7 {{enum_def(" static ", enum)}}
8 {%- endfor %} 8 {%- endfor %}
9 9
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 decoder.skip(1); 46 decoder.skip(1);
47 {%- endif %} 47 {%- endif %}
48 {%- endfor %} 48 {%- endfor %}
49 return val; 49 return val;
50 } 50 }
51 51
52 static void encode(bindings.MojoEncoder encoder, {{struct.name}} val) { 52 static void encode(bindings.MojoEncoder encoder, {{struct.name}} val) {
53 var packed; 53 var packed;
54 encoder.writeUint32({{struct.name}}.encodedSize); 54 encoder.writeUint32({{struct.name}}.encodedSize);
55 encoder.writeUint32({{struct.packed.packed_fields|length}}); 55 encoder.writeUint32({{struct.packed.packed_fields|length}});
56
57 {%- for byte in struct.bytes %} 56 {%- for byte in struct.bytes %}
58 {%- if byte.packed_fields|length > 1 %} 57 {%- if byte.packed_fields|length > 1 %}
59 packed = 0; 58 packed = 0;
60 {%- for packed_field in byte.packed_fields %} 59 {%- for packed_field in byte.packed_fields %}
61 packed |= (val.{{packed_field.field.name}} & 1) << {{packed_field.bit}}; 60 packed |= (val.{{packed_field.field.name}} & 1) << {{packed_field.bit}};
62 {%- endfor %} 61 {%- endfor %}
63 encoder.writeUint8(packed); 62 encoder.writeUint8(packed);
64 {%- else %} 63 {%- else %}
65 {%- for packed_field in byte.packed_fields %} 64 {%- for packed_field in byte.packed_fields %}
66 encoder.{{packed_field.field.kind|encode_snippet}}val.{{packed_field.field.n ame}}); 65 encoder.{{packed_field.field.kind|encode_snippet}}val.{{packed_field.field.n ame}});
67 {%- endfor %} 66 {%- endfor %}
68 {%- endif %} 67 {%- endif %}
69 {%- if byte.is_padding %} 68 {%- if byte.is_padding %}
70 encoder.skip(1); 69 encoder.skip(1);
71 {%- endif %} 70 {%- endif %}
72 {%- endfor %} 71 {%- endfor %}
73 } 72 }
74 } 73 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698