FIDL 2.0: Compiler Specification

This document is a specification of the Fuchsia Interface Definition Language (FIDL) v2.0 compiler which generates code for programs to use and implement interfaces described by the FIDL language. Once ratified, it will be transformed into a Markdown file stored in the source tree.

See FIDL 2.0: Overview for more information about FIDL's overall purpose, goals, and requirements, as well as links to related documents.

TODO: define the compiler's inputs and outputs

TODO: should the compiler support emitting the FIDL declarations in a machine-readable intermediate representation? eg. to support documentation or API checking tools