diff options
author | Heejin Ahn <aheejin@gmail.com> | 2019-05-21 00:44:13 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-21 00:44:13 -0700 |
commit | 5c33c04d51a64775b8e164a9d38d06c720c6505e (patch) | |
tree | 768bfc49bf9070b3f6b8be2d23210ab2bf45c02a /src/wasm-s-parser.h | |
parent | 677808afb18a059d3dadcf2be7bd8daade5b77f9 (diff) | |
download | binaryen-5c33c04d51a64775b8e164a9d38d06c720c6505e.tar.gz binaryen-5c33c04d51a64775b8e164a9d38d06c720c6505e.tar.bz2 binaryen-5c33c04d51a64775b8e164a9d38d06c720c6505e.zip |
Refactor type/signature/local parsing methods (NFC) (#2129)
- Created `parseParamOrLocals`, `parseNamedParamOrLocals`,
`parseResult`, and `parseTypeRef` and make other methods use them
- Deleted some unnecessary member variables
Diffstat (limited to 'src/wasm-s-parser.h')
-rw-r--r-- | src/wasm-s-parser.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/wasm-s-parser.h b/src/wasm-s-parser.h index 004fd9840..c37b1b27d 100644 --- a/src/wasm-s-parser.h +++ b/src/wasm-s-parser.h @@ -24,6 +24,7 @@ #include "mixed_arena.h" #include "parsing.h" // for UniqueNameMapper. TODO: move dependency to cpp file? +#include "wasm-builder.h" #include "wasm.h" namespace wasm { @@ -135,9 +136,6 @@ private: // function parsing state std::unique_ptr<Function> currFunction; - std::map<Name, Type> currLocalTypes; - size_t localIndex; // params and vars - size_t otherIndex; bool brokeToAutoBlock; UniqueNameMapper nameMapper; @@ -220,8 +218,13 @@ private: Expression* makeBreakTable(Element& s); Expression* makeReturn(Element& s); + // Helper functions Type parseOptionalResultType(Element& s, Index& i); Index parseMemoryLimits(Element& s, Index i); + std::vector<Type> parseParamOrLocal(Element& s); + std::vector<NameType> parseNamedParamOrLocal(Element& s, size_t& localIndex); + Type parseResult(Element& s); + FunctionType* parseTypeRef(Element& s); void stringToBinary(const char* input, size_t size, std::vector<char>& data); void parseMemory(Element& s, bool preParseImport = false); |