commit | 07c511399f18c944055372762bdbf259f9586e97 | [log] [tgz] |
---|---|---|
author | Felix Zhu <fcz@google.com> | Wed Jan 22 14:35:13 2020 +0000 |
committer | CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> | Wed Jan 22 14:35:13 2020 +0000 |
tree | a31e59764878d51169812980e46cf8743a0d4472 | |
parent | b4fed69bf368b7d12b4c76f9068af440399f5622 [diff] |
[fidl][go] Use struct typeshapes for request/responses This updates fidlgen to use the payload structs instead of request/response type info from thee IR. In fidlgen, this means anonymous structs are compiled but stored separately from the rest of the structs. They get their correct name set in compileMethod, and then afterwards are appended to Root.Structs. Also, previously .Request/Response would be nil when a method does not have a request/response, and would have empty .Members when there was no payload. Now, .Request/Response is nil when there is no payload, and .HasRequest/Response is used to indicate whether there is a request/respones or not (if .Request/Response are not nil, it must have at least one member). This makes it clear that empty payloads are a different case from an empty struct payload. Bug: 7704 Test: fx run-test go_fidl_tests Change-Id: I395ce017b993dbac0c7306d2557ca05a5fa987bd
Pink + Purple == Fuchsia (a new operating system)
Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.
Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.
See Getting Started.
See fuchsia.dev.