summaryrefslogtreecommitdiff
path: root/slicer/tool/parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'slicer/tool/parser.h')
-rw-r--r--slicer/tool/parser.h41
1 files changed, 26 insertions, 15 deletions
diff --git a/slicer/tool/parser.h b/slicer/tool/parser.h
index b9474d3..67aa243 100644
--- a/slicer/tool/parser.h
+++ b/slicer/tool/parser.h
@@ -11,60 +11,71 @@ namespace Slicer {
typedef std::vector<std::string> Args;
class ConversionSpec {
public:
- ConversionSpec(const Args &);
+ explicit ConversionSpec(const Args &);
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::string ExchangeType;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::string ConvertToModelFunc;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::string ConvertToExchangeFunc;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
Args Options;
};
- typedef std::vector<ConversionSpec> Conversions;
+ using Conversions = std::vector<ConversionSpec>;
Slicer();
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
FILE * cpp;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::filesystem::path slicePath;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::filesystem::path cppPath;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::filesystem::path headerPrefix;
+ // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes)
std::vector<std::filesystem::path> includes;
unsigned int Execute();
- unsigned int Components() const;
+ [[nodiscard]] unsigned int Components() const;
#pragma GCC visibility push(hidden)
- virtual bool visitUnitStart(const Slice::UnitPtr&) override;
+ bool visitUnitStart(const Slice::UnitPtr&) override;
- virtual void visitUnitEnd(const Slice::UnitPtr&) override;
+ void visitUnitEnd(const Slice::UnitPtr&) override;
- virtual bool visitModuleStart(const Slice::ModulePtr & m) override;
+ bool visitModuleStart(const Slice::ModulePtr & m) override;
- virtual bool visitClassDefStart(const Slice::ClassDefPtr & c) override;
+ bool visitClassDefStart(const Slice::ClassDefPtr & c) override;
- virtual bool visitStructStart(const Slice::StructPtr&) override;
+ bool visitStructStart(const Slice::StructPtr&) override;
- virtual void visitEnum(const Slice::EnumPtr &) override;
+ void visitEnum(const Slice::EnumPtr &) override;
- virtual void visitSequence(const Slice::SequencePtr & s) override;
+ void visitSequence(const Slice::SequencePtr & s) override;
- virtual void visitDictionary(const Slice::DictionaryPtr & d) override;
+ void visitDictionary(const Slice::DictionaryPtr & d) override;
- virtual void visitModuleEnd(const Slice::ModulePtr & m) override;
+ void visitModuleEnd(const Slice::ModulePtr & m) override;
private:
void createModelPartForConverted(const Slice::TypePtr & type, const std::string & container, const Slice::DataMemberPtr & dm) const;
void createNewModelPartPtrFor(const Slice::TypePtr & type, const Slice::DataMemberPtr & dm = Slice::DataMemberPtr(), const Slice::StringList & md = Slice::StringList()) const;
- std::string getBasicModelPart(const Slice::TypePtr & type) const;
- void defineMODELPART(const std::string & type, const Slice::TypePtr & stype, const Slice::StringList & metadata) const;
+ [[nodiscard]] std::string getBasicModelPart(const Slice::TypePtr & type) const;
+ void defineMODELPART(const std::string & type, const Slice::TypePtr & stype, const Slice::StringList & metadata);
void visitComplexDataMembers(const Slice::ConstructedPtr & t, const Slice::DataMemberList &) const;
void defineConversions(const Slice::DataMemberPtr & dm) const;
void defineRoot(const std::string & type, const std::string & name, const Slice::TypePtr & stype) const;
+ void externType(const Slice::TypePtr &) const;
- bool hasMetadata(const std::list<std::string> & metadata) const;
+ [[nodiscard]] bool hasMetadata(const std::list<std::string> & metadata) const;
void copyMetadata(const std::list<std::string> & metadata) const;
static Slice::StringList getAllMetadata(const Slice::DataMemberPtr & dm);
static Conversions getConversions(const Slice::StringList & metadata);
+ std::set<std::string> definedTypes;
#pragma GCC visibility pop
unsigned int components;