| { |
| "version": "0.0.1", |
| "name": "fidl.test.handles", |
| "library_dependencies": [], |
| "bits_declarations": [], |
| "const_declarations": [], |
| "enum_declarations": [], |
| "interface_declarations": [ |
| { |
| "name": "fidl.test.handles/SomeProtocol", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 3, |
| "column": 10 |
| }, |
| "methods": [] |
| } |
| ], |
| "service_declarations": [], |
| "struct_declarations": [ |
| { |
| "name": "fidl.test.handles/Handles", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 11, |
| "column": 8 |
| }, |
| "anonymous": false, |
| "members": [ |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 0, |
| "optional_rights": 4294967295, |
| "nullable": false |
| }, |
| "name": "plain_handle", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 12, |
| "column": 12 |
| }, |
| "field_shape_v1": { |
| "offset": 0, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 0, |
| "optional_rights": 4294967295, |
| "nullable": false |
| }, |
| "name": "plain_handle_explicit", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 13, |
| "column": 18 |
| }, |
| "field_shape_v1": { |
| "offset": 4, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 1, |
| "optional_rights": 0, |
| "nullable": false |
| }, |
| "name": "plain_handle_only_required_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 14, |
| "column": 21 |
| }, |
| "field_shape_v1": { |
| "offset": 8, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 1, |
| "optional_rights": 2, |
| "nullable": false |
| }, |
| "name": "plain_handle_required_and_optional_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 15, |
| "column": 24 |
| }, |
| "field_shape_v1": { |
| "offset": 12, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "vmo", |
| "required_rights": 0, |
| "optional_rights": 4294967295, |
| "nullable": false |
| }, |
| "name": "no_rights_for_migration", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 17, |
| "column": 17 |
| }, |
| "field_shape_v1": { |
| "offset": 16, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "vmo", |
| "required_rights": 1, |
| "optional_rights": 0, |
| "nullable": false |
| }, |
| "name": "only_required_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 18, |
| "column": 20 |
| }, |
| "field_shape_v1": { |
| "offset": 20, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "vmo", |
| "required_rights": 1, |
| "optional_rights": 2, |
| "nullable": false |
| }, |
| "name": "required_and_optional_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 19, |
| "column": 23 |
| }, |
| "field_shape_v1": { |
| "offset": 24, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 0, |
| "optional_rights": 4294967295, |
| "nullable": false |
| }, |
| "experimental_maybe_from_type_alias": { |
| "name": "fidl.test.handles/aliased_handle_plain", |
| "args": [], |
| "nullable": false |
| }, |
| "name": "aliased_plain", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 21, |
| "column": 26 |
| }, |
| "field_shape_v1": { |
| "offset": 28, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 0, |
| "optional_rights": 4294967295, |
| "nullable": false |
| }, |
| "experimental_maybe_from_type_alias": { |
| "name": "fidl.test.handles/aliased_handle_subtype", |
| "args": [], |
| "nullable": false |
| }, |
| "name": "aliased_subtype", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 22, |
| "column": 28 |
| }, |
| "field_shape_v1": { |
| "offset": 32, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 1, |
| "optional_rights": 0, |
| "nullable": false |
| }, |
| "experimental_maybe_from_type_alias": { |
| "name": "fidl.test.handles/aliased_handle_only_required_rights", |
| "args": [], |
| "nullable": false |
| }, |
| "name": "aliased_only_required_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 23, |
| "column": 41 |
| }, |
| "field_shape_v1": { |
| "offset": 36, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "handle", |
| "subtype": "handle", |
| "required_rights": 1, |
| "optional_rights": 2, |
| "nullable": false |
| }, |
| "experimental_maybe_from_type_alias": { |
| "name": "fidl.test.handles/aliased_handle_required_and_optional_rights", |
| "args": [], |
| "nullable": false |
| }, |
| "name": "aliased_required_and_optional_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 24, |
| "column": 49 |
| }, |
| "field_shape_v1": { |
| "offset": 40, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "identifier", |
| "identifier": "fidl.test.handles/SomeProtocol", |
| "nullable": false |
| }, |
| "name": "some_protocol", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 26, |
| "column": 18 |
| }, |
| "field_shape_v1": { |
| "offset": 44, |
| "padding": 0 |
| } |
| }, |
| { |
| "type": { |
| "kind": "request", |
| "subtype": "fidl.test.handles/SomeProtocol", |
| "nullable": false |
| }, |
| "name": "request_some_protocol", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 27, |
| "column": 27 |
| }, |
| "field_shape_v1": { |
| "offset": 48, |
| "padding": 0 |
| } |
| } |
| ], |
| "type_shape_v1": { |
| "inline_size": 52, |
| "alignment": 4, |
| "depth": 0, |
| "max_handles": 13, |
| "max_out_of_line": 0, |
| "has_padding": false, |
| "has_flexible_envelope": false, |
| "contains_union": false |
| } |
| } |
| ], |
| "table_declarations": [], |
| "union_declarations": [], |
| "xunion_declarations": [], |
| "type_alias_declarations": [ |
| { |
| "name": "fidl.test.handles/aliased_handle_plain", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 6, |
| "column": 7 |
| }, |
| "partial_type_ctor": { |
| "name": "handle", |
| "args": [], |
| "nullable": false |
| } |
| }, |
| { |
| "name": "fidl.test.handles/aliased_handle_subtype", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 7, |
| "column": 7 |
| }, |
| "partial_type_ctor": { |
| "name": "handle", |
| "args": [], |
| "nullable": false, |
| "maybe_handle_subtype": "vmo" |
| } |
| }, |
| { |
| "name": "fidl.test.handles/aliased_handle_only_required_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 8, |
| "column": 7 |
| }, |
| "partial_type_ctor": { |
| "name": "handle", |
| "args": [], |
| "nullable": false, |
| "maybe_handle_subtype": "vmo", |
| "required_rights": { |
| "kind": "literal", |
| "value": "1", |
| "expression": "1", |
| "literal": { |
| "kind": "numeric", |
| "value": "1", |
| "expression": "1" |
| } |
| } |
| } |
| }, |
| { |
| "name": "fidl.test.handles/aliased_handle_required_and_optional_rights", |
| "location": { |
| "filename": "handles.test.fidl", |
| "line": 9, |
| "column": 7 |
| }, |
| "partial_type_ctor": { |
| "name": "handle", |
| "args": [], |
| "nullable": false, |
| "maybe_handle_subtype": "vmo", |
| "required_rights": { |
| "kind": "literal", |
| "value": "1", |
| "expression": "1", |
| "literal": { |
| "kind": "numeric", |
| "value": "1", |
| "expression": "1" |
| } |
| }, |
| "optional_rights": { |
| "kind": "literal", |
| "value": "2", |
| "expression": "2", |
| "literal": { |
| "kind": "numeric", |
| "value": "2", |
| "expression": "2" |
| } |
| } |
| } |
| } |
| ], |
| "declaration_order": [ |
| "fidl.test.handles/aliased_handle_subtype", |
| "fidl.test.handles/aliased_handle_required_and_optional_rights", |
| "fidl.test.handles/aliased_handle_plain", |
| "fidl.test.handles/aliased_handle_only_required_rights", |
| "fidl.test.handles/Handles", |
| "fidl.test.handles/SomeProtocol" |
| ], |
| "declarations": { |
| "fidl.test.handles/SomeProtocol": "interface", |
| "fidl.test.handles/Handles": "struct", |
| "fidl.test.handles/aliased_handle_plain": "type_alias", |
| "fidl.test.handles/aliased_handle_subtype": "type_alias", |
| "fidl.test.handles/aliased_handle_only_required_rights": "type_alias", |
| "fidl.test.handles/aliased_handle_required_and_optional_rights": "type_alias" |
| } |
| } |