1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
/* 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 parser::Parser; pub use parser::ParserState; pub use parser::ParserInput; pub use parser::BinaryReader; pub use parser::Range; pub use parser::SectionCode; pub use parser::Operator; pub use parser::Type; pub use parser::CustomSectionKind; pub use parser::NameType; pub use parser::Naming; pub use parser::LocalName; pub use parser::NameEntry; pub use parser::ExternalKind; pub use parser::FuncType; pub use parser::ResizableLimits; pub use parser::TableType; pub use parser::MemoryType; pub use parser::GlobalType; pub use parser::MemoryImmediate; pub use parser::BrTable; pub use parser::ImportSectionEntryType; pub use parser::RelocType; pub use parser::RelocEntry; pub use parser::LinkingType; pub use parser::Ieee32; pub use parser::Ieee64; mod parser; mod tests;