diff options
Diffstat (limited to 'third_party/rust/wasmparser-0.48.2/src/lib.rs')
-rw-r--r-- | third_party/rust/wasmparser-0.48.2/src/lib.rs | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/third_party/rust/wasmparser-0.48.2/src/lib.rs b/third_party/rust/wasmparser-0.48.2/src/lib.rs new file mode 100644 index 0000000000..e581b932da --- /dev/null +++ b/third_party/rust/wasmparser-0.48.2/src/lib.rs @@ -0,0 +1,131 @@ +/* Copyright 2017 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +//! A simple event-driven library for parsing WebAssembly binary files +//! (or streams). +//! +//! The parser library reports events as they happend and only stores +//! parsing information for a brief period of time, making it very fast +//! and memory-efficient. The event-driven model, however, has some drawbacks. +//! If you need random access to the entire WebAssembly data-structure, +//! this is not the right library for you. You could however, build such +//! a data-structure using this library. + +pub use crate::binary_reader::BinaryReader; +pub use crate::binary_reader::Range; +use crate::binary_reader::SectionHeader; + +pub use crate::parser::ElemSectionEntryTable; +pub use crate::parser::LocalName; +pub use crate::parser::NameEntry; +pub use crate::parser::Parser; +pub use crate::parser::ParserInput; +pub use crate::parser::ParserState; +pub use crate::parser::RelocEntry; +pub use crate::parser::WasmDecoder; + +pub use crate::primitives::BinaryReaderError; +pub use crate::primitives::BrTable; +pub use crate::primitives::CustomSectionKind; +pub use crate::primitives::ExternalKind; +pub use crate::primitives::FuncType; +pub use crate::primitives::GlobalType; +pub use crate::primitives::Ieee32; +pub use crate::primitives::Ieee64; +pub use crate::primitives::ImportSectionEntryType; +pub use crate::primitives::LinkingType; +pub use crate::primitives::MemoryImmediate; +pub use crate::primitives::MemoryType; +pub use crate::primitives::NameType; +pub use crate::primitives::Naming; +pub use crate::primitives::Operator; +pub use crate::primitives::RelocType; +pub use crate::primitives::ResizableLimits; +pub use crate::primitives::Result; +pub use crate::primitives::SectionCode; +pub use crate::primitives::TableType; +pub use crate::primitives::Type; +pub use crate::primitives::TypeOrFuncType; +pub use crate::primitives::V128; + +pub use crate::validator::validate; +pub use crate::validator::validate_function_body; +pub use crate::validator::ValidatingOperatorParser; +pub use crate::validator::ValidatingParser; +pub use crate::validator::ValidatingParserConfig; + +pub use crate::module_resources::WasmFuncType; +pub use crate::module_resources::WasmGlobalType; +pub use crate::module_resources::WasmMemoryType; +pub use crate::module_resources::WasmModuleResources; +pub use crate::module_resources::WasmTableType; +pub use crate::module_resources::WasmType; + +pub(crate) use crate::module_resources::{wasm_func_type_inputs, wasm_func_type_outputs}; + +pub use crate::operators_validator::OperatorValidatorConfig; + +pub use crate::readers::CodeSectionReader; +pub use crate::readers::CustomSectionContent; +pub use crate::readers::Data; +pub use crate::readers::DataKind; +pub use crate::readers::DataSectionReader; +pub use crate::readers::Element; +pub use crate::readers::ElementItem; +pub use crate::readers::ElementItems; +pub use crate::readers::ElementItemsReader; +pub use crate::readers::ElementKind; +pub use crate::readers::ElementSectionReader; +pub use crate::readers::Export; +pub use crate::readers::ExportSectionReader; +pub use crate::readers::FunctionBody; +pub use crate::readers::FunctionSectionReader; +pub use crate::readers::Global; +pub use crate::readers::GlobalSectionReader; +pub use crate::readers::Import; +pub use crate::readers::ImportSectionReader; +pub use crate::readers::InitExpr; +pub use crate::readers::LinkingSectionReader; +pub use crate::readers::LocalsReader; +pub use crate::readers::MemorySectionReader; +pub use crate::readers::ModuleReader; +pub use crate::readers::Name; +pub use crate::readers::NameSectionReader; +pub use crate::readers::NamingReader; +pub use crate::readers::OperatorsReader; +pub use crate::readers::ProducersField; +pub use crate::readers::ProducersFieldValue; +pub use crate::readers::ProducersFieldValuesReader; +pub use crate::readers::ProducersSectionReader; +pub use crate::readers::Reloc; +pub use crate::readers::RelocSectionReader; +pub use crate::readers::Section; +pub use crate::readers::SectionContent; +pub use crate::readers::SectionIterator; +pub use crate::readers::SectionIteratorLimited; +pub use crate::readers::SectionReader; +pub use crate::readers::SectionWithLimitedItems; +pub use crate::readers::TableSectionReader; +pub use crate::readers::TypeSectionReader; + +mod binary_reader; +mod limits; +mod module_resources; +mod operators_validator; +mod parser; +mod primitives; +mod readers; +mod tests; +mod validator; |