diff --git a/common/include/Dict.hpp b/common/include/Dict.hpp index 64a55399681c0fbc3c7bcce090d2d4be987c8d9e..f78f0fd10578c43958dcc23195a998c5ba2ece6c 100644 --- a/common/include/Dict.hpp +++ b/common/include/Dict.hpp @@ -10,13 +10,14 @@ class Dict { public : - enum State {Open, Closed}; - enum Encoding {Binary, Ascii}; + enum class State {Open, Closed}; + enum class Encoding {Binary, Ascii}; public : static constexpr char const * unknownValueStr = "__unknownValue__"; static constexpr char const * nullValueStr = "__nullValue__"; + static constexpr char const * oobValueStr = "__oobValue__"; static constexpr char const * noChildValueStr = "__noChildValue__"; static constexpr char const * emptyValueStr = "__emptyValue__"; static constexpr char const * separatorValueStr = "__separatorValue__"; diff --git a/common/src/Dict.cpp b/common/src/Dict.cpp index eab564683a7afb11900d3b6496b960ae6cb71f71..85cdae9ae857ec22fbe99a2b373fe9a93efd1734 100644 --- a/common/src/Dict.cpp +++ b/common/src/Dict.cpp @@ -6,6 +6,7 @@ Dict::Dict(State state) setState(state); insert(unknownValueStr); insert(nullValueStr); + insert(oobValueStr); insert(noChildValueStr); insert(emptyValueStr); insert(numberValueStr); @@ -301,6 +302,7 @@ bool Dict::isSpecialValue(const std::string & value) { return value == unknownValueStr || value == nullValueStr + || value == oobValueStr || value == noChildValueStr || value == emptyValueStr || value == separatorValueStr diff --git a/reading_machine/include/Action.hpp b/reading_machine/include/Action.hpp index a0b23a33e0934a72822b350e7d2190af12b74fb4..4afd9e6ff7a085c38a70a6aa6adc176ee263557e 100644 --- a/reading_machine/include/Action.hpp +++ b/reading_machine/include/Action.hpp @@ -10,7 +10,7 @@ class Action { public : - enum Type + enum class Type { Push, Pop, diff --git a/reading_machine/include/Config.hpp b/reading_machine/include/Config.hpp index 68408c8ab2a7ab060ea1072c258aea74d15d3a0b..801173f083cda83d6f37087a7f18ead64414670d 100644 --- a/reading_machine/include/Config.hpp +++ b/reading_machine/include/Config.hpp @@ -31,7 +31,7 @@ class Config static constexpr int nbHypothesesMax = 1; static constexpr int maxNbAppliableSplitTransitions = 8; - enum Object + enum class Object { Buffer, Stack diff --git a/reading_machine/include/Strategy.hpp b/reading_machine/include/Strategy.hpp index c907b71d4424d222076564d0a1e16a6f69c745f3..c0b33230b63bc024448e0cc1abab6888a3d6ce4f 100644 --- a/reading_machine/include/Strategy.hpp +++ b/reading_machine/include/Strategy.hpp @@ -19,7 +19,7 @@ class Strategy { private : - enum EndCondition + enum class EndCondition { CannotMove }; diff --git a/reading_machine/src/Transition.cpp b/reading_machine/src/Transition.cpp index db345911e4cbaceb80f09dedd34a7998b6390c7f..e80ae0b4252f5b935aaebf4e27d12766a576de80 100644 --- a/reading_machine/src/Transition.cpp +++ b/reading_machine/src/Transition.cpp @@ -758,7 +758,7 @@ void Transition::initEOS(int bufferIndex) costDynamic = [bufferIndex](const Config & config) { - int lineIndex = config.getRelativeWordIndex(Config::Buffer, bufferIndex); + int lineIndex = config.getRelativeWordIndex(Config::Object::Buffer, bufferIndex); if (config.getConst(Config::EOSColName, lineIndex, 0) != Config::EOSSymbol1) return std::numeric_limits<int>::max(); @@ -772,7 +772,7 @@ void Transition::initNotEOS(int bufferIndex) { costDynamic = [bufferIndex](const Config & config) { - int lineIndex = config.getRelativeWordIndex(Config::Buffer, bufferIndex); + int lineIndex = config.getRelativeWordIndex(Config::Object::Buffer, bufferIndex); if (config.getConst(Config::EOSColName, lineIndex, 0) == Config::EOSSymbol1) return std::numeric_limits<int>::max(); diff --git a/trainer/include/Trainer.hpp b/trainer/include/Trainer.hpp index a936baddf4e020859f1b2b62b93a6f62d9ca85cd..ef0f25ec18ab3be0ca9994a4f77dc30ec244adb7 100644 --- a/trainer/include/Trainer.hpp +++ b/trainer/include/Trainer.hpp @@ -9,7 +9,7 @@ class Trainer { public : - enum TrainAction + enum class TrainAction { ExtractGold, ExtractDynamic,