blob: c178fbdca7a58cced1eebcf6f0a08aad625904d6 [file] [log] [blame]
{
"version": "0.0.1",
"name": "test.name",
"library_dependencies": [],
"bits_declarations": [],
"const_declarations": [],
"enum_declarations": [
{
"name": "test.name/ErrorEnun",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 14,
"column": 6
},
"type": "uint32",
"members": [
{
"name": "ERR_FOO",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 15,
"column": 5
},
"value": {
"kind": "literal",
"literal": {
"kind": "numeric",
"value": "1",
"expression": "1"
}
}
},
{
"name": "ERR_BAR",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 16,
"column": 5
},
"value": {
"kind": "literal",
"literal": {
"kind": "numeric",
"value": "2",
"expression": "2"
}
}
}
],
"strict": true
}
],
"interface_declarations": [
{
"name": "test.name/WithAndWithoutRequestResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 3,
"column": 10
},
"methods": [
{
"ordinal": 2162845427462832128,
"generated_ordinal": 257584335957785512,
"name": "NoRequestNoResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 4,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": false,
"is_composed": false
},
{
"ordinal": 5617919293065789440,
"generated_ordinal": 8101632395109729785,
"name": "NoRequestEmptyResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 5,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [],
"maybe_response_size": 16,
"maybe_response_alignment": 8,
"maybe_response_has_padding": false,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 461856421957337088,
"generated_ordinal": 5054636755429784136,
"name": "NoRequestWithResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 6,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "ret",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 6,
"column": 40
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 32,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 1856067372482297856,
"generated_ordinal": 5108499630221504549,
"name": "WithRequestNoResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 7,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "arg",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 7,
"column": 34
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_request_size": 32,
"maybe_request_alignment": 8,
"maybe_request_has_padding": true,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": false,
"is_composed": false
},
{
"ordinal": 8570976206923497472,
"generated_ordinal": 108302452954061159,
"name": "WithRequestEmptyResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 8,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "arg",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 8,
"column": 37
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_request_size": 32,
"maybe_request_alignment": 8,
"maybe_request_has_padding": true,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [],
"maybe_response_size": 16,
"maybe_response_alignment": 8,
"maybe_response_has_padding": false,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 1833854690685616128,
"generated_ordinal": 383797738148261568,
"name": "WithRequestWithResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 9,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "arg",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 9,
"column": 36
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_request_size": 32,
"maybe_request_alignment": 8,
"maybe_request_has_padding": true,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "ret",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 9,
"column": 52
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 32,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 7602031305773023232,
"generated_ordinal": 301337558307652787,
"name": "OnEmptyResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 10,
"column": 8
},
"has_request": false,
"has_response": true,
"maybe_response": [],
"maybe_response_size": 16,
"maybe_response_alignment": 8,
"maybe_response_has_padding": false,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 8811031017247735808,
"generated_ordinal": 3069035692499413769,
"name": "OnWithResponse",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 11,
"column": 8
},
"has_request": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "string",
"nullable": false
},
"name": "ret",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 11,
"column": 30
},
"size": 16,
"max_out_of_line": 4294967295,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 32,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
}
]
},
{
"name": "test.name/WithErrorSyntax",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 19,
"column": 10
},
"methods": [
{
"ordinal": 5709494219224121344,
"generated_ordinal": 6422511116044938191,
"name": "ResponseAsStruct",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 20,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ResponseAsStruct_Result",
"nullable": false
},
"name": "result",
"location": {
"filename": "generated",
"line": 18,
"column": 1
},
"size": 32,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 48,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 8887872801126481920,
"generated_ordinal": 2364249812017832126,
"name": "ErrorAsPrimitive",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 21,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ErrorAsPrimitive_Result",
"nullable": false
},
"name": "result",
"location": {
"filename": "generated",
"line": 25,
"column": 1
},
"size": 8,
"max_out_of_line": 0,
"alignment": 4,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 24,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 5518561143137763328,
"generated_ordinal": 4597390537870356095,
"name": "ErrorAsEnum",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 22,
"column": 5
},
"has_request": true,
"maybe_request": [],
"maybe_request_size": 16,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ErrorAsEnum_Result",
"nullable": false
},
"name": "result",
"location": {
"filename": "generated",
"line": 32,
"column": 1
},
"size": 8,
"max_out_of_line": 0,
"alignment": 4,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 24,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
}
]
},
{
"name": "test.name/ChannelProtocol",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 26,
"column": 10
},
"maybe_attributes": [
{
"name": "Transport",
"value": "Channel"
}
],
"methods": [
{
"ordinal": 6153768471000776704,
"generated_ordinal": 1954005452660588540,
"name": "MethodA",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 27,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "a",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 27,
"column": 19
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
},
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "b",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 27,
"column": 28
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 24,
"max_handles": 0
}
],
"maybe_request_size": 32,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": false,
"is_composed": false
},
{
"ordinal": 2051602944112984064,
"generated_ordinal": 2691096518916888736,
"name": "EventA",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 28,
"column": 8
},
"has_request": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "a",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 28,
"column": 21
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
},
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "b",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 28,
"column": 30
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 24,
"max_handles": 0
}
],
"maybe_response_size": 32,
"maybe_response_alignment": 8,
"maybe_response_has_padding": false,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 776401560220467200,
"generated_ordinal": 6751311874614576291,
"name": "MethodB",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 29,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "a",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 29,
"column": 19
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
},
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "b",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 29,
"column": 28
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 24,
"max_handles": 0
}
],
"maybe_request_size": 32,
"maybe_request_alignment": 8,
"maybe_request_has_padding": false,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "result",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 29,
"column": 41
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"maybe_response_size": 24,
"maybe_response_alignment": 8,
"maybe_response_has_padding": false,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
},
{
"ordinal": 5405131567951511552,
"generated_ordinal": 3948151641640179063,
"name": "MutateSocket",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 30,
"column": 5
},
"has_request": true,
"maybe_request": [
{
"type": {
"kind": "handle",
"subtype": "socket",
"nullable": false
},
"name": "a",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 30,
"column": 33
},
"size": 4,
"max_out_of_line": 0,
"alignment": 4,
"offset": 16,
"max_handles": 1
}
],
"maybe_request_size": 24,
"maybe_request_alignment": 8,
"maybe_request_has_padding": true,
"experimental_maybe_request_has_flexible_envelope": false,
"has_response": true,
"maybe_response": [
{
"type": {
"kind": "handle",
"subtype": "socket",
"nullable": false
},
"name": "b",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 30,
"column": 55
},
"size": 4,
"max_out_of_line": 0,
"alignment": 4,
"offset": 16,
"max_handles": 1
}
],
"maybe_response_size": 24,
"maybe_response_alignment": 8,
"maybe_response_has_padding": true,
"experimental_maybe_response_has_flexible_envelope": false,
"is_composed": false
}
]
}
],
"service_declarations": [],
"struct_declarations": [
{
"name": "test.name/WithErrorSyntax_ResponseAsStruct_Response",
"location": {
"filename": "generated",
"line": 14,
"column": 1
},
"anonymous": false,
"members": [
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "a",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 20,
"column": 34
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 0,
"max_handles": 0
},
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "b",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 20,
"column": 43
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 8,
"max_handles": 0
},
{
"type": {
"kind": "primitive",
"subtype": "int64"
},
"name": "c",
"location": {
"filename": "garnet/go/src/fidl/compiler/backend/typestest/protocols.test.fidl",
"line": 20,
"column": 52
},
"size": 8,
"max_out_of_line": 0,
"alignment": 8,
"offset": 16,
"max_handles": 0
}
],
"size": 24,
"max_out_of_line": 0,
"alignment": 8,
"max_handles": 0,
"has_padding": false
},
{
"name": "test.name/WithErrorSyntax_ErrorAsPrimitive_Response",
"location": {
"filename": "generated",
"line": 21,
"column": 1
},
"anonymous": false,
"members": [],
"size": 1,
"max_out_of_line": 0,
"alignment": 1,
"max_handles": 0,
"has_padding": false
},
{
"name": "test.name/WithErrorSyntax_ErrorAsEnum_Response",
"location": {
"filename": "generated",
"line": 28,
"column": 1
},
"anonymous": false,
"members": [],
"size": 1,
"max_out_of_line": 0,
"alignment": 1,
"max_handles": 0,
"has_padding": false
}
],
"table_declarations": [],
"union_declarations": [
{
"name": "test.name/WithErrorSyntax_ResponseAsStruct_Result",
"location": {
"filename": "generated",
"line": 15,
"column": 1
},
"maybe_attributes": [
{
"name": "Result",
"value": ""
}
],
"members": [
{
"name": "response",
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ResponseAsStruct_Response",
"nullable": false
},
"xunion_ordinal": 415743989,
"location": {
"filename": "generated",
"line": 16,
"column": 1
},
"size": 24,
"max_out_of_line": 0,
"alignment": 8,
"offset": 8
},
{
"name": "err",
"type": {
"kind": "primitive",
"subtype": "uint32"
},
"xunion_ordinal": 1728496323,
"location": {
"filename": "generated",
"line": 17,
"column": 1
},
"size": 4,
"max_out_of_line": 0,
"alignment": 4,
"offset": 8
}
],
"size": 32,
"max_out_of_line": 0,
"alignment": 8,
"max_handles": 0
},
{
"name": "test.name/WithErrorSyntax_ErrorAsPrimitive_Result",
"location": {
"filename": "generated",
"line": 22,
"column": 1
},
"maybe_attributes": [
{
"name": "Result",
"value": ""
}
],
"members": [
{
"name": "response",
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ErrorAsPrimitive_Response",
"nullable": false
},
"xunion_ordinal": 138512668,
"location": {
"filename": "generated",
"line": 23,
"column": 1
},
"size": 1,
"max_out_of_line": 0,
"alignment": 1,
"offset": 4
},
{
"name": "err",
"type": {
"kind": "primitive",
"subtype": "uint32"
},
"xunion_ordinal": 1043053528,
"location": {
"filename": "generated",
"line": 24,
"column": 1
},
"size": 4,
"max_out_of_line": 0,
"alignment": 4,
"offset": 4
}
],
"size": 8,
"max_out_of_line": 0,
"alignment": 4,
"max_handles": 0
},
{
"name": "test.name/WithErrorSyntax_ErrorAsEnum_Result",
"location": {
"filename": "generated",
"line": 29,
"column": 1
},
"maybe_attributes": [
{
"name": "Result",
"value": ""
}
],
"members": [
{
"name": "response",
"type": {
"kind": "identifier",
"identifier": "test.name/WithErrorSyntax_ErrorAsEnum_Response",
"nullable": false
},
"xunion_ordinal": 1951667349,
"location": {
"filename": "generated",
"line": 30,
"column": 1
},
"size": 1,
"max_out_of_line": 0,
"alignment": 1,
"offset": 4
},
{
"name": "err",
"type": {
"kind": "identifier",
"identifier": "test.name/ErrorEnun",
"nullable": false
},
"xunion_ordinal": 887935114,
"location": {
"filename": "generated",
"line": 31,
"column": 1
},
"size": 4,
"max_out_of_line": 0,
"alignment": 4,
"offset": 4
}
],
"size": 8,
"max_out_of_line": 0,
"alignment": 4,
"max_handles": 0
}
],
"xunion_declarations": [],
"type_alias_declarations": [],
"declaration_order": [
"test.name/WithErrorSyntax_ResponseAsStruct_Response",
"test.name/WithErrorSyntax_ResponseAsStruct_Result",
"test.name/WithErrorSyntax_ErrorAsPrimitive_Response",
"test.name/WithErrorSyntax_ErrorAsPrimitive_Result",
"test.name/WithErrorSyntax_ErrorAsEnum_Response",
"test.name/ChannelProtocol",
"test.name/WithAndWithoutRequestResponse",
"test.name/ErrorEnun",
"test.name/WithErrorSyntax_ErrorAsEnum_Result",
"test.name/WithErrorSyntax"
],
"declarations": {
"test.name/ErrorEnun": "enum",
"test.name/WithAndWithoutRequestResponse": "interface",
"test.name/WithErrorSyntax": "interface",
"test.name/ChannelProtocol": "interface",
"test.name/WithErrorSyntax_ResponseAsStruct_Response": "struct",
"test.name/WithErrorSyntax_ErrorAsPrimitive_Response": "struct",
"test.name/WithErrorSyntax_ErrorAsEnum_Response": "struct",
"test.name/WithErrorSyntax_ResponseAsStruct_Result": "union",
"test.name/WithErrorSyntax_ErrorAsPrimitive_Result": "union",
"test.name/WithErrorSyntax_ErrorAsEnum_Result": "union"
}
}