commit | 91726a89e3e967f7db74de99da5fdadf03638567 | [log] [tgz] |
---|---|---|
author | Vardhan Mudunuru <vardhan-cr@chromium.org> | Wed Jun 22 15:49:08 2016 |
committer | Vardhan Mudunuru <vardhan-cr@chromium.org> | Wed Jun 22 15:49:08 2016 |
tree | 15eea5e5556dcdad8d4f356360051714ec6825af | |
parent | 41379d0fd49012a628a7e0179cebde01bbd873a4 [diff] |
C bindings pt3: Type table definitions and barebones files to get generated code to compile. With this checked in, mojoms in //mojo/public/interfaces/bindings/tests will be generated and compiled, but not yet used. Changes include: - Definitions of some structs that are used to construct type tables. - Definitions for MojomString, MojomArray, MojomMap, MojomStruct. I don't plan to test the type tables directly, but instead test the things that use them (New(), ComputeSerializedSize(), Encode..(), Decode..(), Validate..()). R=viettrungluu@chromium.org Review URL: https://codereview.chromium.org/2072903002 . Cr-Mirrored-From: https://github.com/domokit/mojo Cr-Mirrored-Commit: c747b91aa53c244740e99d5b41994535cce2a658
The Mojo Public API is a binary stable API to the Mojo system.
It consists of support for a number of programming languages (with a directory for each support language), some “build” tools and build-time requirements, and interface definitions for Mojo services (specified using an IDL).
Note that there are various subdirectories named tests/. These contain tests of the code in the enclosing directory, and are not meant for use by Mojo applications.
The c/, cpp/, js/ subdirectories define the API for C, C++, and JavaScript, respectively.
The basic principle for these directories is that they consist of the source files that one needs at build/deployment/run time (as appropriate for the language), organized in a natural way for the particular language.
The interfaces/ subdirectory contains Mojo IDL (a.k.a. .mojom) descriptions of standard Mojo services.
The platform/ subdirectory contains any build-time requirements (e.g., static libraries) that may be needed to produce a Mojo application for certain platforms, such as a native shared library or as a NaCl binary.
The tools/ subdirectory contains tools that are useful/necessary at build/deployment time. These tools may be needed (as a practical necessity) to use the API in any given language, e.g., to generate bindings from Mojo IDL files.