Rust: Add validation checks to decode In the Rust bindings we now perform validation of the input buffer on Mojom decode. The generated code checked in for tests has been updated as well in order to test validation in nearly all of the cases outlined in the "golden" files. The only missing tests to run are the integration tests which are to come in a future CL. [email protected] Review URL: https://codereview.chromium.org/2220183003 . Cr-Mirrored-From: https://github.com/domokit/mojo Cr-Mirrored-Commit: 4fbb11a4a65151bbc73545a9f2dbc4627db9d0a0
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.