diff options
author | Lefteris Karapetsas <lefteris@refu.co> | 2014-12-05 00:19:47 +0800 |
---|---|---|
committer | Lefteris Karapetsas <lefteris@refu.co> | 2014-12-05 00:19:47 +0800 |
commit | 05964375f888e8b8a3ccf5bc01d9cfff8fd00566 (patch) | |
tree | a210bf1abee81bf7193a26414f6e5ae635d03eed /InterfaceHandler.h | |
parent | 3e803b40e1b22daf8e3ac45593aec6798d365ccb (diff) | |
download | dexon-solidity-05964375f888e8b8a3ccf5bc01d9cfff8fd00566.tar.gz dexon-solidity-05964375f888e8b8a3ccf5bc01d9cfff8fd00566.tar.zst dexon-solidity-05964375f888e8b8a3ccf5bc01d9cfff8fd00566.zip |
Natspec parsing @param doctags
- Plus additional work on generally parsing doctags.
One important missing feature is to parse a tag midline
- Adding more tests
Diffstat (limited to 'InterfaceHandler.h')
-rw-r--r-- | InterfaceHandler.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/InterfaceHandler.h b/InterfaceHandler.h index 6f2f2937..2a70af95 100644 --- a/InterfaceHandler.h +++ b/InterfaceHandler.h @@ -42,6 +42,7 @@ enum docTagType DOCTAG_NONE = 0, DOCTAG_DEV, DOCTAG_NOTICE, + DOCTAG_PARAM }; class InterfaceHandler @@ -74,7 +75,14 @@ public: std::unique_ptr<std::string> getDevDocumentation(std::shared_ptr<ContractDefinition> _contractDef); private: + void resetUser(); + void resetDev(); + + size_t parseDocTagLine(std::string const& _string, std::string& _tagString, size_t _pos, enum docTagType _tagType); + size_t parseDocTagParam(std::string const& _string, size_t _startPos); + size_t appendDocTagParam(std::string const& _string, size_t _startPos); void parseDocString(std::string const& _string, size_t _startPos = 0); + size_t appendDocTag(std::string const& _string, size_t _startPos); size_t parseDocTag(std::string const& _string, std::string const& _tag, size_t _pos); Json::StyledWriter m_writer; @@ -83,6 +91,7 @@ private: enum docTagType m_lastTag; std::string m_notice; std::string m_dev; + std::vector<std::pair<std::string, std::string>> m_params; }; } //solidity NS |