From cc43075aced291d895b021b9eefe540404304404 Mon Sep 17 00:00:00 2001 From: Leon Etienne <40911701+Leonetienne@users.noreply.github.com> Date: Sun, 27 Feb 2022 23:19:37 +0000 Subject: [PATCH] Delete docs directory --- docs/Abbreviations_8cpp.html | 127 -- docs/Abbreviations_8cpp__incl.map | 14 - docs/Abbreviations_8cpp__incl.md5 | 1 - docs/Abbreviations_8cpp__incl.png | Bin 34023 -> 0 bytes docs/Abbreviations_8cpp_source.html | 262 --- docs/Basics_8cpp.html | 130 -- docs/Basics_8cpp__incl.map | 16 - docs/Basics_8cpp__incl.md5 | 1 - docs/Basics_8cpp__incl.png | Bin 38184 -> 0 bytes docs/Basics_8cpp_source.html | 350 ---- docs/CmdArgsInterface_8cpp.html | 133 -- docs/CmdArgsInterface_8cpp__incl.map | 26 - docs/CmdArgsInterface_8cpp__incl.md5 | 1 - docs/CmdArgsInterface_8cpp__incl.png | Bin 114201 -> 0 bytes docs/CmdArgsInterface_8cpp_source.html | 845 -------- docs/CmdArgsInterface_8h.html | 137 -- docs/CmdArgsInterface_8h__dep__incl.map | 4 - docs/CmdArgsInterface_8h__dep__incl.md5 | 1 - docs/CmdArgsInterface_8h__dep__incl.png | Bin 5496 -> 0 bytes docs/CmdArgsInterface_8h__incl.map | 12 - docs/CmdArgsInterface_8h__incl.md5 | 1 - docs/CmdArgsInterface_8h__incl.png | Bin 36035 -> 0 bytes docs/CmdArgsInterface_8h_source.html | 272 --- docs/Constraints_8cpp.html | 130 -- docs/Constraints_8cpp__incl.map | 16 - docs/Constraints_8cpp__incl.md5 | 1 - docs/Constraints_8cpp__incl.png | Bin 38428 -> 0 bytes docs/Constraints_8cpp_source.html | 425 ---- docs/Conversion_8cpp.html | 130 -- docs/Conversion_8cpp__incl.map | 16 - docs/Conversion_8cpp__incl.md5 | 1 - docs/Conversion_8cpp__incl.png | Bin 38508 -> 0 bytes docs/Conversion_8cpp_source.html | 353 ---- docs/DataType_8h.html | 156 -- docs/DataType_8h__dep__incl.map | 21 - docs/DataType_8h__dep__incl.md5 | 1 - docs/DataType_8h__dep__incl.png | Bin 70679 -> 0 bytes docs/DataType_8h__incl.map | 4 - docs/DataType_8h__incl.md5 | 1 - docs/DataType_8h__incl.png | Bin 3371 -> 0 bytes docs/DataType_8h_source.html | 136 -- ...lnupp_8vcxproj_8FileListAbsolute_8txt.html | 85 - ...lnupp_8vcxproj_8FileListAbsolute_8txt.html | 85 - docs/FloatValue_8cpp.html | 111 -- docs/FloatValue_8cpp__incl.map | 12 - docs/FloatValue_8cpp__incl.md5 | 1 - docs/FloatValue_8cpp__incl.png | Bin 26410 -> 0 bytes docs/FloatValue_8cpp_source.html | 181 -- docs/FloatValue_8h.html | 131 -- docs/FloatValue_8h__dep__incl.map | 5 - docs/FloatValue_8h__dep__incl.md5 | 1 - docs/FloatValue_8h__dep__incl.png | Bin 6866 -> 0 bytes docs/FloatValue_8h__incl.map | 8 - docs/FloatValue_8h__incl.md5 | 1 - docs/FloatValue_8h__incl.png | Bin 10846 -> 0 bytes docs/FloatValue_8h_source.html | 150 -- docs/HazelnuppException_8h.html | 154 -- docs/HazelnuppException_8h__dep__incl.map | 9 - docs/HazelnuppException_8h__dep__incl.md5 | 1 - docs/HazelnuppException_8h__dep__incl.png | Bin 15481 -> 0 bytes docs/HazelnuppException_8h__incl.map | 7 - docs/HazelnuppException_8h__incl.md5 | 1 - docs/HazelnuppException_8h__incl.png | Bin 13084 -> 0 bytes docs/HazelnuppException_8h_source.html | 232 --- docs/Hazelnupp_8cpp.html | 132 -- docs/Hazelnupp_8cpp__incl.map | 25 - docs/Hazelnupp_8cpp__incl.md5 | 1 - docs/Hazelnupp_8cpp__incl.png | Bin 109995 -> 0 bytes docs/Hazelnupp_8cpp_source.html | 777 -------- docs/Hazelnupp_8h.html | 135 -- docs/Hazelnupp_8h__dep__incl.map | 4 - docs/Hazelnupp_8h__dep__incl.md5 | 1 - docs/Hazelnupp_8h__dep__incl.png | Bin 3012 -> 0 bytes docs/Hazelnupp_8h__incl.map | 11 - docs/Hazelnupp_8h__incl.md5 | 1 - docs/Hazelnupp_8h__incl.png | Bin 32669 -> 0 bytes docs/Hazelnupp_8h_source.html | 269 --- docs/IntValue_8cpp.html | 111 -- docs/IntValue_8cpp__incl.map | 12 - docs/IntValue_8cpp__incl.md5 | 1 - docs/IntValue_8cpp__incl.png | Bin 24191 -> 0 bytes docs/IntValue_8cpp_source.html | 181 -- docs/IntValue_8h.html | 130 -- docs/IntValue_8h__dep__incl.map | 5 - docs/IntValue_8h__dep__incl.md5 | 1 - docs/IntValue_8h__dep__incl.png | Bin 6657 -> 0 bytes docs/IntValue_8h__incl.map | 8 - docs/IntValue_8h__incl.md5 | 1 - docs/IntValue_8h__incl.png | Bin 9219 -> 0 bytes docs/IntValue_8h_source.html | 150 -- docs/ListValue_8cpp.html | 111 -- docs/ListValue_8cpp__incl.map | 12 - docs/ListValue_8cpp__incl.md5 | 1 - docs/ListValue_8cpp__incl.png | Bin 27392 -> 0 bytes docs/ListValue_8cpp_source.html | 207 -- docs/ListValue_8h.html | 131 -- docs/ListValue_8h__dep__incl.map | 5 - docs/ListValue_8h__dep__incl.md5 | 1 - docs/ListValue_8h__dep__incl.png | Bin 6708 -> 0 bytes docs/ListValue_8h__incl.map | 8 - docs/ListValue_8h__incl.md5 | 1 - docs/ListValue_8h__incl.png | Bin 11233 -> 0 bytes docs/ListValue_8h_source.html | 153 -- docs/ParamConstraint_8h.html | 129 -- docs/ParamConstraint_8h__dep__incl.map | 5 - docs/ParamConstraint_8h__dep__incl.md5 | 1 - docs/ParamConstraint_8h__dep__incl.png | Bin 8796 -> 0 bytes docs/ParamConstraint_8h__incl.map | 6 - docs/ParamConstraint_8h__incl.md5 | 1 - docs/ParamConstraint_8h__incl.png | Bin 10494 -> 0 bytes docs/ParamConstraint_8h_source.html | 247 --- docs/Parameter_8cpp.html | 106 - docs/Parameter_8cpp__incl.map | 9 - docs/Parameter_8cpp__incl.md5 | 1 - docs/Parameter_8cpp__incl.png | Bin 16052 -> 0 bytes docs/Parameter_8cpp_source.html | 124 -- docs/Parameter_8h.html | 132 -- docs/Parameter_8h__dep__incl.map | 6 - docs/Parameter_8h__dep__incl.md5 | 1 - docs/Parameter_8h__dep__incl.png | Bin 11178 -> 0 bytes docs/Parameter_8h__incl.map | 8 - docs/Parameter_8h__incl.md5 | 1 - docs/Parameter_8h__incl.png | Bin 16028 -> 0 bytes docs/Parameter_8h_source.html | 127 -- docs/Placeholders_8h.html | 127 -- docs/Placeholders_8h__dep__incl.map | 4 - docs/Placeholders_8h__dep__incl.md5 | 1 - docs/Placeholders_8h__dep__incl.png | Bin 4950 -> 0 bytes docs/Placeholders_8h__incl.map | 4 - docs/Placeholders_8h__incl.md5 | 1 - docs/Placeholders_8h__incl.png | Bin 3371 -> 0 bytes docs/Placeholders_8h_source.html | 102 - ...lnupp_8vcxproj_8FileListAbsolute_8txt.html | 85 - ...lnupp_8vcxproj_8FileListAbsolute_8txt.html | 85 - docs/StringTools_8cpp.html | 105 - docs/StringTools_8cpp__incl.map | 8 - docs/StringTools_8cpp__incl.md5 | 1 - docs/StringTools_8cpp__incl.png | Bin 11528 -> 0 bytes docs/StringTools_8cpp_source.html | 283 --- docs/StringTools_8h.html | 134 -- docs/StringTools_8h__dep__incl.map | 5 - docs/StringTools_8h__dep__incl.md5 | 1 - docs/StringTools_8h__dep__incl.png | Bin 7463 -> 0 bytes docs/StringTools_8h__incl.map | 7 - docs/StringTools_8h__incl.md5 | 1 - docs/StringTools_8h__incl.png | Bin 8293 -> 0 bytes docs/StringTools_8h_source.html | 141 -- docs/StringValue_8cpp.html | 111 -- docs/StringValue_8cpp__incl.map | 12 - docs/StringValue_8cpp__incl.md5 | 1 - docs/StringValue_8cpp__incl.png | Bin 29261 -> 0 bytes docs/StringValue_8cpp_source.html | 173 -- docs/StringValue_8h.html | 131 -- docs/StringValue_8h__dep__incl.map | 5 - docs/StringValue_8h__dep__incl.md5 | 1 - docs/StringValue_8h__dep__incl.png | Bin 7207 -> 0 bytes docs/StringValue_8h__incl.map | 8 - docs/StringValue_8h__incl.md5 | 1 - docs/StringValue_8h__incl.png | Bin 13726 -> 0 bytes docs/StringValue_8h_source.html | 149 -- docs/Value_8cpp.html | 105 - docs/Value_8cpp__incl.map | 8 - docs/Value_8cpp__incl.md5 | 1 - docs/Value_8cpp__incl.png | Bin 9207 -> 0 bytes docs/Value_8cpp_source.html | 110 - docs/Value_8h.html | 144 -- docs/Value_8h__dep__incl.map | 18 - docs/Value_8h__dep__incl.md5 | 1 - docs/Value_8h__dep__incl.png | Bin 46660 -> 0 bytes docs/Value_8h__incl.map | 7 - docs/Value_8h__incl.md5 | 1 - docs/Value_8h__incl.png | Bin 8450 -> 0 bytes docs/Value_8h_source.html | 156 -- docs/Version_8h.html | 126 -- docs/Version_8h__dep__incl.map | 5 - docs/Version_8h__dep__incl.md5 | 1 - docs/Version_8h__dep__incl.png | Bin 8372 -> 0 bytes docs/Version_8h_source.html | 91 - docs/VoidValue_8cpp.html | 110 - docs/VoidValue_8cpp__incl.map | 12 - docs/VoidValue_8cpp__incl.md5 | 1 - docs/VoidValue_8cpp__incl.png | Bin 22702 -> 0 bytes docs/VoidValue_8cpp_source.html | 159 -- docs/VoidValue_8h.html | 130 -- docs/VoidValue_8h__dep__incl.map | 5 - docs/VoidValue_8h__dep__incl.md5 | 1 - docs/VoidValue_8h__dep__incl.png | Bin 7962 -> 0 bytes docs/VoidValue_8h__incl.map | 8 - docs/VoidValue_8h__incl.md5 | 1 - docs/VoidValue_8h__incl.png | Bin 9442 -> 0 bytes docs/VoidValue_8h_source.html | 139 -- docs/annotated.html | 108 - docs/bc_s.png | Bin 640 -> 0 bytes docs/bdwn.png | Bin 152 -> 0 bytes docs/classFloatValue-members.html | 105 - docs/classFloatValue.html | 578 ------ docs/classFloatValue__coll__graph.map | 4 - docs/classFloatValue__coll__graph.md5 | 1 - docs/classFloatValue__coll__graph.png | Bin 2346 -> 0 bytes docs/classFloatValue__inherit__graph.map | 4 - docs/classFloatValue__inherit__graph.md5 | 1 - docs/classFloatValue__inherit__graph.png | Bin 2346 -> 0 bytes ...ssHazelnp_1_1CmdArgsInterface-members.html | 120 -- docs/classHazelnp_1_1CmdArgsInterface.html | 1206 ----------- docs/classHazelnp_1_1FloatValue-members.html | 109 - docs/classHazelnp_1_1FloatValue.html | 582 ------ ...lassHazelnp_1_1FloatValue__coll__graph.map | 4 - ...lassHazelnp_1_1FloatValue__coll__graph.md5 | 1 - ...lassHazelnp_1_1FloatValue__coll__graph.png | Bin 3631 -> 0 bytes ...sHazelnp_1_1FloatValue__inherit__graph.map | 4 - ...sHazelnp_1_1FloatValue__inherit__graph.md5 | 1 - ...sHazelnp_1_1FloatValue__inherit__graph.png | Bin 3631 -> 0 bytes docs/classHazelnp_1_1Hazelnupp-members.html | 120 -- docs/classHazelnp_1_1Hazelnupp.html | 1150 ----------- ...1HazelnuppConstraintException-members.html | 98 - ...zelnp_1_1HazelnuppConstraintException.html | 210 -- ...elnuppConstraintException__coll__graph.map | 7 - ...elnuppConstraintException__coll__graph.md5 | 1 - ...elnuppConstraintException__coll__graph.png | Bin 11768 -> 0 bytes ...uppConstraintException__inherit__graph.map | 8 - ...uppConstraintException__inherit__graph.md5 | 1 - ...uppConstraintException__inherit__graph.png | Bin 18728 -> 0 bytes ...straintIncompatibleParameters-members.html | 100 - ...lnuppConstraintIncompatibleParameters.html | 232 --- ...intIncompatibleParameters__coll__graph.map | 8 - ...intIncompatibleParameters__coll__graph.md5 | 1 - ...intIncompatibleParameters__coll__graph.png | Bin 16236 -> 0 bytes ...IncompatibleParameters__inherit__graph.map | 6 - ...IncompatibleParameters__inherit__graph.md5 | 1 - ...IncompatibleParameters__inherit__graph.png | Bin 10430 -> 0 bytes ...zelnuppConstraintMissingValue-members.html | 100 - ...np_1_1HazelnuppConstraintMissingValue.html | 236 --- ...uppConstraintMissingValue__coll__graph.map | 8 - ...uppConstraintMissingValue__coll__graph.md5 | 1 - ...uppConstraintMissingValue__coll__graph.png | Bin 16361 -> 0 bytes ...ConstraintMissingValue__inherit__graph.map | 6 - ...ConstraintMissingValue__inherit__graph.md5 | 1 - ...ConstraintMissingValue__inherit__graph.png | Bin 10561 -> 0 bytes ...elnuppConstraintTypeMissmatch-members.html | 101 - ...p_1_1HazelnuppConstraintTypeMissmatch.html | 281 --- ...ppConstraintTypeMissmatch__coll__graph.map | 8 - ...ppConstraintTypeMissmatch__coll__graph.md5 | 1 - ...ppConstraintTypeMissmatch__coll__graph.png | Bin 16543 -> 0 bytes ...onstraintTypeMissmatch__inherit__graph.map | 6 - ...onstraintTypeMissmatch__inherit__graph.md5 | 1 - ...onstraintTypeMissmatch__inherit__graph.png | Bin 10733 -> 0 bytes ...Hazelnp_1_1HazelnuppException-members.html | 96 - docs/classHazelnp_1_1HazelnuppException.html | 264 --- ...lnp_1_1HazelnuppException__coll__graph.map | 6 - ...lnp_1_1HazelnuppException__coll__graph.md5 | 1 - ...lnp_1_1HazelnuppException__coll__graph.png | Bin 8845 -> 0 bytes ..._1_1HazelnuppException__inherit__graph.map | 10 - ..._1_1HazelnuppException__inherit__graph.md5 | 1 - ..._1_1HazelnuppException__inherit__graph.png | Bin 24773 -> 0 bytes ...1HazelnuppInvalidKeyException-members.html | 98 - ...zelnp_1_1HazelnuppInvalidKeyException.html | 207 -- ...elnuppInvalidKeyException__coll__graph.map | 7 - ...elnuppInvalidKeyException__coll__graph.md5 | 1 - ...elnuppInvalidKeyException__coll__graph.png | Bin 11844 -> 0 bytes ...uppInvalidKeyException__inherit__graph.map | 5 - ...uppInvalidKeyException__inherit__graph.md5 | 1 - ...uppInvalidKeyException__inherit__graph.png | Bin 7363 -> 0 bytes ...pValueNotConvertibleException-members.html | 98 - ...HazelnuppValueNotConvertibleException.html | 207 -- ...ueNotConvertibleException__coll__graph.map | 7 - ...ueNotConvertibleException__coll__graph.md5 | 1 - ...ueNotConvertibleException__coll__graph.png | Bin 11958 -> 0 bytes ...otConvertibleException__inherit__graph.map | 5 - ...otConvertibleException__inherit__graph.md5 | 1 - ...otConvertibleException__inherit__graph.png | Bin 7494 -> 0 bytes docs/classHazelnp_1_1IntValue-members.html | 109 - docs/classHazelnp_1_1IntValue.html | 582 ------ .../classHazelnp_1_1IntValue__coll__graph.map | 4 - .../classHazelnp_1_1IntValue__coll__graph.md5 | 1 - .../classHazelnp_1_1IntValue__coll__graph.png | Bin 3366 -> 0 bytes ...assHazelnp_1_1IntValue__inherit__graph.map | 4 - ...assHazelnp_1_1IntValue__inherit__graph.md5 | 1 - ...assHazelnp_1_1IntValue__inherit__graph.png | Bin 3366 -> 0 bytes ...np_1_1Internal_1_1StringTools-members.html | 100 - ...assHazelnp_1_1Internal_1_1StringTools.html | 634 ------ docs/classHazelnp_1_1ListValue-members.html | 109 - docs/classHazelnp_1_1ListValue.html | 609 ------ ...classHazelnp_1_1ListValue__coll__graph.map | 4 - ...classHazelnp_1_1ListValue__coll__graph.md5 | 1 - ...classHazelnp_1_1ListValue__coll__graph.png | Bin 3226 -> 0 bytes ...ssHazelnp_1_1ListValue__inherit__graph.map | 4 - ...ssHazelnp_1_1ListValue__inherit__graph.md5 | 1 - ...ssHazelnp_1_1ListValue__inherit__graph.png | Bin 3226 -> 0 bytes docs/classHazelnp_1_1Parameter-members.html | 97 - docs/classHazelnp_1_1Parameter.html | 283 --- docs/classHazelnp_1_1StringTools-members.html | 100 - docs/classHazelnp_1_1StringTools.html | 634 ------ docs/classHazelnp_1_1StringValue-members.html | 108 - docs/classHazelnp_1_1StringValue.html | 555 ------ ...assHazelnp_1_1StringValue__coll__graph.map | 4 - ...assHazelnp_1_1StringValue__coll__graph.md5 | 1 - ...assHazelnp_1_1StringValue__coll__graph.png | Bin 3473 -> 0 bytes ...Hazelnp_1_1StringValue__inherit__graph.map | 4 - ...Hazelnp_1_1StringValue__inherit__graph.md5 | 1 - ...Hazelnp_1_1StringValue__inherit__graph.png | Bin 3473 -> 0 bytes docs/classHazelnp_1_1Value-members.html | 105 - docs/classHazelnp_1_1Value.html | 556 ------ .../classHazelnp_1_1Value__inherit__graph.map | 8 - .../classHazelnp_1_1Value__inherit__graph.md5 | 1 - .../classHazelnp_1_1Value__inherit__graph.png | Bin 16263 -> 0 bytes docs/classHazelnp_1_1VoidValue-members.html | 106 - docs/classHazelnp_1_1VoidValue.html | 502 ----- ...classHazelnp_1_1VoidValue__coll__graph.map | 4 - ...classHazelnp_1_1VoidValue__coll__graph.md5 | 1 - ...classHazelnp_1_1VoidValue__coll__graph.png | Bin 3293 -> 0 bytes ...ssHazelnp_1_1VoidValue__inherit__graph.map | 4 - ...ssHazelnp_1_1VoidValue__inherit__graph.md5 | 1 - ...ssHazelnp_1_1VoidValue__inherit__graph.png | Bin 3293 -> 0 bytes docs/classHazelnupp-members.html | 103 - docs/classHazelnupp.html | 630 ------ ...sHazelnuppConstraintException-members.html | 94 - docs/classHazelnuppConstraintException.html | 205 -- ...elnuppConstraintException__coll__graph.map | 7 - ...elnuppConstraintException__coll__graph.md5 | 1 - ...elnuppConstraintException__coll__graph.png | Bin 11398 -> 0 bytes ...uppConstraintException__inherit__graph.map | 7 - ...uppConstraintException__inherit__graph.md5 | 1 - ...uppConstraintException__inherit__graph.png | Bin 12636 -> 0 bytes ...zelnuppConstraintMissingValue-members.html | 96 - .../classHazelnuppConstraintMissingValue.html | 210 -- ...uppConstraintMissingValue__coll__graph.map | 8 - ...uppConstraintMissingValue__coll__graph.md5 | 1 - ...uppConstraintMissingValue__coll__graph.png | Bin 14321 -> 0 bytes ...ConstraintMissingValue__inherit__graph.map | 6 - ...ConstraintMissingValue__inherit__graph.md5 | 1 - ...ConstraintMissingValue__inherit__graph.png | Bin 9105 -> 0 bytes ...elnuppConstraintTypeMissmatch-members.html | 96 - ...classHazelnuppConstraintTypeMissmatch.html | 210 -- ...ppConstraintTypeMissmatch__coll__graph.map | 8 - ...ppConstraintTypeMissmatch__coll__graph.md5 | 1 - ...ppConstraintTypeMissmatch__coll__graph.png | Bin 14346 -> 0 bytes ...onstraintTypeMissmatch__inherit__graph.map | 6 - ...onstraintTypeMissmatch__inherit__graph.md5 | 1 - ...onstraintTypeMissmatch__inherit__graph.png | Bin 9141 -> 0 bytes docs/classHazelnuppException-members.html | 92 - docs/classHazelnuppException.html | 259 --- docs/classHazelnuppException__coll__graph.map | 6 - docs/classHazelnuppException__coll__graph.md5 | 1 - docs/classHazelnuppException__coll__graph.png | Bin 9637 -> 0 bytes ...lassHazelnuppException__inherit__graph.map | 9 - ...lassHazelnuppException__inherit__graph.md5 | 1 - ...lassHazelnuppException__inherit__graph.png | Bin 20860 -> 0 bytes ...sHazelnuppInvalidKeyException-members.html | 94 - docs/classHazelnuppInvalidKeyException.html | 203 -- ...elnuppInvalidKeyException__coll__graph.map | 7 - ...elnuppInvalidKeyException__coll__graph.md5 | 1 - ...elnuppInvalidKeyException__coll__graph.png | Bin 11587 -> 0 bytes ...uppInvalidKeyException__inherit__graph.map | 5 - ...uppInvalidKeyException__inherit__graph.md5 | 1 - ...uppInvalidKeyException__inherit__graph.png | Bin 7047 -> 0 bytes ...pValueNotConvertibleException-members.html | 94 - ...HazelnuppValueNotConvertibleException.html | 203 -- ...ueNotConvertibleException__coll__graph.map | 7 - ...ueNotConvertibleException__coll__graph.md5 | 1 - ...ueNotConvertibleException__coll__graph.png | Bin 13181 -> 0 bytes ...otConvertibleException__inherit__graph.map | 5 - ...otConvertibleException__inherit__graph.md5 | 1 - ...otConvertibleException__inherit__graph.png | Bin 6740 -> 0 bytes docs/classIntValue-members.html | 105 - docs/classIntValue.html | 578 ------ docs/classIntValue__coll__graph.map | 4 - docs/classIntValue__coll__graph.md5 | 1 - docs/classIntValue__coll__graph.png | Bin 2082 -> 0 bytes docs/classIntValue__inherit__graph.map | 4 - docs/classIntValue__inherit__graph.md5 | 1 - docs/classIntValue__inherit__graph.png | Bin 2082 -> 0 bytes docs/classListValue-members.html | 105 - docs/classListValue.html | 605 ------ docs/classListValue__coll__graph.map | 4 - docs/classListValue__coll__graph.md5 | 1 - docs/classListValue__coll__graph.png | Bin 2274 -> 0 bytes docs/classListValue__inherit__graph.map | 4 - docs/classListValue__inherit__graph.md5 | 1 - docs/classListValue__inherit__graph.png | Bin 2274 -> 0 bytes docs/classParameter-members.html | 93 - docs/classParameter.html | 279 --- docs/classStringTools-members.html | 96 - docs/classStringTools.html | 630 ------ docs/classStringValue-members.html | 104 - docs/classStringValue.html | 551 ----- docs/classStringValue__coll__graph.map | 4 - docs/classStringValue__coll__graph.md5 | 1 - docs/classStringValue__coll__graph.png | Bin 2908 -> 0 bytes docs/classStringValue__inherit__graph.map | 4 - docs/classStringValue__inherit__graph.md5 | 1 - docs/classStringValue__inherit__graph.png | Bin 2908 -> 0 bytes docs/classValue-members.html | 101 - docs/classValue.html | 553 ----- docs/classValue__inherit__graph.map | 8 - docs/classValue__inherit__graph.md5 | 1 - docs/classValue__inherit__graph.png | Bin 8903 -> 0 bytes docs/classVoidValue-members.html | 102 - docs/classVoidValue.html | 497 ----- docs/classVoidValue__coll__graph.map | 4 - docs/classVoidValue__coll__graph.md5 | 1 - docs/classVoidValue__coll__graph.png | Bin 2346 -> 0 bytes docs/classVoidValue__inherit__graph.map | 4 - docs/classVoidValue__inherit__graph.md5 | 1 - docs/classVoidValue__inherit__graph.png | Bin 2346 -> 0 bytes docs/classes.html | 132 -- docs/closed.png | Bin 132 -> 0 bytes docs/dir_000003_000000.html | 85 - .../dir_0202e1e26df2e040f4dc3d434eecf04c.html | 146 -- .../dir_0c3d7a8ae27c1a80e1a2e78f7c177a7d.html | 89 - .../dir_0cc5f59b28c403d42cc56800132eb975.html | 89 - .../dir_1148ebc2b25b55095aebf6f4cbb6efca.html | 89 - .../dir_5c0eadceca12ef8285078e2e738769ee.html | 89 - .../dir_a4e10305c1b03e566e1d27ef3ea61492.html | 122 -- ...r_a4e10305c1b03e566e1d27ef3ea61492_dep.map | 7 - ...r_a4e10305c1b03e566e1d27ef3ea61492_dep.md5 | 1 - ...r_a4e10305c1b03e566e1d27ef3ea61492_dep.png | Bin 4778 -> 0 bytes .../dir_a8cffda729361e9d9637effa362fcea9.html | 89 - docs/doc.png | Bin 697 -> 0 bytes docs/doxygen.css | 1771 ----------------- docs/doxygen.png | Bin 3713 -> 0 bytes docs/dynsections.js | 127 -- docs/files.html | 116 -- docs/folderclosed.png | Bin 575 -> 0 bytes docs/folderopen.png | Bin 592 -> 0 bytes docs/functions.html | 463 ----- docs/functions_func.html | 433 ---- docs/functions_rela.html | 90 - docs/functions_vars.html | 104 - docs/globals.html | 86 - docs/globals_defs.html | 86 - docs/globals_enum.html | 86 - docs/globals_func.html | 86 - docs/globals_type.html | 86 - docs/graph_legend.html | 145 -- docs/graph_legend.md5 | 1 - docs/graph_legend.png | Bin 20615 -> 0 bytes docs/helper_8h.html | 165 -- docs/helper_8h__dep__incl.map | 7 - docs/helper_8h__dep__incl.md5 | 1 - docs/helper_8h__dep__incl.png | Bin 9796 -> 0 bytes docs/helper_8h__incl.map | 4 - docs/helper_8h__incl.md5 | 1 - docs/helper_8h__incl.png | Bin 3367 -> 0 bytes docs/helper_8h_source.html | 96 - docs/hierarchy.html | 109 - docs/index.html | 441 ---- docs/index_8md.html | 85 - docs/inherit_graph_0.map | 3 - docs/inherit_graph_0.md5 | 1 - docs/inherit_graph_0.png | Bin 2522 -> 0 bytes docs/inherit_graph_1.map | 10 - docs/inherit_graph_1.md5 | 1 - docs/inherit_graph_1.png | Bin 23383 -> 0 bytes docs/inherit_graph_2.map | 3 - docs/inherit_graph_2.md5 | 1 - docs/inherit_graph_2.png | Bin 2043 -> 0 bytes docs/inherit_graph_3.map | 3 - docs/inherit_graph_3.md5 | 1 - docs/inherit_graph_3.png | Bin 1904 -> 0 bytes docs/inherit_graph_4.map | 3 - docs/inherit_graph_4.md5 | 1 - docs/inherit_graph_4.png | Bin 1407 -> 0 bytes docs/inherit_graph_5.map | 8 - docs/inherit_graph_5.md5 | 1 - docs/inherit_graph_5.png | Bin 15322 -> 0 bytes docs/inherits.html | 131 -- docs/jquery.js | 35 - docs/main_8cpp.html | 182 -- docs/main_8cpp__incl.map | 14 - docs/main_8cpp__incl.md5 | 1 - docs/main_8cpp__incl.png | Bin 38922 -> 0 bytes docs/main_8cpp_source.html | 134 -- docs/md_Doxygen_index.html | 324 --- docs/menu.js | 50 - docs/menudata.js | 80 - docs/namespaceHazelnp.html | 262 --- docs/namespaceHazelnp_1_1Internal.html | 98 - docs/namespaceHazelnp_1_1Placeholders.html | 125 -- docs/namespaceTestHazelnupp.html | 1139 ----------- docs/namespacemembers.html | 92 - docs/namespacemembers_enum.html | 86 - docs/namespacemembers_func.html | 86 - docs/namespacemembers_vars.html | 86 - docs/namespaces.html | 92 - docs/nav_f.png | Bin 142 -> 0 bytes docs/nav_g.png | Bin 95 -> 0 bytes docs/nav_h.png | Bin 96 -> 0 bytes docs/nupp_small.png | Bin 32245 -> 0 bytes docs/open.png | Bin 123 -> 0 bytes docs/pages.html | 90 - docs/readme_8md.html | 85 - docs/search/all_0.html | 30 - docs/search/all_0.js | 7 - docs/search/all_1.html | 30 - docs/search/all_1.js | 14 - docs/search/all_10.html | 30 - docs/search/all_10.js | 4 - docs/search/all_11.html | 30 - docs/search/all_11.js | 11 - docs/search/all_12.html | 30 - docs/search/all_12.js | 11 - docs/search/all_2.html | 30 - docs/search/all_2.js | 8 - docs/search/all_3.html | 30 - docs/search/all_3.js | 7 - docs/search/all_4.html | 30 - docs/search/all_4.js | 21 - docs/search/all_5.html | 30 - docs/search/all_5.js | 20 - docs/search/all_6.html | 30 - docs/search/all_6.js | 11 - docs/search/all_7.html | 30 - docs/search/all_7.js | 4 - docs/search/all_8.html | 30 - docs/search/all_8.js | 7 - docs/search/all_9.html | 30 - docs/search/all_9.js | 4 - docs/search/all_a.html | 30 - docs/search/all_a.js | 11 - docs/search/all_b.html | 30 - docs/search/all_b.js | 11 - docs/search/all_c.html | 30 - docs/search/all_c.js | 10 - docs/search/all_d.html | 30 - docs/search/all_d.js | 14 - docs/search/all_e.html | 30 - docs/search/all_e.js | 6 - docs/search/all_f.html | 30 - docs/search/all_f.js | 11 - docs/search/classes_0.html | 30 - docs/search/classes_0.js | 4 - docs/search/classes_1.html | 30 - docs/search/classes_1.js | 4 - docs/search/classes_2.html | 30 - docs/search/classes_2.js | 10 - docs/search/classes_3.html | 30 - docs/search/classes_3.js | 4 - docs/search/classes_4.html | 30 - docs/search/classes_4.js | 4 - docs/search/classes_5.html | 30 - docs/search/classes_5.js | 5 - docs/search/classes_6.html | 30 - docs/search/classes_6.js | 5 - docs/search/classes_7.html | 30 - docs/search/classes_7.js | 5 - docs/search/close.png | Bin 273 -> 0 bytes docs/search/defines_0.html | 30 - docs/search/defines_0.js | 4 - docs/search/enums_0.html | 30 - docs/search/enums_0.js | 4 - docs/search/enumvalues_0.html | 30 - docs/search/enumvalues_0.js | 4 - docs/search/enumvalues_1.html | 30 - docs/search/enumvalues_1.js | 4 - docs/search/enumvalues_2.html | 30 - docs/search/enumvalues_2.js | 4 - docs/search/enumvalues_3.html | 30 - docs/search/enumvalues_3.js | 4 - docs/search/enumvalues_4.html | 30 - docs/search/enumvalues_4.js | 4 - docs/search/files_0.html | 30 - docs/search/files_0.js | 5 - docs/search/files_1.html | 30 - docs/search/files_1.js | 4 - docs/search/files_2.html | 30 - docs/search/files_2.js | 5 - docs/search/files_3.html | 30 - docs/search/files_3.js | 5 - docs/search/files_4.html | 30 - docs/search/files_4.js | 6 - docs/search/files_5.html | 30 - docs/search/files_5.js | 5 - docs/search/files_6.html | 30 - docs/search/files_6.js | 7 - docs/search/files_7.html | 30 - docs/search/files_7.js | 7 - docs/search/files_8.html | 30 - docs/search/files_8.js | 8 - docs/search/files_9.html | 30 - docs/search/files_9.js | 6 - docs/search/files_a.html | 30 - docs/search/files_a.js | 4 - docs/search/files_b.html | 30 - docs/search/files_b.js | 7 - docs/search/files_c.html | 30 - docs/search/files_c.js | 4 - docs/search/files_d.html | 30 - docs/search/files_d.js | 7 - docs/search/functions_0.html | 30 - docs/search/functions_0.js | 7 - docs/search/functions_1.html | 30 - docs/search/functions_1.js | 11 - docs/search/functions_10.html | 30 - docs/search/functions_10.js | 11 - docs/search/functions_11.html | 30 - docs/search/functions_11.js | 11 - docs/search/functions_2.html | 30 - docs/search/functions_2.js | 5 - docs/search/functions_3.html | 30 - docs/search/functions_3.js | 4 - docs/search/functions_4.html | 30 - docs/search/functions_4.js | 20 - docs/search/functions_5.html | 30 - docs/search/functions_5.js | 13 - docs/search/functions_6.html | 30 - docs/search/functions_6.js | 6 - docs/search/functions_7.html | 30 - docs/search/functions_7.js | 4 - docs/search/functions_8.html | 30 - docs/search/functions_8.js | 4 - docs/search/functions_9.html | 30 - docs/search/functions_9.js | 10 - docs/search/functions_a.html | 30 - docs/search/functions_a.js | 7 - docs/search/functions_b.html | 30 - docs/search/functions_b.js | 8 - docs/search/functions_c.html | 30 - docs/search/functions_c.js | 8 - docs/search/functions_d.html | 30 - docs/search/functions_d.js | 5 - docs/search/functions_e.html | 30 - docs/search/functions_e.js | 5 - docs/search/functions_f.html | 30 - docs/search/functions_f.js | 4 - docs/search/mag_sel.png | Bin 465 -> 0 bytes docs/search/namespaces_0.html | 30 - docs/search/namespaces_0.js | 6 - docs/search/nomatches.html | 12 - docs/search/pages_0.html | 30 - docs/search/pages_0.js | 4 - docs/search/related_0.html | 30 - docs/search/related_0.js | 4 - docs/search/related_1.html | 30 - docs/search/related_1.js | 4 - docs/search/search.css | 271 --- docs/search/search.js | 814 -------- docs/search/search_l.png | Bin 567 -> 0 bytes docs/search/search_m.png | Bin 158 -> 0 bytes docs/search/search_r.png | Bin 553 -> 0 bytes docs/search/searchdata.js | 45 - docs/search/typedefs_0.html | 30 - docs/search/typedefs_0.js | 4 - docs/search/variables_0.html | 30 - docs/search/variables_0.js | 4 - docs/search/variables_1.html | 30 - docs/search/variables_1.js | 4 - docs/search/variables_2.html | 30 - docs/search/variables_2.js | 4 - docs/search/variables_3.html | 30 - docs/search/variables_3.js | 4 - docs/search/variables_4.html | 30 - docs/search/variables_4.js | 4 - docs/search/variables_5.html | 30 - docs/search/variables_5.js | 5 - docs/search/variables_6.html | 30 - docs/search/variables_6.js | 4 - docs/splitbar.png | Bin 290 -> 0 bytes ...uctHazelnp_1_1ParamConstraint-members.html | 108 - docs/structHazelnp_1_1ParamConstraint.html | 743 ------- ...azelnp_1_1ParamConstraint__coll__graph.map | 6 - ...azelnp_1_1ParamConstraint__coll__graph.md5 | 1 - ...azelnp_1_1ParamConstraint__coll__graph.png | Bin 11319 -> 0 bytes docs/structParamConstraint-members.html | 97 - docs/structParamConstraint.html | 455 ----- docs/structParamConstraint__coll__graph.map | 6 - docs/structParamConstraint__coll__graph.md5 | 1 - docs/structParamConstraint__coll__graph.png | Bin 13567 -> 0 bytes docs/sync_off.png | Bin 820 -> 0 bytes docs/sync_on.png | Bin 808 -> 0 bytes docs/tab_a.png | Bin 143 -> 0 bytes docs/tab_b.png | Bin 158 -> 0 bytes docs/tab_h.png | Bin 157 -> 0 bytes docs/tab_s.png | Bin 170 -> 0 bytes docs/tabs.css | 1 - 674 files changed, 44511 deletions(-) delete mode 100644 docs/Abbreviations_8cpp.html delete mode 100644 docs/Abbreviations_8cpp__incl.map delete mode 100644 docs/Abbreviations_8cpp__incl.md5 delete mode 100644 docs/Abbreviations_8cpp__incl.png delete mode 100644 docs/Abbreviations_8cpp_source.html delete mode 100644 docs/Basics_8cpp.html delete mode 100644 docs/Basics_8cpp__incl.map delete mode 100644 docs/Basics_8cpp__incl.md5 delete mode 100644 docs/Basics_8cpp__incl.png delete mode 100644 docs/Basics_8cpp_source.html delete mode 100644 docs/CmdArgsInterface_8cpp.html delete mode 100644 docs/CmdArgsInterface_8cpp__incl.map delete mode 100644 docs/CmdArgsInterface_8cpp__incl.md5 delete mode 100644 docs/CmdArgsInterface_8cpp__incl.png delete mode 100644 docs/CmdArgsInterface_8cpp_source.html delete mode 100644 docs/CmdArgsInterface_8h.html delete mode 100644 docs/CmdArgsInterface_8h__dep__incl.map delete mode 100644 docs/CmdArgsInterface_8h__dep__incl.md5 delete mode 100644 docs/CmdArgsInterface_8h__dep__incl.png delete mode 100644 docs/CmdArgsInterface_8h__incl.map delete mode 100644 docs/CmdArgsInterface_8h__incl.md5 delete mode 100644 docs/CmdArgsInterface_8h__incl.png delete mode 100644 docs/CmdArgsInterface_8h_source.html delete mode 100644 docs/Constraints_8cpp.html delete mode 100644 docs/Constraints_8cpp__incl.map delete mode 100644 docs/Constraints_8cpp__incl.md5 delete mode 100644 docs/Constraints_8cpp__incl.png delete mode 100644 docs/Constraints_8cpp_source.html delete mode 100644 docs/Conversion_8cpp.html delete mode 100644 docs/Conversion_8cpp__incl.map delete mode 100644 docs/Conversion_8cpp__incl.md5 delete mode 100644 docs/Conversion_8cpp__incl.png delete mode 100644 docs/Conversion_8cpp_source.html delete mode 100644 docs/DataType_8h.html delete mode 100644 docs/DataType_8h__dep__incl.map delete mode 100644 docs/DataType_8h__dep__incl.md5 delete mode 100644 docs/DataType_8h__dep__incl.png delete mode 100644 docs/DataType_8h__incl.map delete mode 100644 docs/DataType_8h__incl.md5 delete mode 100644 docs/DataType_8h__incl.png delete mode 100644 docs/DataType_8h_source.html delete mode 100644 docs/Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html delete mode 100644 docs/Debug_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html delete mode 100644 docs/FloatValue_8cpp.html delete mode 100644 docs/FloatValue_8cpp__incl.map delete mode 100644 docs/FloatValue_8cpp__incl.md5 delete mode 100644 docs/FloatValue_8cpp__incl.png delete mode 100644 docs/FloatValue_8cpp_source.html delete mode 100644 docs/FloatValue_8h.html delete mode 100644 docs/FloatValue_8h__dep__incl.map delete mode 100644 docs/FloatValue_8h__dep__incl.md5 delete mode 100644 docs/FloatValue_8h__dep__incl.png delete mode 100644 docs/FloatValue_8h__incl.map delete mode 100644 docs/FloatValue_8h__incl.md5 delete mode 100644 docs/FloatValue_8h__incl.png delete mode 100644 docs/FloatValue_8h_source.html delete mode 100644 docs/HazelnuppException_8h.html delete mode 100644 docs/HazelnuppException_8h__dep__incl.map delete mode 100644 docs/HazelnuppException_8h__dep__incl.md5 delete mode 100644 docs/HazelnuppException_8h__dep__incl.png delete mode 100644 docs/HazelnuppException_8h__incl.map delete mode 100644 docs/HazelnuppException_8h__incl.md5 delete mode 100644 docs/HazelnuppException_8h__incl.png delete mode 100644 docs/HazelnuppException_8h_source.html delete mode 100644 docs/Hazelnupp_8cpp.html delete mode 100644 docs/Hazelnupp_8cpp__incl.map delete mode 100644 docs/Hazelnupp_8cpp__incl.md5 delete mode 100644 docs/Hazelnupp_8cpp__incl.png delete mode 100644 docs/Hazelnupp_8cpp_source.html delete mode 100644 docs/Hazelnupp_8h.html delete mode 100644 docs/Hazelnupp_8h__dep__incl.map delete mode 100644 docs/Hazelnupp_8h__dep__incl.md5 delete mode 100644 docs/Hazelnupp_8h__dep__incl.png delete mode 100644 docs/Hazelnupp_8h__incl.map delete mode 100644 docs/Hazelnupp_8h__incl.md5 delete mode 100644 docs/Hazelnupp_8h__incl.png delete mode 100644 docs/Hazelnupp_8h_source.html delete mode 100644 docs/IntValue_8cpp.html delete mode 100644 docs/IntValue_8cpp__incl.map delete mode 100644 docs/IntValue_8cpp__incl.md5 delete mode 100644 docs/IntValue_8cpp__incl.png delete mode 100644 docs/IntValue_8cpp_source.html delete mode 100644 docs/IntValue_8h.html delete mode 100644 docs/IntValue_8h__dep__incl.map delete mode 100644 docs/IntValue_8h__dep__incl.md5 delete mode 100644 docs/IntValue_8h__dep__incl.png delete mode 100644 docs/IntValue_8h__incl.map delete mode 100644 docs/IntValue_8h__incl.md5 delete mode 100644 docs/IntValue_8h__incl.png delete mode 100644 docs/IntValue_8h_source.html delete mode 100644 docs/ListValue_8cpp.html delete mode 100644 docs/ListValue_8cpp__incl.map delete mode 100644 docs/ListValue_8cpp__incl.md5 delete mode 100644 docs/ListValue_8cpp__incl.png delete mode 100644 docs/ListValue_8cpp_source.html delete mode 100644 docs/ListValue_8h.html delete mode 100644 docs/ListValue_8h__dep__incl.map delete mode 100644 docs/ListValue_8h__dep__incl.md5 delete mode 100644 docs/ListValue_8h__dep__incl.png delete mode 100644 docs/ListValue_8h__incl.map delete mode 100644 docs/ListValue_8h__incl.md5 delete mode 100644 docs/ListValue_8h__incl.png delete mode 100644 docs/ListValue_8h_source.html delete mode 100644 docs/ParamConstraint_8h.html delete mode 100644 docs/ParamConstraint_8h__dep__incl.map delete mode 100644 docs/ParamConstraint_8h__dep__incl.md5 delete mode 100644 docs/ParamConstraint_8h__dep__incl.png delete mode 100644 docs/ParamConstraint_8h__incl.map delete mode 100644 docs/ParamConstraint_8h__incl.md5 delete mode 100644 docs/ParamConstraint_8h__incl.png delete mode 100644 docs/ParamConstraint_8h_source.html delete mode 100644 docs/Parameter_8cpp.html delete mode 100644 docs/Parameter_8cpp__incl.map delete mode 100644 docs/Parameter_8cpp__incl.md5 delete mode 100644 docs/Parameter_8cpp__incl.png delete mode 100644 docs/Parameter_8cpp_source.html delete mode 100644 docs/Parameter_8h.html delete mode 100644 docs/Parameter_8h__dep__incl.map delete mode 100644 docs/Parameter_8h__dep__incl.md5 delete mode 100644 docs/Parameter_8h__dep__incl.png delete mode 100644 docs/Parameter_8h__incl.map delete mode 100644 docs/Parameter_8h__incl.md5 delete mode 100644 docs/Parameter_8h__incl.png delete mode 100644 docs/Parameter_8h_source.html delete mode 100644 docs/Placeholders_8h.html delete mode 100644 docs/Placeholders_8h__dep__incl.map delete mode 100644 docs/Placeholders_8h__dep__incl.md5 delete mode 100644 docs/Placeholders_8h__dep__incl.png delete mode 100644 docs/Placeholders_8h__incl.map delete mode 100644 docs/Placeholders_8h__incl.md5 delete mode 100644 docs/Placeholders_8h__incl.png delete mode 100644 docs/Placeholders_8h_source.html delete mode 100644 docs/Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html delete mode 100644 docs/Release_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html delete mode 100644 docs/StringTools_8cpp.html delete mode 100644 docs/StringTools_8cpp__incl.map delete mode 100644 docs/StringTools_8cpp__incl.md5 delete mode 100644 docs/StringTools_8cpp__incl.png delete mode 100644 docs/StringTools_8cpp_source.html delete mode 100644 docs/StringTools_8h.html delete mode 100644 docs/StringTools_8h__dep__incl.map delete mode 100644 docs/StringTools_8h__dep__incl.md5 delete mode 100644 docs/StringTools_8h__dep__incl.png delete mode 100644 docs/StringTools_8h__incl.map delete mode 100644 docs/StringTools_8h__incl.md5 delete mode 100644 docs/StringTools_8h__incl.png delete mode 100644 docs/StringTools_8h_source.html delete mode 100644 docs/StringValue_8cpp.html delete mode 100644 docs/StringValue_8cpp__incl.map delete mode 100644 docs/StringValue_8cpp__incl.md5 delete mode 100644 docs/StringValue_8cpp__incl.png delete mode 100644 docs/StringValue_8cpp_source.html delete mode 100644 docs/StringValue_8h.html delete mode 100644 docs/StringValue_8h__dep__incl.map delete mode 100644 docs/StringValue_8h__dep__incl.md5 delete mode 100644 docs/StringValue_8h__dep__incl.png delete mode 100644 docs/StringValue_8h__incl.map delete mode 100644 docs/StringValue_8h__incl.md5 delete mode 100644 docs/StringValue_8h__incl.png delete mode 100644 docs/StringValue_8h_source.html delete mode 100644 docs/Value_8cpp.html delete mode 100644 docs/Value_8cpp__incl.map delete mode 100644 docs/Value_8cpp__incl.md5 delete mode 100644 docs/Value_8cpp__incl.png delete mode 100644 docs/Value_8cpp_source.html delete mode 100644 docs/Value_8h.html delete mode 100644 docs/Value_8h__dep__incl.map delete mode 100644 docs/Value_8h__dep__incl.md5 delete mode 100644 docs/Value_8h__dep__incl.png delete mode 100644 docs/Value_8h__incl.map delete mode 100644 docs/Value_8h__incl.md5 delete mode 100644 docs/Value_8h__incl.png delete mode 100644 docs/Value_8h_source.html delete mode 100644 docs/Version_8h.html delete mode 100644 docs/Version_8h__dep__incl.map delete mode 100644 docs/Version_8h__dep__incl.md5 delete mode 100644 docs/Version_8h__dep__incl.png delete mode 100644 docs/Version_8h_source.html delete mode 100644 docs/VoidValue_8cpp.html delete mode 100644 docs/VoidValue_8cpp__incl.map delete mode 100644 docs/VoidValue_8cpp__incl.md5 delete mode 100644 docs/VoidValue_8cpp__incl.png delete mode 100644 docs/VoidValue_8cpp_source.html delete mode 100644 docs/VoidValue_8h.html delete mode 100644 docs/VoidValue_8h__dep__incl.map delete mode 100644 docs/VoidValue_8h__dep__incl.md5 delete mode 100644 docs/VoidValue_8h__dep__incl.png delete mode 100644 docs/VoidValue_8h__incl.map delete mode 100644 docs/VoidValue_8h__incl.md5 delete mode 100644 docs/VoidValue_8h__incl.png delete mode 100644 docs/VoidValue_8h_source.html delete mode 100644 docs/annotated.html delete mode 100644 docs/bc_s.png delete mode 100644 docs/bdwn.png delete mode 100644 docs/classFloatValue-members.html delete mode 100644 docs/classFloatValue.html delete mode 100644 docs/classFloatValue__coll__graph.map delete mode 100644 docs/classFloatValue__coll__graph.md5 delete mode 100644 docs/classFloatValue__coll__graph.png delete mode 100644 docs/classFloatValue__inherit__graph.map delete mode 100644 docs/classFloatValue__inherit__graph.md5 delete mode 100644 docs/classFloatValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1CmdArgsInterface-members.html delete mode 100644 docs/classHazelnp_1_1CmdArgsInterface.html delete mode 100644 docs/classHazelnp_1_1FloatValue-members.html delete mode 100644 docs/classHazelnp_1_1FloatValue.html delete mode 100644 docs/classHazelnp_1_1FloatValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1FloatValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1FloatValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1FloatValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1FloatValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1FloatValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1Hazelnupp-members.html delete mode 100644 docs/classHazelnp_1_1Hazelnupp.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppException-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppException.html delete mode 100644 docs/classHazelnp_1_1HazelnuppException__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppException__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppException__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppException__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppException__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppException__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException.html delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException-members.html delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException.html delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.png delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1IntValue-members.html delete mode 100644 docs/classHazelnp_1_1IntValue.html delete mode 100644 docs/classHazelnp_1_1IntValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1IntValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1IntValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1IntValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1IntValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1IntValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1Internal_1_1StringTools-members.html delete mode 100644 docs/classHazelnp_1_1Internal_1_1StringTools.html delete mode 100644 docs/classHazelnp_1_1ListValue-members.html delete mode 100644 docs/classHazelnp_1_1ListValue.html delete mode 100644 docs/classHazelnp_1_1ListValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1ListValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1ListValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1ListValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1ListValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1ListValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1Parameter-members.html delete mode 100644 docs/classHazelnp_1_1Parameter.html delete mode 100644 docs/classHazelnp_1_1StringTools-members.html delete mode 100644 docs/classHazelnp_1_1StringTools.html delete mode 100644 docs/classHazelnp_1_1StringValue-members.html delete mode 100644 docs/classHazelnp_1_1StringValue.html delete mode 100644 docs/classHazelnp_1_1StringValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1StringValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1StringValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1StringValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1StringValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1StringValue__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1Value-members.html delete mode 100644 docs/classHazelnp_1_1Value.html delete mode 100644 docs/classHazelnp_1_1Value__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1Value__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1Value__inherit__graph.png delete mode 100644 docs/classHazelnp_1_1VoidValue-members.html delete mode 100644 docs/classHazelnp_1_1VoidValue.html delete mode 100644 docs/classHazelnp_1_1VoidValue__coll__graph.map delete mode 100644 docs/classHazelnp_1_1VoidValue__coll__graph.md5 delete mode 100644 docs/classHazelnp_1_1VoidValue__coll__graph.png delete mode 100644 docs/classHazelnp_1_1VoidValue__inherit__graph.map delete mode 100644 docs/classHazelnp_1_1VoidValue__inherit__graph.md5 delete mode 100644 docs/classHazelnp_1_1VoidValue__inherit__graph.png delete mode 100644 docs/classHazelnupp-members.html delete mode 100644 docs/classHazelnupp.html delete mode 100644 docs/classHazelnuppConstraintException-members.html delete mode 100644 docs/classHazelnuppConstraintException.html delete mode 100644 docs/classHazelnuppConstraintException__coll__graph.map delete mode 100644 docs/classHazelnuppConstraintException__coll__graph.md5 delete mode 100644 docs/classHazelnuppConstraintException__coll__graph.png delete mode 100644 docs/classHazelnuppConstraintException__inherit__graph.map delete mode 100644 docs/classHazelnuppConstraintException__inherit__graph.md5 delete mode 100644 docs/classHazelnuppConstraintException__inherit__graph.png delete mode 100644 docs/classHazelnuppConstraintMissingValue-members.html delete mode 100644 docs/classHazelnuppConstraintMissingValue.html delete mode 100644 docs/classHazelnuppConstraintMissingValue__coll__graph.map delete mode 100644 docs/classHazelnuppConstraintMissingValue__coll__graph.md5 delete mode 100644 docs/classHazelnuppConstraintMissingValue__coll__graph.png delete mode 100644 docs/classHazelnuppConstraintMissingValue__inherit__graph.map delete mode 100644 docs/classHazelnuppConstraintMissingValue__inherit__graph.md5 delete mode 100644 docs/classHazelnuppConstraintMissingValue__inherit__graph.png delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch-members.html delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch.html delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__coll__graph.map delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__coll__graph.md5 delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__coll__graph.png delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.map delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.md5 delete mode 100644 docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.png delete mode 100644 docs/classHazelnuppException-members.html delete mode 100644 docs/classHazelnuppException.html delete mode 100644 docs/classHazelnuppException__coll__graph.map delete mode 100644 docs/classHazelnuppException__coll__graph.md5 delete mode 100644 docs/classHazelnuppException__coll__graph.png delete mode 100644 docs/classHazelnuppException__inherit__graph.map delete mode 100644 docs/classHazelnuppException__inherit__graph.md5 delete mode 100644 docs/classHazelnuppException__inherit__graph.png delete mode 100644 docs/classHazelnuppInvalidKeyException-members.html delete mode 100644 docs/classHazelnuppInvalidKeyException.html delete mode 100644 docs/classHazelnuppInvalidKeyException__coll__graph.map delete mode 100644 docs/classHazelnuppInvalidKeyException__coll__graph.md5 delete mode 100644 docs/classHazelnuppInvalidKeyException__coll__graph.png delete mode 100644 docs/classHazelnuppInvalidKeyException__inherit__graph.map delete mode 100644 docs/classHazelnuppInvalidKeyException__inherit__graph.md5 delete mode 100644 docs/classHazelnuppInvalidKeyException__inherit__graph.png delete mode 100644 docs/classHazelnuppValueNotConvertibleException-members.html delete mode 100644 docs/classHazelnuppValueNotConvertibleException.html delete mode 100644 docs/classHazelnuppValueNotConvertibleException__coll__graph.map delete mode 100644 docs/classHazelnuppValueNotConvertibleException__coll__graph.md5 delete mode 100644 docs/classHazelnuppValueNotConvertibleException__coll__graph.png delete mode 100644 docs/classHazelnuppValueNotConvertibleException__inherit__graph.map delete mode 100644 docs/classHazelnuppValueNotConvertibleException__inherit__graph.md5 delete mode 100644 docs/classHazelnuppValueNotConvertibleException__inherit__graph.png delete mode 100644 docs/classIntValue-members.html delete mode 100644 docs/classIntValue.html delete mode 100644 docs/classIntValue__coll__graph.map delete mode 100644 docs/classIntValue__coll__graph.md5 delete mode 100644 docs/classIntValue__coll__graph.png delete mode 100644 docs/classIntValue__inherit__graph.map delete mode 100644 docs/classIntValue__inherit__graph.md5 delete mode 100644 docs/classIntValue__inherit__graph.png delete mode 100644 docs/classListValue-members.html delete mode 100644 docs/classListValue.html delete mode 100644 docs/classListValue__coll__graph.map delete mode 100644 docs/classListValue__coll__graph.md5 delete mode 100644 docs/classListValue__coll__graph.png delete mode 100644 docs/classListValue__inherit__graph.map delete mode 100644 docs/classListValue__inherit__graph.md5 delete mode 100644 docs/classListValue__inherit__graph.png delete mode 100644 docs/classParameter-members.html delete mode 100644 docs/classParameter.html delete mode 100644 docs/classStringTools-members.html delete mode 100644 docs/classStringTools.html delete mode 100644 docs/classStringValue-members.html delete mode 100644 docs/classStringValue.html delete mode 100644 docs/classStringValue__coll__graph.map delete mode 100644 docs/classStringValue__coll__graph.md5 delete mode 100644 docs/classStringValue__coll__graph.png delete mode 100644 docs/classStringValue__inherit__graph.map delete mode 100644 docs/classStringValue__inherit__graph.md5 delete mode 100644 docs/classStringValue__inherit__graph.png delete mode 100644 docs/classValue-members.html delete mode 100644 docs/classValue.html delete mode 100644 docs/classValue__inherit__graph.map delete mode 100644 docs/classValue__inherit__graph.md5 delete mode 100644 docs/classValue__inherit__graph.png delete mode 100644 docs/classVoidValue-members.html delete mode 100644 docs/classVoidValue.html delete mode 100644 docs/classVoidValue__coll__graph.map delete mode 100644 docs/classVoidValue__coll__graph.md5 delete mode 100644 docs/classVoidValue__coll__graph.png delete mode 100644 docs/classVoidValue__inherit__graph.map delete mode 100644 docs/classVoidValue__inherit__graph.md5 delete mode 100644 docs/classVoidValue__inherit__graph.png delete mode 100644 docs/classes.html delete mode 100644 docs/closed.png delete mode 100644 docs/dir_000003_000000.html delete mode 100644 docs/dir_0202e1e26df2e040f4dc3d434eecf04c.html delete mode 100644 docs/dir_0c3d7a8ae27c1a80e1a2e78f7c177a7d.html delete mode 100644 docs/dir_0cc5f59b28c403d42cc56800132eb975.html delete mode 100644 docs/dir_1148ebc2b25b55095aebf6f4cbb6efca.html delete mode 100644 docs/dir_5c0eadceca12ef8285078e2e738769ee.html delete mode 100644 docs/dir_a4e10305c1b03e566e1d27ef3ea61492.html delete mode 100644 docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.map delete mode 100644 docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.md5 delete mode 100644 docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.png delete mode 100644 docs/dir_a8cffda729361e9d9637effa362fcea9.html delete mode 100644 docs/doc.png delete mode 100644 docs/doxygen.css delete mode 100644 docs/doxygen.png delete mode 100644 docs/dynsections.js delete mode 100644 docs/files.html delete mode 100644 docs/folderclosed.png delete mode 100644 docs/folderopen.png delete mode 100644 docs/functions.html delete mode 100644 docs/functions_func.html delete mode 100644 docs/functions_rela.html delete mode 100644 docs/functions_vars.html delete mode 100644 docs/globals.html delete mode 100644 docs/globals_defs.html delete mode 100644 docs/globals_enum.html delete mode 100644 docs/globals_func.html delete mode 100644 docs/globals_type.html delete mode 100644 docs/graph_legend.html delete mode 100644 docs/graph_legend.md5 delete mode 100644 docs/graph_legend.png delete mode 100644 docs/helper_8h.html delete mode 100644 docs/helper_8h__dep__incl.map delete mode 100644 docs/helper_8h__dep__incl.md5 delete mode 100644 docs/helper_8h__dep__incl.png delete mode 100644 docs/helper_8h__incl.map delete mode 100644 docs/helper_8h__incl.md5 delete mode 100644 docs/helper_8h__incl.png delete mode 100644 docs/helper_8h_source.html delete mode 100644 docs/hierarchy.html delete mode 100644 docs/index.html delete mode 100644 docs/index_8md.html delete mode 100644 docs/inherit_graph_0.map delete mode 100644 docs/inherit_graph_0.md5 delete mode 100644 docs/inherit_graph_0.png delete mode 100644 docs/inherit_graph_1.map delete mode 100644 docs/inherit_graph_1.md5 delete mode 100644 docs/inherit_graph_1.png delete mode 100644 docs/inherit_graph_2.map delete mode 100644 docs/inherit_graph_2.md5 delete mode 100644 docs/inherit_graph_2.png delete mode 100644 docs/inherit_graph_3.map delete mode 100644 docs/inherit_graph_3.md5 delete mode 100644 docs/inherit_graph_3.png delete mode 100644 docs/inherit_graph_4.map delete mode 100644 docs/inherit_graph_4.md5 delete mode 100644 docs/inherit_graph_4.png delete mode 100644 docs/inherit_graph_5.map delete mode 100644 docs/inherit_graph_5.md5 delete mode 100644 docs/inherit_graph_5.png delete mode 100644 docs/inherits.html delete mode 100644 docs/jquery.js delete mode 100644 docs/main_8cpp.html delete mode 100644 docs/main_8cpp__incl.map delete mode 100644 docs/main_8cpp__incl.md5 delete mode 100644 docs/main_8cpp__incl.png delete mode 100644 docs/main_8cpp_source.html delete mode 100644 docs/md_Doxygen_index.html delete mode 100644 docs/menu.js delete mode 100644 docs/menudata.js delete mode 100644 docs/namespaceHazelnp.html delete mode 100644 docs/namespaceHazelnp_1_1Internal.html delete mode 100644 docs/namespaceHazelnp_1_1Placeholders.html delete mode 100644 docs/namespaceTestHazelnupp.html delete mode 100644 docs/namespacemembers.html delete mode 100644 docs/namespacemembers_enum.html delete mode 100644 docs/namespacemembers_func.html delete mode 100644 docs/namespacemembers_vars.html delete mode 100644 docs/namespaces.html delete mode 100644 docs/nav_f.png delete mode 100644 docs/nav_g.png delete mode 100644 docs/nav_h.png delete mode 100644 docs/nupp_small.png delete mode 100644 docs/open.png delete mode 100644 docs/pages.html delete mode 100644 docs/readme_8md.html delete mode 100644 docs/search/all_0.html delete mode 100644 docs/search/all_0.js delete mode 100644 docs/search/all_1.html delete mode 100644 docs/search/all_1.js delete mode 100644 docs/search/all_10.html delete mode 100644 docs/search/all_10.js delete mode 100644 docs/search/all_11.html delete mode 100644 docs/search/all_11.js delete mode 100644 docs/search/all_12.html delete mode 100644 docs/search/all_12.js delete mode 100644 docs/search/all_2.html delete mode 100644 docs/search/all_2.js delete mode 100644 docs/search/all_3.html delete mode 100644 docs/search/all_3.js delete mode 100644 docs/search/all_4.html delete mode 100644 docs/search/all_4.js delete mode 100644 docs/search/all_5.html delete mode 100644 docs/search/all_5.js delete mode 100644 docs/search/all_6.html delete mode 100644 docs/search/all_6.js delete mode 100644 docs/search/all_7.html delete mode 100644 docs/search/all_7.js delete mode 100644 docs/search/all_8.html delete mode 100644 docs/search/all_8.js delete mode 100644 docs/search/all_9.html delete mode 100644 docs/search/all_9.js delete mode 100644 docs/search/all_a.html delete mode 100644 docs/search/all_a.js delete mode 100644 docs/search/all_b.html delete mode 100644 docs/search/all_b.js delete mode 100644 docs/search/all_c.html delete mode 100644 docs/search/all_c.js delete mode 100644 docs/search/all_d.html delete mode 100644 docs/search/all_d.js delete mode 100644 docs/search/all_e.html delete mode 100644 docs/search/all_e.js delete mode 100644 docs/search/all_f.html delete mode 100644 docs/search/all_f.js delete mode 100644 docs/search/classes_0.html delete mode 100644 docs/search/classes_0.js delete mode 100644 docs/search/classes_1.html delete mode 100644 docs/search/classes_1.js delete mode 100644 docs/search/classes_2.html delete mode 100644 docs/search/classes_2.js delete mode 100644 docs/search/classes_3.html delete mode 100644 docs/search/classes_3.js delete mode 100644 docs/search/classes_4.html delete mode 100644 docs/search/classes_4.js delete mode 100644 docs/search/classes_5.html delete mode 100644 docs/search/classes_5.js delete mode 100644 docs/search/classes_6.html delete mode 100644 docs/search/classes_6.js delete mode 100644 docs/search/classes_7.html delete mode 100644 docs/search/classes_7.js delete mode 100644 docs/search/close.png delete mode 100644 docs/search/defines_0.html delete mode 100644 docs/search/defines_0.js delete mode 100644 docs/search/enums_0.html delete mode 100644 docs/search/enums_0.js delete mode 100644 docs/search/enumvalues_0.html delete mode 100644 docs/search/enumvalues_0.js delete mode 100644 docs/search/enumvalues_1.html delete mode 100644 docs/search/enumvalues_1.js delete mode 100644 docs/search/enumvalues_2.html delete mode 100644 docs/search/enumvalues_2.js delete mode 100644 docs/search/enumvalues_3.html delete mode 100644 docs/search/enumvalues_3.js delete mode 100644 docs/search/enumvalues_4.html delete mode 100644 docs/search/enumvalues_4.js delete mode 100644 docs/search/files_0.html delete mode 100644 docs/search/files_0.js delete mode 100644 docs/search/files_1.html delete mode 100644 docs/search/files_1.js delete mode 100644 docs/search/files_2.html delete mode 100644 docs/search/files_2.js delete mode 100644 docs/search/files_3.html delete mode 100644 docs/search/files_3.js delete mode 100644 docs/search/files_4.html delete mode 100644 docs/search/files_4.js delete mode 100644 docs/search/files_5.html delete mode 100644 docs/search/files_5.js delete mode 100644 docs/search/files_6.html delete mode 100644 docs/search/files_6.js delete mode 100644 docs/search/files_7.html delete mode 100644 docs/search/files_7.js delete mode 100644 docs/search/files_8.html delete mode 100644 docs/search/files_8.js delete mode 100644 docs/search/files_9.html delete mode 100644 docs/search/files_9.js delete mode 100644 docs/search/files_a.html delete mode 100644 docs/search/files_a.js delete mode 100644 docs/search/files_b.html delete mode 100644 docs/search/files_b.js delete mode 100644 docs/search/files_c.html delete mode 100644 docs/search/files_c.js delete mode 100644 docs/search/files_d.html delete mode 100644 docs/search/files_d.js delete mode 100644 docs/search/functions_0.html delete mode 100644 docs/search/functions_0.js delete mode 100644 docs/search/functions_1.html delete mode 100644 docs/search/functions_1.js delete mode 100644 docs/search/functions_10.html delete mode 100644 docs/search/functions_10.js delete mode 100644 docs/search/functions_11.html delete mode 100644 docs/search/functions_11.js delete mode 100644 docs/search/functions_2.html delete mode 100644 docs/search/functions_2.js delete mode 100644 docs/search/functions_3.html delete mode 100644 docs/search/functions_3.js delete mode 100644 docs/search/functions_4.html delete mode 100644 docs/search/functions_4.js delete mode 100644 docs/search/functions_5.html delete mode 100644 docs/search/functions_5.js delete mode 100644 docs/search/functions_6.html delete mode 100644 docs/search/functions_6.js delete mode 100644 docs/search/functions_7.html delete mode 100644 docs/search/functions_7.js delete mode 100644 docs/search/functions_8.html delete mode 100644 docs/search/functions_8.js delete mode 100644 docs/search/functions_9.html delete mode 100644 docs/search/functions_9.js delete mode 100644 docs/search/functions_a.html delete mode 100644 docs/search/functions_a.js delete mode 100644 docs/search/functions_b.html delete mode 100644 docs/search/functions_b.js delete mode 100644 docs/search/functions_c.html delete mode 100644 docs/search/functions_c.js delete mode 100644 docs/search/functions_d.html delete mode 100644 docs/search/functions_d.js delete mode 100644 docs/search/functions_e.html delete mode 100644 docs/search/functions_e.js delete mode 100644 docs/search/functions_f.html delete mode 100644 docs/search/functions_f.js delete mode 100644 docs/search/mag_sel.png delete mode 100644 docs/search/namespaces_0.html delete mode 100644 docs/search/namespaces_0.js delete mode 100644 docs/search/nomatches.html delete mode 100644 docs/search/pages_0.html delete mode 100644 docs/search/pages_0.js delete mode 100644 docs/search/related_0.html delete mode 100644 docs/search/related_0.js delete mode 100644 docs/search/related_1.html delete mode 100644 docs/search/related_1.js delete mode 100644 docs/search/search.css delete mode 100644 docs/search/search.js delete mode 100644 docs/search/search_l.png delete mode 100644 docs/search/search_m.png delete mode 100644 docs/search/search_r.png delete mode 100644 docs/search/searchdata.js delete mode 100644 docs/search/typedefs_0.html delete mode 100644 docs/search/typedefs_0.js delete mode 100644 docs/search/variables_0.html delete mode 100644 docs/search/variables_0.js delete mode 100644 docs/search/variables_1.html delete mode 100644 docs/search/variables_1.js delete mode 100644 docs/search/variables_2.html delete mode 100644 docs/search/variables_2.js delete mode 100644 docs/search/variables_3.html delete mode 100644 docs/search/variables_3.js delete mode 100644 docs/search/variables_4.html delete mode 100644 docs/search/variables_4.js delete mode 100644 docs/search/variables_5.html delete mode 100644 docs/search/variables_5.js delete mode 100644 docs/search/variables_6.html delete mode 100644 docs/search/variables_6.js delete mode 100644 docs/splitbar.png delete mode 100644 docs/structHazelnp_1_1ParamConstraint-members.html delete mode 100644 docs/structHazelnp_1_1ParamConstraint.html delete mode 100644 docs/structHazelnp_1_1ParamConstraint__coll__graph.map delete mode 100644 docs/structHazelnp_1_1ParamConstraint__coll__graph.md5 delete mode 100644 docs/structHazelnp_1_1ParamConstraint__coll__graph.png delete mode 100644 docs/structParamConstraint-members.html delete mode 100644 docs/structParamConstraint.html delete mode 100644 docs/structParamConstraint__coll__graph.map delete mode 100644 docs/structParamConstraint__coll__graph.md5 delete mode 100644 docs/structParamConstraint__coll__graph.png delete mode 100644 docs/sync_off.png delete mode 100644 docs/sync_on.png delete mode 100644 docs/tab_a.png delete mode 100644 docs/tab_b.png delete mode 100644 docs/tab_h.png delete mode 100644 docs/tab_s.png delete mode 100644 docs/tabs.css diff --git a/docs/Abbreviations_8cpp.html b/docs/Abbreviations_8cpp.html deleted file mode 100644 index 7d3bbee..0000000 --- a/docs/Abbreviations_8cpp.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Abbreviations.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Namespaces | -Functions
-
-
Abbreviations.cpp File Reference
-
-
-
#include "CppUnitTest.h"
-#include "helper.h"
-#include "../Hazelnupp/Hazelnupp.h"
-
-Include dependency graph for Abbreviations.cpp:
-
-
- - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Namespaces

 TestHazelnupp
 
- - - -

-Functions

 TestHazelnupp::TEST_CLASS (_Abbreviations)
 
-
- - - - diff --git a/docs/Abbreviations_8cpp__incl.map b/docs/Abbreviations_8cpp__incl.map deleted file mode 100644 index 3063684..0000000 --- a/docs/Abbreviations_8cpp__incl.map +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/docs/Abbreviations_8cpp__incl.md5 b/docs/Abbreviations_8cpp__incl.md5 deleted file mode 100644 index deb98ee..0000000 --- a/docs/Abbreviations_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -104f1fc85c82d50f566784751bc221be \ No newline at end of file diff --git a/docs/Abbreviations_8cpp__incl.png b/docs/Abbreviations_8cpp__incl.png deleted file mode 100644 index 3ec6bc2b4cb5c5eeb4e9cf41711bde7d9b7c085f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34023 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 LKQDax#`pgKB}~1u diff --git a/docs/Abbreviations_8cpp_source.html b/docs/Abbreviations_8cpp_source.html deleted file mode 100644 index 5cc7ecb..0000000 --- a/docs/Abbreviations_8cpp_source.html +++ /dev/null @@ -1,262 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Abbreviations.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Abbreviations.cpp
-
-
-Go to the documentation of this file.
1 #include "CppUnitTest.h"
-
2 #include "helper.h"
-
3 #include "../Hazelnupp/Hazelnupp.h"
-
4 
-
5 using namespace Microsoft::VisualStudio::CppUnitTestFramework;
-
6 
-
7 namespace TestHazelnupp
-
8 {
-
9  TEST_CLASS(_Abbreviations)
-
10  {
-
11  public:
-
12 
-
13  // Tests keys exist after parsing
-
14  TEST_METHOD(KeysExist)
-
15  {
-
16  // Setup
-
17  ArgList args({
-
18  "/my/fake/path/wahoo.out",
-
19  "-ms",
-
20  "billybob",
-
21  "-mv",
-
22  "-mf",
-
23  "-23.199",
-
24  "-mi",
-
25  "199",
-
26  "-mnl",
-
27  "1",
-
28  "2",
-
29  "3",
-
30  "4",
-
31  "-msl",
-
32  "apple",
-
33  "banana",
-
34  "pumpkin",
-
35  });
-
36 
-
37  // Exercise
-
38  Hazelnupp nupp;
-
39  nupp.SetCrashOnFail(false);
-
40 
-
41  nupp.RegisterAbbreviation("-ms", "--my_string");
-
42  nupp.RegisterAbbreviation("-mv", "--my_void");
-
43  nupp.RegisterAbbreviation("-mi", "--my_int");
-
44  nupp.RegisterAbbreviation("-mf", "--my_float");
-
45  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
-
46  nupp.RegisterAbbreviation("-msl", "--my_str_list");
-
47 
-
48  nupp.Parse(C_Ify(args));
-
49 
-
50  // Verify
-
51  Assert::IsTrue(nupp.HasParam("--my_string"));
-
52  Assert::IsTrue(nupp.HasParam("--my_void"));
-
53  Assert::IsTrue(nupp.HasParam("--my_float"));
-
54  Assert::IsTrue(nupp.HasParam("--my_int"));
-
55  Assert::IsTrue(nupp.HasParam("--my_num_list"));
-
56  Assert::IsTrue(nupp.HasParam("--my_str_list"));
-
57 
-
58  return;
-
59  }
-
60 
-
61  // Tests keys are of the correct type after parsing
-
62  TEST_METHOD(CorrectType)
-
63  {
-
64  // Setup
-
65  ArgList args({
-
66  "/my/fake/path/wahoo.out",
-
67  "-ms",
-
68  "billybob",
-
69  "-mv",
-
70  "-mf",
-
71  "-23.199",
-
72  "-mi",
-
73  "199",
-
74  "-mnl",
-
75  "1",
-
76  "2",
-
77  "3",
-
78  "4",
-
79  "-msl",
-
80  "apple",
-
81  "banana",
-
82  "pumpkin",
-
83  });
-
84 
-
85  // Exercise
-
86  Hazelnupp nupp;
-
87  nupp.SetCrashOnFail(false);
-
88 
-
89  nupp.RegisterAbbreviation("-ms", "--my_string");
-
90  nupp.RegisterAbbreviation("-mv", "--my_void");
-
91  nupp.RegisterAbbreviation("-mi", "--my_int");
-
92  nupp.RegisterAbbreviation("-mf", "--my_float");
-
93  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
-
94  nupp.RegisterAbbreviation("-msl", "--my_str_list");
-
95 
-
96  nupp.Parse(C_Ify(args));
-
97 
-
98  // Verify
-
99  Assert::IsTrue(nupp["--my_string"].GetDataType() == DATA_TYPE::STRING);
-
100  Assert::IsTrue(nupp["--my_void"].GetDataType() == DATA_TYPE::VOID);
-
101  Assert::IsTrue(nupp["--my_float"].GetDataType() == DATA_TYPE::FLOAT);
-
102  Assert::IsTrue(nupp["--my_int"].GetDataType() == DATA_TYPE::INT);
-
103  Assert::IsTrue(nupp["--my_num_list"].GetDataType() == DATA_TYPE::LIST);
-
104  Assert::IsTrue(nupp["--my_str_list"].GetDataType() == DATA_TYPE::LIST);
-
105 
-
106  return;
-
107  }
-
108 
-
109  // Tests keys have the correct value after parsing
-
110  TEST_METHOD(CorrectValues)
-
111  {
-
112  // Setup
-
113  ArgList args({
-
114  "/my/fake/path/wahoo.out",
-
115  "-ms",
-
116  "billybob",
-
117  "-mv",
-
118  "-mf",
-
119  "-23.199",
-
120  "-mi",
-
121  "199",
-
122  "-mnl",
-
123  "1",
-
124  "2",
-
125  "3",
-
126  "4",
-
127  "-msl",
-
128  "apple",
-
129  "banana",
-
130  "pumpkin",
-
131  });
-
132 
-
133  // Exercise
-
134  Hazelnupp nupp;
-
135  nupp.SetCrashOnFail(false);
-
136 
-
137  nupp.RegisterAbbreviation("-ms", "--my_string");
-
138  nupp.RegisterAbbreviation("-mv", "--my_void");
-
139  nupp.RegisterAbbreviation("-mi", "--my_int");
-
140  nupp.RegisterAbbreviation("-mf", "--my_float");
-
141  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
-
142  nupp.RegisterAbbreviation("-msl", "--my_str_list");
-
143 
-
144  nupp.Parse(C_Ify(args));
-
145 
-
146  // Verify
-
147  Assert::AreEqual(nupp["--my_string"].GetString(), std::string("billybob"));
-
148  Assert::AreEqual(nupp["--my_float"].GetFloat32(), -23.199);
-
149  Assert::AreEqual(nupp["--my_int"].GetInt32(), 199);
-
150  Assert::AreEqual(nupp["--my_num_list"].GetList()[0]->GetInt32(), 1);
-
151  Assert::AreEqual(nupp["--my_num_list"].GetList()[1]->GetInt32(), 2);
-
152  Assert::AreEqual(nupp["--my_num_list"].GetList()[2]->GetInt32(), 3);
-
153  Assert::AreEqual(nupp["--my_num_list"].GetList()[3]->GetInt32(), 4);
-
154  Assert::AreEqual(nupp["--my_str_list"].GetList()[0]->GetString(), std::string("apple"));
-
155  Assert::AreEqual(nupp["--my_str_list"].GetList()[1]->GetString(), std::string("banana"));
-
156  Assert::AreEqual(nupp["--my_str_list"].GetList()[2]->GetString(), std::string("pumpkin"));
-
157 
-
158  return;
-
159  }
-
160  };
-
161 }
-
- - - - -
TEST_CLASS(_Abbreviations)
- -
#define C_Ify(vector)
Definition: helper.h:4
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
Definition: Hazelnupp.cpp:379
-
std::vector< const char * > ArgList
Definition: helper.h:6
- -
The main class to interface with.
Definition: Hazelnupp.h:9
- - - - - diff --git a/docs/Basics_8cpp.html b/docs/Basics_8cpp.html deleted file mode 100644 index c863d6c..0000000 --- a/docs/Basics_8cpp.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Basics.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Basics.cpp File Reference
-
-
-
#include "CppUnitTest.h"
-#include "helper.h"
-#include "../Hazelnupp/Hazelnupp.h"
-#include "../Hazelnupp/HazelnuppException.h"
-
-Include dependency graph for Basics.cpp:
-
-
- - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Namespaces

 TestHazelnupp
 
- - - -

-Functions

 TestHazelnupp::TEST_CLASS (_Basics)
 
-
- - - - diff --git a/docs/Basics_8cpp__incl.map b/docs/Basics_8cpp__incl.map deleted file mode 100644 index 26c89de..0000000 --- a/docs/Basics_8cpp__incl.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/Basics_8cpp__incl.md5 b/docs/Basics_8cpp__incl.md5 deleted file mode 100644 index 233d371..0000000 --- a/docs/Basics_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -7637a15ad95d868d907efc4ded5bee64 \ No newline at end of file diff --git a/docs/Basics_8cpp__incl.png b/docs/Basics_8cpp__incl.png deleted file mode 100644 index 7992a5a377e82772674fd169acd53098b414b7df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38184 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 gu)`3H1OFMMw-`mdKI;Vst00Ios3IG5A diff --git a/docs/Basics_8cpp_source.html b/docs/Basics_8cpp_source.html deleted file mode 100644 index c5e4d08..0000000 --- a/docs/Basics_8cpp_source.html +++ /dev/null @@ -1,350 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Basics.cpp Source File - - - - - - - - - - - - -
-
-
Basics.cpp
-
-
-Go to the documentation of this file.
1 #include "CppUnitTest.h"
-
2 #include "helper.h"
-
3 #include "../Hazelnupp/Hazelnupp.h"
-
4 #include "../Hazelnupp/HazelnuppException.h"
-
5 
-
6 using namespace Microsoft::VisualStudio::CppUnitTestFramework;
-
7 
-
8 namespace TestHazelnupp
-
9 {
-
10  TEST_CLASS(_Basics)
-
11  {
-
12  public:
-
13 
-
14  // Tests the application path gets exported correctly
-
15  TEST_METHOD(ApplicationPathWorks)
-
16  {
-
17  // Setup
-
18  ArgList args({
-
19  "/my/fake/path/wahoo.out"
-
20  });
-
21 
-
22  // Exercise
-
23  Hazelnupp nupp(C_Ify(args));
-
24  nupp.SetCrashOnFail(false);
-
25 
-
26  // Verify
-
27  Assert::AreEqual(std::string("/my/fake/path/wahoo.out"), nupp.GetExecutableName());
-
28 
-
29  return;
-
30  }
-
31 
-
32  // Edgecase test: We only have one param.
-
33  TEST_METHOD(Only_One_Param)
-
34  {
-
35  // Setup
-
36  ArgList args({
-
37  "/my/fake/path/wahoo.out",
-
38  "--dummy"
-
39  });
-
40 
-
41  // Exercise
-
42  Hazelnupp nupp(C_Ify(args));
-
43  nupp.SetCrashOnFail(false);
-
44 
-
45  // Verify
-
46  Assert::IsTrue(nupp.HasParam("--dummy"));
-
47 
-
48  return;
-
49  }
-
50 
-
51  // Edgecase test: We begin with an actual value, instead of an argument.
-
52  TEST_METHOD(Weird_Case_1)
-
53  {
-
54  // Setup
-
55  ArgList args({
-
56  "/my/fake/path/wahoo.out",
-
57  "dummy"
-
58  });
-
59 
-
60  // Exercise
-
61  Hazelnupp nupp(C_Ify(args));
-
62  nupp.SetCrashOnFail(false);
-
63 
-
64  // Verify (no exception)
-
65 
-
66  return;
-
67  }
-
68 
-
69  // Edgecase test: We begin with first an actual value, and then an argument.
-
70  TEST_METHOD(Weird_Case_2)
-
71  {
-
72  // Setup
-
73  ArgList args({
-
74  "/my/fake/path/wahoo.out",
-
75  "dummy",
-
76  "--dummy"
-
77  });
-
78 
-
79  // Exercise
-
80  Hazelnupp nupp(C_Ify(args));
-
81  nupp.SetCrashOnFail(false);
-
82 
-
83  // Verify
-
84  Assert::IsTrue(nupp.HasParam("--dummy"), L"Failed has-param");
-
85  Assert::IsTrue(nupp["--dummy"].GetDataType() == DATA_TYPE::VOID, L"Failed type");
-
86 
-
87  return;
-
88  }
-
89 
-
90  // Tests keys exist after parsing
-
91  TEST_METHOD(KeysExist)
-
92  {
-
93  // Setup
-
94  ArgList args({
-
95  "/my/fake/path/wahoo.out",
-
96  "--my_string",
-
97  "billybob",
-
98  "--my_void",
-
99  "--my_float",
-
100  "-23.199",
-
101  "--my_int",
-
102  "199",
-
103  "--my_num_list",
-
104  "1",
-
105  "2",
-
106  "3",
-
107  "4",
-
108  "--my_str_list",
-
109  "apple",
-
110  "banana",
-
111  "pumpkin",
-
112  });
-
113 
-
114  // Exercise
-
115  Hazelnupp nupp(C_Ify(args));
-
116  nupp.SetCrashOnFail(false);
-
117 
-
118  // Verify
-
119  Assert::IsTrue(nupp.HasParam("--my_string"));
-
120  Assert::IsTrue(nupp.HasParam("--my_void"));
-
121  Assert::IsTrue(nupp.HasParam("--my_float"));
-
122  Assert::IsTrue(nupp.HasParam("--my_int"));
-
123  Assert::IsTrue(nupp.HasParam("--my_num_list"));
-
124  Assert::IsTrue(nupp.HasParam("--my_str_list"));
-
125 
-
126  return;
-
127  }
-
128 
-
129  // Tests keys are of the correct type after parsing
-
130  TEST_METHOD(CorrectType)
-
131  {
-
132  // Setup
-
133  ArgList args({
-
134  "/my/fake/path/wahoo.out",
-
135  "--my_string",
-
136  "billybob",
-
137  "--my_void",
-
138  "--my_float",
-
139  "-23.199",
-
140  "--my_int",
-
141  "199",
-
142  "--my_num_list",
-
143  "1",
-
144  "2",
-
145  "3",
-
146  "4",
-
147  "--my_str_list",
-
148  "apple",
-
149  "banana",
-
150  "pumpkin",
-
151  });
-
152 
-
153  // Exercise
-
154  Hazelnupp nupp(C_Ify(args));
-
155  nupp.SetCrashOnFail(false);
-
156 
-
157  // Verify
-
158  Assert::IsTrue(nupp["--my_string"].GetDataType() == DATA_TYPE::STRING);
-
159  Assert::IsTrue(nupp["--my_void"].GetDataType() == DATA_TYPE::VOID);
-
160  Assert::IsTrue(nupp["--my_float"].GetDataType() == DATA_TYPE::FLOAT);
-
161  Assert::IsTrue(nupp["--my_int"].GetDataType() == DATA_TYPE::INT);
-
162  Assert::IsTrue(nupp["--my_num_list"].GetDataType() == DATA_TYPE::LIST);
-
163  Assert::IsTrue(nupp["--my_str_list"].GetDataType() == DATA_TYPE::LIST);
-
164 
-
165  return;
-
166  }
-
167 
-
168  // Tests keys have the correct value after parsing
-
169  TEST_METHOD(CorrectValues)
-
170  {
-
171  // Setup
-
172  ArgList args({
-
173  "/my/fake/path/wahoo.out",
-
174  "--my_string",
-
175  "billybob",
-
176  "--my_void",
-
177  "--my_float",
-
178  "-23.199",
-
179  "--my_int",
-
180  "199",
-
181  "--my_num_list",
-
182  "1",
-
183  "2",
-
184  "3",
-
185  "4",
-
186  "--my_str_list",
-
187  "apple",
-
188  "banana",
-
189  "pumpkin",
-
190  });
-
191 
-
192  // Exercise
-
193  Hazelnupp nupp(C_Ify(args));
-
194  nupp.SetCrashOnFail(false);
-
195 
-
196  // Verify
-
197  Assert::AreEqual(nupp["--my_string"].GetString(), std::string("billybob"));
-
198  Assert::AreEqual(nupp["--my_float"].GetFloat32(), -23.199);
-
199  Assert::AreEqual(nupp["--my_int"].GetInt32(), 199);
-
200  Assert::AreEqual(nupp["--my_num_list"].GetList()[0]->GetInt32(), 1);
-
201  Assert::AreEqual(nupp["--my_num_list"].GetList()[1]->GetInt32(), 2);
-
202  Assert::AreEqual(nupp["--my_num_list"].GetList()[2]->GetInt32(), 3);
-
203  Assert::AreEqual(nupp["--my_num_list"].GetList()[3]->GetInt32(), 4);
-
204  Assert::AreEqual(nupp["--my_str_list"].GetList()[0]->GetString(), std::string("apple"));
-
205  Assert::AreEqual(nupp["--my_str_list"].GetList()[1]->GetString(), std::string("banana"));
-
206  Assert::AreEqual(nupp["--my_str_list"].GetList()[2]->GetString(), std::string("pumpkin"));
-
207 
-
208  return;
-
209  }
-
210 
-
211  // Tests that an HazelnuppInvalidKeyException gets raised, if an invalid gey is tried to access
-
212  TEST_METHOD(Exception_On_Invalid_Key)
-
213  {
-
214  // Setup
-
215  ArgList args({
-
216  "/my/fake/path/wahoo.out",
-
217  "--my_string",
-
218  "billybob",
-
219  "--my_void",
-
220  "--my_float",
-
221  "-23.199",
-
222  "--my_int",
-
223  "199",
-
224  "--my_num_list",
-
225  "1",
-
226  "2",
-
227  "3",
-
228  "4",
-
229  "--my_str_list",
-
230  "apple",
-
231  "banana",
-
232  "pumpkin",
-
233  });
-
234 
-
235  Hazelnupp nupp(C_Ify(args));
-
236  nupp.SetCrashOnFail(false);
-
237 
-
238  // Exercise, Verify
-
239  Assert::ExpectException<HazelnuppInvalidKeyException>(
-
240  [args]
-
241  {
-
242  Hazelnupp nupp(C_Ify(args));
-
243  nupp["--borrnana"];
-
244  }
-
245  );
-
246 
-
247  return;
-
248  }
-
249  };
-
250 }
-
- - - - -
TEST_CLASS(_Basics)
Definition: Basics.cpp:10
- -
#define C_Ify(vector)
Definition: helper.h:4
-
std::vector< const char * > ArgList
Definition: helper.h:6
- -
The main class to interface with.
Definition: Hazelnupp.h:9
- - - - - diff --git a/docs/CmdArgsInterface_8cpp.html b/docs/CmdArgsInterface_8cpp.html deleted file mode 100644 index 1809b8b..0000000 --- a/docs/CmdArgsInterface_8cpp.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/CmdArgsInterface.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
CmdArgsInterface.cpp File Reference
-
-
-
#include "CmdArgsInterface.h"
-#include "VoidValue.h"
-#include "IntValue.h"
-#include "FloatValue.h"
-#include "StringValue.h"
-#include "ListValue.h"
-#include "HazelnuppException.h"
-#include "Placeholders.h"
-#include "StringTools.h"
-#include <iostream>
-#include <cstdlib>
-
-Include dependency graph for CmdArgsInterface.cpp:
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/CmdArgsInterface_8cpp__incl.map b/docs/CmdArgsInterface_8cpp__incl.map deleted file mode 100644 index d5a35e7..0000000 --- a/docs/CmdArgsInterface_8cpp__incl.map +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/CmdArgsInterface_8cpp__incl.md5 b/docs/CmdArgsInterface_8cpp__incl.md5 deleted file mode 100644 index dacd236..0000000 --- a/docs/CmdArgsInterface_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -48e8cf6b9c7c3f6e58426b78b0d50f5b \ No newline at end of file diff --git a/docs/CmdArgsInterface_8cpp__incl.png b/docs/CmdArgsInterface_8cpp__incl.png deleted file mode 100644 index 3e1c36efccc73b9a109cbe7e789c3be4a2777d44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114201 zcmZs@1yogCv<7;R25AxLQcy%tK)Sm@rCUNuIt8Q=losg{P>?RAI|S(v0claXyLt2I zfA70*j5q#Zpqzcqo_no1zgoOjRhGfSp};{P5O{L3l8+GxbY=tsB^e6?{)9X9Rxf

Y7uxGedHqm|_|0_f?M2>K+@ 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

tGqb@DIqUYlJx&0Sm@sW_Y>6mR$ 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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/CmdArgsInterface.cpp Source File - - - - - - - - - - - -

-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
CmdArgsInterface.cpp
-
-
-Go to the documentation of this file.
1 #include "CmdArgsInterface.h"
-
2 #include "VoidValue.h"
-
3 #include "IntValue.h"
-
4 #include "FloatValue.h"
-
5 #include "StringValue.h"
-
6 #include "ListValue.h"
-
7 #include "HazelnuppException.h"
-
8 #include "Placeholders.h"
-
9 #include "StringTools.h"
-
10 #include <iostream>
-
11 #include <cstdlib>
-
12 
-
13 using namespace Hazelnp;
-
14 
- -
16 {
-
17  return;
-
18 }
-
19 
-
20 CmdArgsInterface::CmdArgsInterface(const int argc, const char* const* argv)
-
21 {
-
22  Parse(argc, argv);
-
23  return;
-
24 }
-
25 
- -
27 {
-
28  for (auto& it : parameters)
-
29  delete it.second;
-
30 
-
31  parameters.clear();
-
32 
-
33  return;
-
34 }
-
35 
-
36 void CmdArgsInterface::Parse(const int argc, const char* const* argv)
-
37 {
-
38  try
-
39  {
-
40  // Populate raw arguments
-
41  PopulateRawArgs(argc, argv);
-
42 
-
43  // Expand abbreviations
-
44  ExpandAbbreviations();
-
45 
-
46  executableName = std::string(rawArgs[0]);
-
47 
-
48  // Read and parse all parameters
-
49  std::size_t i = 1;
-
50  while (i < rawArgs.size())
-
51  {
-
52  if ((rawArgs[i].length() > 2) && (rawArgs[i].substr(0, 2) == "--"))
-
53  {
-
54  Parameter* param = nullptr;
-
55  i = ParseNextParameter(i, param);
-
56 
-
57  parameters.insert(std::pair<std::string, Parameter*>(param->Key(), param));
-
58  }
-
59  else
-
60  i++;
-
61  }
-
62 
-
63  // Apply constraints such as default values, and required parameters.
-
64  // Types have already been enforced.
-
65  // Dont apply constraints when we are just printind the param docs
-
66  if ((!catchHelp) || (!HasParam("--help")))
-
67  ApplyConstraints();
-
68  }
- -
70  {
-
71  if (crashOnFail)
-
72  {
-
73  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
74  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
75  quick_exit(-1000);
-
76  }
-
77  else
-
78  throw exc; // yeet
-
79  }
-
80  catch (const HazelnuppConstraintMissingValue& exc)
-
81  {
-
82  if (crashOnFail)
-
83  {
-
84  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
85  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
86  quick_exit(-1001);
-
87  }
-
88  else
-
89  throw exc; // yeet
-
90  }
-
91  catch (const HazelnuppConstraintTypeMissmatch& exc)
-
92  {
-
93  if (crashOnFail)
-
94  {
-
95  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
96  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
97  quick_exit(-1002);
-
98  }
-
99  else
-
100  throw exc; // yeet
-
101  }
-
102  catch (const HazelnuppConstraintException& exc)
-
103  {
-
104  if (crashOnFail)
-
105  {
-
106  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
107  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
108  quick_exit(-1003);
-
109  }
-
110  else
-
111  throw exc; // yeet
-
112  }
-
113  catch (const HazelnuppException& exc)
-
114  {
-
115  if (crashOnFail)
-
116  {
-
117  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
118  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
119  quick_exit(-1004);
-
120  }
-
121  else
-
122  throw exc; // yeet
-
123  }
-
124 
-
125  // Catch --help parameter
-
126  if ((catchHelp) && (HasParam("--help")))
-
127  {
-
128  std::cout << GenerateDocumentation() << std::endl;
-
129  quick_exit(0);
-
130  }
-
131 
-
132  return;
-
133 }
-
134 
-
135 std::size_t CmdArgsInterface::ParseNextParameter(const std::size_t parIndex, Parameter*& out_Par)
-
136 {
-
137  std::size_t i = parIndex;
-
138  const std::string key = rawArgs[parIndex];
-
139  std::vector<std::string> values;
-
140 
-
141  // Get values
-
142  for (i++; i < rawArgs.size(); i++)
-
143  // If not another parameter
-
144  if ((rawArgs[i].length() < 2) || (rawArgs[i].substr(0, 2) != "--"))
-
145  values.emplace_back(rawArgs[i]);
-
146  else
-
147  {
-
148  break;
-
149  }
-
150 
-
151  // Fetch constraint info
-
152  const ParamConstraint* pcn = GetConstraintForKey(key);
-
153 
-
154  Value* parsedVal = ParseValue(values, pcn);
-
155  if (parsedVal != nullptr)
-
156  {
-
157  out_Par = new Parameter(key, parsedVal);
-
158 
-
159  delete parsedVal;
-
160  parsedVal = nullptr;
-
161  }
-
162  else
-
163  throw std::runtime_error("Unable to parse parameter!");
-
164 
-
165  return i;
-
166 }
-
167 
-
168 void CmdArgsInterface::PopulateRawArgs(const int argc, const char* const* argv)
-
169 {
-
170  rawArgs.clear();
-
171  rawArgs.reserve(argc);
-
172 
-
173  for (int i = 0; i < argc; i++)
-
174  rawArgs.emplace_back(std::string(argv[i]));
-
175 
-
176  return;
-
177 }
-
178 
-
179 void CmdArgsInterface::ExpandAbbreviations()
-
180 {
-
181  // Abort if no abbreviations
-
182  if (parameterAbreviations.size() == 0)
-
183  return;
-
184 
-
185  for (std::string& arg : rawArgs)
-
186  {
-
187  // Is arg registered as an abbreviation?
-
188  auto abbr = parameterAbreviations.find(arg);
-
189  if (abbr != parameterAbreviations.end())
-
190  {
-
191  // Yes: replace arg with the long form
-
192  arg = abbr->second;
-
193  }
-
194  }
-
195 
-
196  return;
-
197 }
-
198 
-
199 bool CmdArgsInterface::HasParam(const std::string& key) const
-
200 {
-
201  return parameters.find(key) != parameters.end();
-
202 }
-
203 
-
204 Value* CmdArgsInterface::ParseValue(const std::vector<std::string>& values, const ParamConstraint* constraint)
-
205 {
-
206  // This is the raw (unconverted) data type the user provided
-
207  DATA_TYPE rawInputType;
-
208 
-
209  // Constraint values
-
210  const bool constrainType = (constraint != nullptr) && (constraint->constrainType);
-
211 
-
212  // Void-type
-
213  if (values.size() == 0)
-
214  {
-
215  rawInputType = DATA_TYPE::VOID;
-
216 
-
217  // Is a list forced via a constraint? If yes, return an empty list
-
218  if ((constrainType) &&
-
219  (constraint->requiredType == DATA_TYPE::LIST))
-
220  return new ListValue();
-
221 
-
222  // Is a string forced via a constraint? If yes, return an empty string
-
223  else if ((constrainType) &&
-
224  (constraint->requiredType == DATA_TYPE::STRING))
-
225  return new StringValue("");
-
226 
-
227  // Is an int or float forced via constraint? If yes, throw an exception
-
228  else if ((constrainType) &&
-
229  ((constraint->requiredType == DATA_TYPE::INT) ||
-
230  (constraint->requiredType == DATA_TYPE::FLOAT)))
- -
232  constraint->key,
-
233  constraint->requiredType,
-
234  rawInputType,
-
235  GetDescription(constraint->key)
-
236  );
-
237 
-
238  // Else, just return the void type
-
239  return new VoidValue;
-
240  }
-
241 
-
242  // Force void type by constraint
-
243  else if ((constrainType) &&
-
244  (constraint->requiredType == DATA_TYPE::VOID))
-
245  {
-
246  return new VoidValue;
-
247  }
-
248 
-
249  // List-type
-
250  else if (values.size() > 1)
-
251  {
-
252  rawInputType = DATA_TYPE::LIST;
-
253 
-
254  // Should the type be something other than list?
-
255  if ((constrainType) &&
-
256  (constraint->requiredType != DATA_TYPE::LIST))
-
257  {
- -
259  constraint->key,
-
260  constraint->requiredType,
-
261  rawInputType,
-
262  GetDescription(constraint->key)
-
263  );
-
264  }
-
265 
-
266  ListValue* newList = new ListValue();
-
267  for (const std::string& val : values)
-
268  {
-
269  Value* tmp = ParseValue({ val });
-
270  newList->AddValue(tmp);
-
271  delete tmp;
-
272  }
-
273  return newList;
-
274  }
-
275 
-
276  // Now we're only dealing with a single value
-
277  const std::string& val = values[0];
-
278 
-
279  // String
-
280  if (!Internal::StringTools::IsNumeric(val, true))
-
281  {
-
282  rawInputType = DATA_TYPE::STRING;
-
283 
-
284  // Is the type not supposed to be a string?
-
285  // void and list are already sorted out
-
286  if ((constrainType) &&
-
287  (constraint->requiredType != DATA_TYPE::STRING))
-
288  {
-
289  // We can only force a list-value from here
-
290  if (constraint->requiredType == DATA_TYPE::LIST)
-
291  {
-
292  ListValue* list = new ListValue();
-
293  Value* tmp = ParseValue({ val });
-
294  list->AddValue(tmp);
-
295  delete tmp;
-
296  tmp = nullptr;
-
297  return list;
-
298  }
-
299  // Else it is not possible to convert to a numeric
-
300  else
- -
302  constraint->key,
-
303  constraint->requiredType,
-
304  rawInputType,
-
305  GetDescription(constraint->key)
-
306  );
-
307  }
-
308 
-
309  return new StringValue(val);
-
310  }
-
311 
-
312  // In this case we have a numeric value.
-
313  // We should still produce a string if requested
-
314  if ((constrainType) &&
-
315  (constraint->requiredType == DATA_TYPE::STRING))
-
316  return new StringValue(val);
-
317 
-
318  // Numeric
-
319  bool isInt;
-
320  long double num;
-
321 
-
322  if (Internal::StringTools::ParseNumber(val, isInt, num))
-
323  {
-
324  rawInputType = isInt ? DATA_TYPE::INT : DATA_TYPE::FLOAT;
-
325 
-
326  // Is the type constrained?
-
327  // (only int and float left)
-
328  if (constrainType)
-
329  {
-
330  // Must it be an integer?
-
331  if (constraint->requiredType == DATA_TYPE::INT)
-
332  return new IntValue((long long int)num);
-
333  // Must it be a floating point?
-
334  else if (constraint->requiredType == DATA_TYPE::FLOAT)
-
335  return new FloatValue(num);
-
336  // Else it must be a List
-
337  else
-
338  {
-
339  ListValue* list = new ListValue();
-
340  Value* tmp = ParseValue({ val });
-
341  list->AddValue(tmp);
-
342  delete tmp;
-
343  tmp = nullptr;
-
344  return list;
-
345  }
-
346  }
-
347  // Type is not constrained
-
348  else
-
349  {
-
350  // Integer
-
351  if (isInt)
-
352  return new IntValue((long long int)num);
-
353 
-
354  // Double
-
355  return new FloatValue(num);
-
356  }
-
357  }
-
358 
-
359  // Failed
-
360  return nullptr;
-
361 }
-
362 
- -
364 {
-
365  return crashOnFail;
-
366 }
-
367 
-
368 void CmdArgsInterface::SetCatchHelp(bool catchHelp)
-
369 {
-
370  this->catchHelp = catchHelp;
-
371  return;
-
372 }
-
373 
- -
375 {
-
376  return catchHelp;
-
377 }
-
378 
-
379 void CmdArgsInterface::SetBriefDescription(const std::string& description)
-
380 {
-
381  briefDescription = description;
-
382  return;
-
383 }
-
384 
- -
386 {
-
387  return briefDescription;
-
388 }
-
389 
-
390 void Hazelnp::CmdArgsInterface::RegisterDescription(const std::string& parameter, const std::string& description)
-
391 {
-
392  parameterDescriptions[parameter] = description;
-
393  return;
-
394 }
-
395 
-
396 const std::string& Hazelnp::CmdArgsInterface::GetDescription(const std::string& parameter) const
-
397 {
-
398  // Do we already have a description for this parameter?
-
399  if (!HasDescription(parameter))
-
400  // No? Then return ""
- -
402 
-
403  // We do? Then return it
-
404  return parameterDescriptions.find(parameter)->second;
-
405 }
-
406 
-
407 bool CmdArgsInterface::HasDescription(const std::string& parameter) const
-
408 {
-
409  return parameterDescriptions.find(parameter) != parameterDescriptions.end();
-
410 }
-
411 
-
412 void CmdArgsInterface::ClearDescription(const std::string& parameter)
-
413 {
-
414  // This will just do nothing if the entry does not exist
-
415  parameterDescriptions.erase(parameter);
-
416  return;
-
417 }
-
418 
- -
420 {
-
421  parameterDescriptions.clear();
-
422  return;
-
423 }
-
424 
- -
426 {
-
427  std::stringstream ss;
-
428 
-
429  // Add brief, if available
-
430  if (briefDescription.length() > 0)
-
431  ss << briefDescription << std::endl;
-
432 
-
433  // Collect parameter information
-
434  struct ParamDocEntry
-
435  {
-
436  std::string abbreviation;
-
437  std::string description;
-
438  std::string type;
-
439  bool required = false;
-
440  bool typeIsForced = false;
-
441  std::string defaultVal;
-
442  std::string incompatibilities;
-
443  };
-
444  std::unordered_map<std::string, ParamDocEntry> paramInfos;
-
445 
-
446  // Collect descriptions
-
447  for (const auto& it : parameterDescriptions)
-
448  {
-
449  // Do we already have that param in the paramInfo set?
-
450  if (paramInfos.find(it.first) == paramInfos.end())
-
451  // No? Create it.
-
452  paramInfos[it.first] = ParamDocEntry();
-
453 
-
454  paramInfos[it.first].description = it.second;
-
455  }
-
456 
-
457  // Collect abbreviations
-
458  // first value is abbreviation, second is long form
-
459  for (const auto& it : parameterAbreviations)
-
460  {
-
461  // Do we already have that param in the paramInfo set?
-
462  if (paramInfos.find(it.second) == paramInfos.end())
-
463  // No? Create it.
-
464  paramInfos[it.second] = ParamDocEntry();
-
465 
-
466  paramInfos[it.second].abbreviation = it.first;
-
467  }
-
468 
-
469  // Collect constraints
-
470  for (const auto& it : parameterConstraints)
-
471  {
-
472  // Do we already have that param in the paramInfo set?
-
473  if (paramInfos.find(it.first) == paramInfos.end())
-
474  // No? Create it.
-
475  paramInfos[it.first] = ParamDocEntry();
-
476 
-
477  ParamDocEntry& cached = paramInfos[it.first];
-
478  cached.required = it.second.required;
-
479  cached.typeIsForced = it.second.constrainType;
-
480  cached.type = DataTypeToString(it.second.requiredType);
-
481 
-
482  // Build default-value string
-
483  std::stringstream vec2str_ss;
-
484  for (const std::string& s : it.second.defaultValue)
-
485  {
-
486  vec2str_ss << '\'' << s << '\'';
-
487 
-
488  // Add a space if we are not at the last entry
-
489  if ((void*)&s != (void*)&it.second.defaultValue.back())
-
490  vec2str_ss << " ";
-
491  }
-
492  cached.defaultVal = vec2str_ss.str();
-
493 
-
494 
-
495  // Build incompatibilities string
-
496  vec2str_ss.str("");
-
497  for (const std::string& s : it.second.incompatibleParameters)
-
498  {
-
499  vec2str_ss << s;
-
500 
-
501  // Add a comma-space if we are not at the last entry
-
502  if ((void*)&s != (void*)&it.second.incompatibleParameters.back())
-
503  vec2str_ss << ", ";
-
504  }
-
505  cached.incompatibilities = vec2str_ss.str();
-
506  }
-
507 
-
508  // Now generate the documentation body
-
509  if (paramInfos.size() > 0)
-
510  {
-
511  ss << std::endl
-
512  << "==== AVAILABLE PARAMETERS ===="
-
513  << std::endl << std::endl;
-
514 
-
515  std::size_t counter = 0;
-
516  for (const auto& it : paramInfos)
-
517  {
-
518  const ParamDocEntry& pde = it.second;
-
519 
-
520  // Put name
-
521  ss << it.first << " ";
-
522 
-
523  // Put abbreviation
-
524  if (pde.abbreviation.length() > 0)
-
525  ss << pde.abbreviation << " ";
-
526 
-
527  // Put type
-
528  if (pde.typeIsForced)
-
529  ss << pde.type << " ";
-
530 
-
531  // Put default value
-
532  if (pde.defaultVal.length() > 0)
-
533  ss << "default=[" << pde.defaultVal << "] ";
-
534 
-
535  // Put incompatibilities
-
536  if (pde.incompatibilities.length() > 0)
-
537  ss << "incompatibilities=[" << pde.incompatibilities << "] ";
-
538 
-
539  // Put required tag, but only if no default value
-
540  if ((pde.required) && (pde.defaultVal.length() == 0))
-
541  ss << "[[REQUIRED]] ";
-
542 
-
543  // Put brief description
-
544  if (pde.description.length() > 0)
-
545  ss << pde.description;
-
546 
-
547  // Omit linebreaks when we're on the last element
-
548  if (counter < paramInfos.size()-1)
-
549  ss << std::endl << std::endl;
-
550 
-
551  counter++;
-
552  }
-
553  }
-
554 
-
555  return ss.str();
-
556 }
-
557 
-
558 void CmdArgsInterface::ApplyConstraints()
-
559 {
-
560  // Enforce required parameters / default values
-
561  for (const auto& pc : parameterConstraints)
-
562  // Parameter in question is not supplied
-
563  if (!HasParam(pc.second.key))
-
564  {
-
565  // Do we have a default value?
-
566  if (pc.second.defaultValue.size() > 0)
-
567  {
-
568  // Then create it now, by its default value
-
569  Value* tmp = ParseValue(pc.second.defaultValue, &pc.second);
-
570  parameters.insert(std::pair<std::string, Parameter*>(
-
571  pc.second.key,
-
572  new Parameter(pc.second.key, tmp)
-
573  ));
-
574 
-
575  delete tmp;
-
576  tmp = nullptr;
-
577  }
-
578  // So we do not have a default value...
-
579  else
-
580  {
-
581  // Is it important to have the missing parameter?
-
582  if (pc.second.required)
-
583  // Throw an error message then
- -
585  pc.second.key,
-
586  GetDescription(pc.second.key)
-
587  );
-
588  }
-
589  }
-
590  // The parameter in question IS supplied
-
591  else
-
592  {
-
593  // Enforce parameter incompatibility
-
594 
-
595  // Is ANY parameter present listed as incompatible with our current one?
-
596  for (const std::string& incompatibility : pc.second.incompatibleParameters)
-
597  for (const std::pair<std::string, Parameter*>& otherParam : parameters)
-
598  {
-
599  if (otherParam.first == incompatibility)
-
600  throw HazelnuppConstraintIncompatibleParameters(pc.second.key, incompatibility);
-
601  }
-
602  }
-
603 
-
604  return;
-
605 }
-
606 
-
607 ParamConstraint CmdArgsInterface::GetConstraint(const std::string& parameter) const
-
608 {
-
609  return parameterConstraints.find(parameter)->second;
-
610 }
-
611 
-
612 void CmdArgsInterface::ClearConstraint(const std::string& parameter)
-
613 {
-
614  parameterConstraints.erase(parameter);
-
615  return;
-
616 }
-
617 
-
618 const std::string& CmdArgsInterface::GetExecutableName() const
-
619 {
-
620  return executableName;
-
621 }
-
622 
-
623 const Value& CmdArgsInterface::operator[](const std::string& key) const
-
624 {
-
625  // Throw exception if param is unknown
-
626  if (!HasParam(key))
- -
628 
-
629  return *parameters.find(key)->second->GetValue();
-
630 }
-
631 
-
632 void CmdArgsInterface::RegisterAbbreviation(const std::string& abbrev, const std::string& target)
-
633 {
-
634  parameterAbreviations.insert(std::pair<std::string, std::string>(abbrev, target));
-
635  return;
-
636 }
-
637 
-
638 const std::string& CmdArgsInterface::GetAbbreviation(const std::string& abbrev) const
-
639 {
-
640  if (!HasAbbreviation(abbrev))
- -
642 
-
643  return parameterAbreviations.find(abbrev)->second;
-
644 }
-
645 
-
646 bool CmdArgsInterface::HasAbbreviation(const std::string& abbrev) const
-
647 {
-
648  return parameterAbreviations.find(abbrev) != parameterAbreviations.end();
-
649 }
-
650 
-
651 void CmdArgsInterface::ClearAbbreviation(const std::string& abbrevation)
-
652 {
-
653  parameterAbreviations.erase(abbrevation);
-
654  return;
-
655 }
-
656 
- -
658 {
-
659  parameterAbreviations.clear();
-
660  return;
-
661 }
-
662 
-
663 void CmdArgsInterface::RegisterConstraint(const std::string& key, const ParamConstraint& constraint)
-
664 {
-
665  // Magic syntax, wooo
-
666  (parameterConstraints[key] = constraint).key = key;
-
667  return;
-
668 }
-
669 
- -
671 {
-
672  parameterConstraints.clear();
-
673  return;
-
674 }
-
675 
-
676 void CmdArgsInterface::SetCrashOnFail(bool crashOnFail)
-
677 {
-
678  this->crashOnFail = crashOnFail;
-
679  return;
-
680 }
-
681 
-
682 const ParamConstraint* CmdArgsInterface::GetConstraintForKey(const std::string& key) const
-
683 {
-
684  const auto constraint = parameterConstraints.find(key);
-
685 
-
686  if (constraint == parameterConstraints.end())
-
687  return nullptr;
-
688 
-
689  return &constraint->second;
-
690 }
-
-
bool GetCatchHelp() const
Retruns whether the CmdArgsInterface should automatically catch the –help parameter,...
- - -
Specializations for integer values (uses long long int)
Definition: IntValue.h:8
-
ParamConstraint GetConstraint(const std::string &parameter) const
Will return the constraint information for a specific parameter.
-
void ClearAbbreviations()
Will delete all abbreviations.
-
Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied along...
-
void SetCatchHelp(bool catchHelp)
Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter...
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
-
Gets thrown when an non-existent key gets dereferenced.
-
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
- - -
const std::string & What() const
Will return an error message.
- - - -
Specializations for floating point values (uses long double)
Definition: FloatValue.h:9
-
void ClearConstraint(const std::string &parameter)
Will the constraint of a specific parameter.
-
DATA_TYPE requiredType
Constrain the parameter to this value. Requires constrainType to be set to true.
-
Abstract class for values.
Definition: Value.h:10
-
Gets thrown something bad happens because of parameter constraints.
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
- -
void ClearConstraints()
Will delete all constraints.
- - -
static const std::string g_emptyString
The only purpose of this is to provide the ability to return an empty string as an error for std::str...
Definition: Placeholders.h:9
-
bool GetCrashOnFail() const
Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
-
void ClearDescription(const std::string &parameter)
Will delete the description of a parameter if it exists.
- -
bool constrainType
Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
-
Generic hazelnupp exception.
- -
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
-
void ClearAbbreviation(const std::string &abbrevation)
Will delete the abbreviation for a given parameter.
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
- -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
-
const std::string & GetBriefDescription()
Returns the brief description of the application to be automatically added to the documentation.
-
const Value & operator[](const std::string &key) const
Will return the value given a key.
-
void ClearDescriptions()
Will delete all parameter descriptions.
-
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:33
-
Specializations for void values.
Definition: VoidValue.h:8
-
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
-
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
-
static bool ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)
Will convert the number in str to a number.
Definition: StringTools.cpp:82
- -
const std::string & GetDescription(const std::string &parameter) const
Will return a short description for a parameter, if it exists.
- - -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
const std::string & GetAbbreviation(const std::string &abbrev) const
Will return the long form of an abbreviation (like –force for -f) Returns "" if no match is found.
- -
const std::string & GetExecutableName() const
Will return argv[0], the name of the executable.
-
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
-
static bool IsNumeric(const std::string &str, const bool allowDecimalPoint=false)
Will return true if the given string consists only of digits (including signage)
Definition: StringTools.cpp:56
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:9
-
Specializations for string values (uses std::string)
Definition: StringValue.h:9
- - - - - - diff --git a/docs/CmdArgsInterface_8h.html b/docs/CmdArgsInterface_8h.html deleted file mode 100644 index ae09393..0000000 --- a/docs/CmdArgsInterface_8h.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/CmdArgsInterface.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
CmdArgsInterface.h File Reference
-
-
-
#include "Parameter.h"
-#include "ParamConstraint.h"
-#include <unordered_map>
-#include <vector>
-#include "Version.h"
-
-Include dependency graph for CmdArgsInterface.h:
-
-
- - - - - - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::CmdArgsInterface
 The main class to interface with. More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/CmdArgsInterface_8h__dep__incl.map b/docs/CmdArgsInterface_8h__dep__incl.map deleted file mode 100644 index f19760a..0000000 --- a/docs/CmdArgsInterface_8h__dep__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/CmdArgsInterface_8h__dep__incl.md5 b/docs/CmdArgsInterface_8h__dep__incl.md5 deleted file mode 100644 index ddb9ced..0000000 --- a/docs/CmdArgsInterface_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -dfaa7b9bbc047edc6dac352f33d674ae \ No newline at end of file diff --git a/docs/CmdArgsInterface_8h__dep__incl.png b/docs/CmdArgsInterface_8h__dep__incl.png deleted file mode 100644 index 787e7ae5bbd1efac992c28e1a4728c839a475df5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5496 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 - - - - - - - - - - - diff --git a/docs/CmdArgsInterface_8h__incl.md5 b/docs/CmdArgsInterface_8h__incl.md5 deleted file mode 100644 index 5906ee6..0000000 --- a/docs/CmdArgsInterface_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -1b40cfe17dfb4f2d2222d0c51471439e \ No newline at end of file diff --git a/docs/CmdArgsInterface_8h__incl.png b/docs/CmdArgsInterface_8h__incl.png deleted file mode 100644 index 22014bfe485ef7861a736aa6a7b89c0b012a1959..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36035 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 WG#SScaElBL{*#kYmM)Wg?*BjiYPe4T diff --git a/docs/CmdArgsInterface_8h_source.html b/docs/CmdArgsInterface_8h_source.html deleted file mode 100644 index 6c668e7..0000000 --- a/docs/CmdArgsInterface_8h_source.html +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/CmdArgsInterface.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
CmdArgsInterface.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Parameter.h"
-
3 #include "ParamConstraint.h"
-
4 #include <unordered_map>
-
5 #include <vector>
-
6 
-
7 #include "Version.h"
-
8 
-
9 namespace Hazelnp
-
10 {
-
11  /** The main class to interface with
-
12  */
- -
14  {
-
15  public:
- -
17  CmdArgsInterface(const int argc, const char* const* argv);
-
18 
- -
20 
-
21  //! Will parse command line arguments
-
22  void Parse(const int argc, const char* const* argv);
-
23 
-
24  //! Will return argv[0], the name of the executable.
-
25  const std::string& GetExecutableName() const;
-
26 
-
27  //! Will return the value given a key
-
28  const Value& operator[](const std::string& key) const;
-
29 
-
30  //! Will check wether a parameter exists given a key, or not
-
31  bool HasParam(const std::string& key) const;
-
32 
-
33  // Abbreviations
-
34  //! Will register an abbreviation (like -f for --force)
-
35  void RegisterAbbreviation(const std::string& abbrev, const std::string& target);
-
36 
-
37  //! Will return the long form of an abbreviation (like --force for -f)
-
38  //! Returns "" if no match is found
-
39  const std::string& GetAbbreviation(const std::string& abbrev) const;
-
40 
-
41  //! Will check wether or not an abbreviation is registered
-
42  bool HasAbbreviation(const std::string& abbrev) const;
-
43 
-
44  //! Will delete the abbreviation for a given parameter.
-
45  //! IMPORTANT: This parameter is the abbreviation! Not the long form!
-
46  void ClearAbbreviation(const std::string& abbrevation);
-
47 
-
48  //! Will delete all abbreviations
-
49  void ClearAbbreviations();
-
50 
-
51  //! Will register a constraint for a parameter.
-
52  //! IMPORTANT: Any parameter can only have ONE constraint. Applying a new one will overwrite the old one!
-
53  //! Construct the ParamConstraint struct yourself to combine Require, TypeSafety and Incompatibilities! You can also use the ParamConstraint constructor!
-
54  void RegisterConstraint(const std::string& key, const ParamConstraint& constraint);
-
55 
-
56  //! Will return the constraint information for a specific parameter
-
57  ParamConstraint GetConstraint(const std::string& parameter) const;
-
58 
-
59  //! Will the constraint of a specific parameter
-
60  void ClearConstraint(const std::string& parameter);
-
61 
-
62  //! Will delete all constraints
-
63  void ClearConstraints();
-
64 
-
65  //! Sets whether to crash the application, and print to stderr, when an exception is
-
66  //! raised whilst parsing, or not.
-
67  void SetCrashOnFail(bool crashOnFail);
-
68 
-
69  //! Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
-
70  bool GetCrashOnFail() const;
-
71 
-
72  //! Sets whether the CmdArgsInterface should automatically catch the --help parameter, print the parameter documentation to stdout, and exit or not.
-
73  void SetCatchHelp(bool catchHelp);
-
74 
-
75  //! Retruns whether the CmdArgsInterface should automatically catch the --help parameter, print the parameter documentation to stdout, and exit or not.
-
76  bool GetCatchHelp() const;
-
77 
-
78  //! Sets a brief description of the application to be automatically added to the documentation.
-
79  void SetBriefDescription(const std::string& description);
-
80 
-
81  //! Returns the brief description of the application to be automatically added to the documentation.
-
82  const std::string& GetBriefDescription();
-
83 
-
84  //! Willl register a short description for a parameter.
-
85  //! Will overwrite existing descriptions for that parameter.
-
86  void RegisterDescription(const std::string& parameter, const std::string& description);
-
87 
-
88  //! Will return a short description for a parameter, if it exists.
-
89  //! Empty string if it does not exist.
-
90  const std::string& GetDescription(const std::string& parameter) const;
-
91 
-
92  //! Returns whether or not a given parameter has a registered description
-
93  bool HasDescription(const std::string& parameter) const;
-
94 
-
95  //! Will delete the description of a parameter if it exists.
-
96  void ClearDescription(const std::string& parameter);
-
97 
-
98  //! Will delete all parameter descriptions
-
99  void ClearDescriptions();
-
100 
-
101  //! Will generate a text-based documentation suited to show the user, for example on --help.
-
102  std::string GenerateDocumentation() const;
-
103 
-
104  private:
-
105  //! Will translate the c-like args to an std::vector
-
106  void PopulateRawArgs(const int argc, const char* const* argv);
-
107 
-
108  //! Will replace all args matching an abbreviation with their long form (like -f for --force)
-
109  void ExpandAbbreviations();
-
110 
-
111  //! Will parse the next parameter. Returns the index of the next parameter.
-
112  std::size_t ParseNextParameter(const std::size_t parIndex, Parameter*& out_Par);
-
113 
-
114  //! Will convert a vector of string-values to an actual Value
-
115  Value* ParseValue(const std::vector<std::string>& values, const ParamConstraint* constraint = nullptr);
-
116 
-
117  //! Will apply the loaded constraints on the loaded values, exluding types.
-
118  void ApplyConstraints();
-
119 
-
120  //! Will return a pointer to a paramConstraint given a key. If there is no, it returns nullptr
-
121  const ParamConstraint* GetConstraintForKey(const std::string& key) const;
-
122 
-
123  std::string executableName; //! The path of the executable. Always argv[0]
-
124  std::unordered_map<std::string, Parameter*> parameters;
-
125 
-
126  //! These are abbreviations. Like, -f for --force.
-
127  std::unordered_map<std::string, std::string> parameterAbreviations;
-
128 
-
129  //! Parameter constraints, mapped to keys
-
130  std::unordered_map<std::string, ParamConstraint> parameterConstraints;
-
131 
-
132  //! Raw argv
-
133  std::vector<std::string> rawArgs;
-
134 
-
135  //! Short descriptions for parameters
-
136  //! First member is the abbreviation
-
137  std::unordered_map<std::string, std::string> parameterDescriptions;
-
138 
-
139  //! A brief description of the application to be added to the generated documentation. Optional.
-
140  std::string briefDescription;
-
141 
-
142  //! If set to true, CmdArgsInterface will automatically catch the --help parameter, print the parameter documentation to stdout and exit.
-
143  bool catchHelp = true;
-
144 
-
145  //! If set to true, CmdArgsInterface will crash the application with output to stderr when an exception is thrown whilst parsing.
-
146  bool crashOnFail = true;
-
147  };
-
148 }
-
-
bool GetCatchHelp() const
Retruns whether the CmdArgsInterface should automatically catch the –help parameter,...
- -
The main class to interface with.
-
ParamConstraint GetConstraint(const std::string &parameter) const
Will return the constraint information for a specific parameter.
-
void ClearAbbreviations()
Will delete all abbreviations.
-
void SetCatchHelp(bool catchHelp)
Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter...
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
-
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
-
void ClearConstraint(const std::string &parameter)
Will the constraint of a specific parameter.
-
Abstract class for values.
Definition: Value.h:10
- -
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
-
void ClearConstraints()
Will delete all constraints.
- - - -
bool GetCrashOnFail() const
Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
-
void ClearDescription(const std::string &parameter)
Will delete the description of a parameter if it exists.
- -
void ClearAbbreviation(const std::string &abbrevation)
Will delete the abbreviation for a given parameter.
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
-
const std::string & GetBriefDescription()
Returns the brief description of the application to be automatically added to the documentation.
-
const Value & operator[](const std::string &key) const
Will return the value given a key.
-
void ClearDescriptions()
Will delete all parameter descriptions.
- -
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
-
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
-
const std::string & GetDescription(const std::string &parameter) const
Will return a short description for a parameter, if it exists.
-
const std::string & GetAbbreviation(const std::string &abbrev) const
Will return the long form of an abbreviation (like –force for -f) Returns "" if no match is found.
-
const std::string & GetExecutableName() const
Will return argv[0], the name of the executable.
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
- - - - - diff --git a/docs/Constraints_8cpp.html b/docs/Constraints_8cpp.html deleted file mode 100644 index 678c1fc..0000000 --- a/docs/Constraints_8cpp.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Constraints.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Constraints.cpp File Reference
-
-
-
#include "CppUnitTest.h"
-#include "helper.h"
-#include "../Hazelnupp/Hazelnupp.h"
-#include "../Hazelnupp/HazelnuppException.h"
-
-Include dependency graph for Constraints.cpp:
-
-
- - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Namespaces

 TestHazelnupp
 
- - - -

-Functions

 TestHazelnupp::TEST_CLASS (_Constraints)
 
-
- - - - diff --git a/docs/Constraints_8cpp__incl.map b/docs/Constraints_8cpp__incl.map deleted file mode 100644 index 8653bb5..0000000 --- a/docs/Constraints_8cpp__incl.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/Constraints_8cpp__incl.md5 b/docs/Constraints_8cpp__incl.md5 deleted file mode 100644 index 5676aa1..0000000 --- a/docs/Constraints_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -62c377b56c814420aa9bd5d3797e756b \ No newline at end of file diff --git a/docs/Constraints_8cpp__incl.png b/docs/Constraints_8cpp__incl.png deleted file mode 100644 index 834ecd75fa7e8832e6154be60a765be5c0bc3b39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38428 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

i(1SOc=7|BF1QPruND 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 diff --git a/docs/Constraints_8cpp_source.html b/docs/Constraints_8cpp_source.html deleted file mode 100644 index a068a35..0000000 --- a/docs/Constraints_8cpp_source.html +++ /dev/null @@ -1,425 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Constraints.cpp Source File - - - - - - - - - - - -

-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Constraints.cpp
-
-
-Go to the documentation of this file.
1 #include "CppUnitTest.h"
-
2 #include "helper.h"
-
3 #include "../Hazelnupp/Hazelnupp.h"
-
4 #include "../Hazelnupp/HazelnuppException.h"
-
5 
-
6 using namespace Microsoft::VisualStudio::CppUnitTestFramework;
-
7 
-
8 namespace TestHazelnupp
-
9 {
-
10  TEST_CLASS(_Constraints)
-
11  {
-
12  public:
-
13 
-
14  // Tests that default values get added
-
15  TEST_METHOD(DefaultValues_GetAdded)
-
16  {
-
17  // Setup
-
18  ArgList args({
-
19  "/my/fake/path/wahoo.out",
-
20  "--dummy",
-
21  "123"
-
22  });
-
23 
-
24  // Exercise
-
25  Hazelnupp nupp;
-
26  nupp.SetCrashOnFail(false);
-
27 
-
28  nupp.RegisterConstraints({
-
29  ParamConstraint::Require("--elenor-int", {"5994"}),
-
30  ParamConstraint::Require("--federich-float", {"420.69"}),
-
31  ParamConstraint::Require("--siegbert-string", {"banana"}),
-
32  ParamConstraint::Require("--lieber-liste", {"banana", "apple", "59"})
-
33  });
-
34 
-
35  nupp.Parse(C_Ify(args));
-
36 
-
37  // Verify
-
38  Assert::IsTrue(nupp.HasParam("--elenor-int"));
-
39  Assert::IsTrue(nupp["--elenor-int"].GetDataType() == DATA_TYPE::INT);
-
40  Assert::AreEqual(nupp["--elenor-int"].GetInt32(), 5994);
-
41 
-
42  Assert::IsTrue(nupp.HasParam("--federich-float"));
-
43  Assert::IsTrue(nupp["--federich-float"].GetDataType() == DATA_TYPE::FLOAT);
-
44  Assert::AreEqual(nupp["--federich-float"].GetFloat32(), 420.69);
-
45 
-
46  Assert::IsTrue(nupp.HasParam("--siegbert-string"));
-
47  Assert::IsTrue(nupp["--siegbert-string"].GetDataType() == DATA_TYPE::STRING);
-
48  Assert::AreEqual(nupp["--siegbert-string"].GetString(), std::string("banana"));
-
49 
-
50  Assert::IsTrue(nupp.HasParam("--lieber-liste"));
-
51  Assert::IsTrue(nupp["--lieber-liste"].GetDataType() == DATA_TYPE::LIST);
-
52  Assert::AreEqual(nupp["--lieber-liste"].GetList()[0]->GetString(), std::string("banana"));
-
53  Assert::AreEqual(nupp["--lieber-liste"].GetList()[1]->GetString(), std::string("apple"));
-
54  Assert::AreEqual(nupp["--lieber-liste"].GetList()[2]->GetInt32(), 59);
-
55 
-
56  return;
-
57  }
-
58 
-
59  // Tests that the default values do not override actually set values
-
60  TEST_METHOD(DefaultValues_DefaultDoesntOverride)
-
61  {
-
62  // Setup
-
63  ArgList args({
-
64  "/my/fake/path/wahoo.out",
-
65  "--dummy",
-
66  "--elenor-int",
-
67  "5994",
-
68  "--federich-float",
-
69  "420.69",
-
70  "--siegbert-string",
-
71  "banana",
-
72  "--lieber-liste",
-
73  "banana",
-
74  "apple",
-
75  "59"
-
76  });
-
77 
-
78  // Exercise
-
79  Hazelnupp nupp;
-
80  nupp.SetCrashOnFail(false);
-
81 
-
82  nupp.RegisterConstraints({
-
83  ParamConstraint::Require("--elenor-int", {"6871"}),
-
84  ParamConstraint::Require("--federich-float", {"-199.44"}),
-
85  ParamConstraint::Require("--siegbert-string", {"bornana"}),
-
86  ParamConstraint::Require("--lieber-liste", {"bornana", "ollpe", "5"})
-
87  });
-
88 
-
89  nupp.Parse(C_Ify(args));
-
90 
-
91  // Verify
-
92  Assert::IsTrue(nupp.HasParam("--elenor-int"));
-
93  Assert::IsTrue(nupp["--elenor-int"].GetDataType() == DATA_TYPE::INT);
-
94  Assert::AreEqual(nupp["--elenor-int"].GetInt32(), 5994);
-
95 
-
96  Assert::IsTrue(nupp.HasParam("--federich-float"));
-
97  Assert::IsTrue(nupp["--federich-float"].GetDataType() == DATA_TYPE::FLOAT);
-
98  Assert::AreEqual(nupp["--federich-float"].GetFloat32(), 420.69);
-
99 
-
100  Assert::IsTrue(nupp.HasParam("--siegbert-string"));
-
101  Assert::IsTrue(nupp["--siegbert-string"].GetDataType() == DATA_TYPE::STRING);
-
102  Assert::AreEqual(nupp["--siegbert-string"].GetString(), std::string("banana"));
-
103 
-
104  Assert::IsTrue(nupp.HasParam("--lieber-liste"));
-
105  Assert::IsTrue(nupp["--lieber-liste"].GetDataType() == DATA_TYPE::LIST);
-
106  Assert::AreEqual(nupp["--lieber-liste"].GetList()[0]->GetString(), std::string("banana"));
-
107  Assert::AreEqual(nupp["--lieber-liste"].GetList()[1]->GetString(), std::string("apple"));
-
108  Assert::AreEqual(nupp["--lieber-liste"].GetList()[2]->GetInt32(), 59);
-
109 
-
110  return;
-
111  }
-
112 
-
113  // Tests that data types get forced according to the constraints
-
114  TEST_METHOD(ForceTypes)
-
115  {
-
116  // Setup
-
117  ArgList args({
-
118  "/my/fake/path/wahoo.out",
-
119  "--dummy",
-
120  "--num-apples",
-
121  "39.75",
-
122  "--table-height",
-
123  "400",
-
124  "--license-plate",
-
125  "193273",
-
126  "--fav-fruits",
-
127  "apple",
-
128  "--indices",
-
129  "9",
-
130  "--force",
-
131  "plsdontuseme"
-
132  });
-
133 
-
134  // Exercise
-
135  Hazelnupp nupp;
-
136  nupp.SetCrashOnFail(false);
-
137 
-
138  nupp.RegisterConstraints({
- - - - - - -
145  });
-
146 
-
147  nupp.Parse(C_Ify(args));
-
148 
-
149  // Verify
-
150  Assert::IsTrue(nupp.HasParam("--num-apples"));
-
151  Assert::IsTrue(nupp["--num-apples"].GetDataType() == DATA_TYPE::INT);
-
152  Assert::AreEqual(nupp["--num-apples"].GetInt32(), 39);
-
153 
-
154  Assert::IsTrue(nupp.HasParam("--table-height"));
-
155  Assert::IsTrue(nupp["--table-height"].GetDataType() == DATA_TYPE::FLOAT);
-
156  Assert::AreEqual(nupp["--table-height"].GetFloat32(), 400.0);
-
157 
-
158  Assert::IsTrue(nupp.HasParam("--license-plate"));
-
159  Assert::IsTrue(nupp["--license-plate"].GetDataType() == DATA_TYPE::STRING);
-
160  Assert::AreEqual(nupp["--license-plate"].GetString(), std::string("193273"));
-
161 
-
162  Assert::IsTrue(nupp.HasParam("--fav-fruits"));
-
163  Assert::IsTrue(nupp["--fav-fruits"].GetDataType() == DATA_TYPE::LIST);
-
164  Assert::AreEqual(nupp["--fav-fruits"].GetList()[0]->GetString(), std::string("apple"));
-
165 
-
166  Assert::IsTrue(nupp.HasParam("--indices"));
-
167  Assert::IsTrue(nupp["--indices"].GetDataType() == DATA_TYPE::LIST);
-
168  Assert::AreEqual(nupp["--indices"].GetList()[0]->GetInt32(), 9);
-
169 
-
170  Assert::IsTrue(nupp.HasParam("--force"));
-
171  Assert::IsTrue(nupp["--force"].GetDataType() == DATA_TYPE::VOID);
-
172 
-
173  return;
-
174  }
-
175 
-
176  // Tests that an HazelnuppConstraintMissingValue gets raised if a required parameter
-
177  // is missing and does not have a default parameter
-
178  TEST_METHOD(Exception_MissingImportant_Parameter_WithoutDefault)
-
179  {
-
180  // Setup
-
181  ArgList args({
-
182  "/my/fake/path/wahoo.out",
-
183  "--dummy",
-
184  "--federich-float",
-
185  "420.69",
-
186  "--siegbert-string",
-
187  "banana",
-
188  "--lieber-liste",
-
189  "banana",
-
190  "apple",
-
191  "59"
-
192  });
-
193 
-
194  Assert::ExpectException<HazelnuppConstraintMissingValue>(
-
195  [args]
-
196  {
-
197  Hazelnupp nupp;
-
198  nupp.SetCrashOnFail(false);
-
199 
-
200  nupp.RegisterConstraints({
-
201  ParamConstraint::Require("--elenor-int"),
-
202  });
-
203 
-
204  nupp.Parse(C_Ify(args));
-
205  }
-
206  );
-
207 
-
208  return;
-
209  }
-
210 
-
211  // Tests that an HazelnuppConstraintTypeMissmatch gets raised if a required parameter
-
212  // is missing of the wrong type and cannot be converted
-
213  TEST_METHOD(Exception_TypeMismatch_Parameter_NotConvertable)
-
214  {
-
215  // Setup
-
216  ArgList args({
-
217  "/my/fake/path/wahoo.out",
-
218  "--dummy",
-
219  "--elenor-int",
-
220  "hello"
-
221  "--federich-float",
-
222  "420.69",
-
223  "--siegbert-string",
-
224  "banana",
-
225  "--lieber-liste",
-
226  "banana",
-
227  "apple",
-
228  "59"
-
229  });
-
230 
-
231  Assert::ExpectException<HazelnuppConstraintTypeMissmatch>(
-
232  [args]
-
233  {
-
234  Hazelnupp nupp;
-
235  nupp.SetCrashOnFail(false);
-
236 
-
237  nupp.RegisterConstraints({
- -
239  });
-
240 
-
241  nupp.Parse(C_Ify(args));
-
242  }
-
243  );
-
244 
-
245  return;
-
246  }
-
247 
-
248  // Tests that everything can be converted to void
-
249  TEST_METHOD(Weird_Load_Conversions_ToVoid)
-
250  {
-
251  // Setup
-
252  ArgList args({
-
253  "/my/fake/path/wahoo.out",
-
254  "--dummy",
-
255  "--void1",
-
256  "--void2",
-
257  "12",
-
258  "--void3",
-
259  "9.5",
-
260  "--void4",
-
261  "hello",
-
262  "--void5",
-
263  "foo",
-
264  "baz"
-
265  });
-
266 
-
267  Hazelnupp nupp;
-
268  nupp.SetCrashOnFail(false);
-
269 
-
270  nupp.RegisterConstraints({
- - - - - -
276  });
-
277 
-
278 
-
279  // Exercise
-
280  nupp.Parse(C_Ify(args));
-
281 
-
282  // Verify
-
283  Assert::IsTrue(nupp["--void1"].GetDataType() == DATA_TYPE::VOID);
-
284  Assert::IsTrue(nupp["--void2"].GetDataType() == DATA_TYPE::VOID);
-
285  Assert::IsTrue(nupp["--void3"].GetDataType() == DATA_TYPE::VOID);
-
286  Assert::IsTrue(nupp["--void4"].GetDataType() == DATA_TYPE::VOID);
-
287  Assert::IsTrue(nupp["--void5"].GetDataType() == DATA_TYPE::VOID);
-
288 
-
289  return;
-
290  }
-
291 
-
292  // Tests that everything a void can be converted to an empty list
-
293  TEST_METHOD(Weird_Load_Conversions_VoidToEmptyList)
-
294  {
-
295  // Setup
-
296  ArgList args({
-
297  "/my/fake/path/wahoo.out",
-
298  "--dummy",
-
299  "--empty-list",
-
300  });
-
301 
-
302  Hazelnupp nupp;
-
303  nupp.SetCrashOnFail(false);
-
304 
-
305  nupp.RegisterConstraints({
- -
307  });
-
308 
-
309 
-
310  // Exercise
-
311  nupp.Parse(C_Ify(args));
-
312 
-
313  // Verify
-
314  Assert::IsTrue(nupp["--empty-list"].GetDataType() == DATA_TYPE::LIST);
-
315  Assert::AreEqual(std::size_t(0), nupp["--empty-list"].GetList().size());
-
316 
-
317  return;
-
318  }
-
319  };
-
320 }
-
- -
void RegisterConstraints(const std::vector< ParamConstraint > &constraints)
Will register parameter constraints.
Definition: Hazelnupp.cpp:352
- - - -
static ParamConstraint TypeSafety(const std::string &key, DATA_TYPE wantedType, bool constrainType=true)
Constructs a type-safety constraint.
-
TEST_CLASS(_Constraints)
Definition: Constraints.cpp:10
- -
static ParamConstraint Require(const std::string &key, const std::vector< std::string > &defaultValue={}, bool required=true)
Constructs a require constraint.
-
#define C_Ify(vector)
Definition: helper.h:4
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
Definition: Hazelnupp.cpp:379
-
std::vector< const char * > ArgList
Definition: helper.h:6
- -
The main class to interface with.
Definition: Hazelnupp.h:9
- -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:33
- - - - diff --git a/docs/Conversion_8cpp.html b/docs/Conversion_8cpp.html deleted file mode 100644 index a556531..0000000 --- a/docs/Conversion_8cpp.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Conversion.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Conversion.cpp File Reference
-
-
-
#include "CppUnitTest.h"
-#include "helper.h"
-#include "../Hazelnupp/Hazelnupp.h"
-#include "../Hazelnupp/HazelnuppException.h"
-
-Include dependency graph for Conversion.cpp:
-
-
- - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Namespaces

 TestHazelnupp
 
- - - -

-Functions

 TestHazelnupp::TEST_CLASS (_Conversion)
 
-
- - - - diff --git a/docs/Conversion_8cpp__incl.map b/docs/Conversion_8cpp__incl.map deleted file mode 100644 index 09e7105..0000000 --- a/docs/Conversion_8cpp__incl.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/docs/Conversion_8cpp__incl.md5 b/docs/Conversion_8cpp__incl.md5 deleted file mode 100644 index cfeb8b4..0000000 --- a/docs/Conversion_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -d5db07f8e0783c171b7745265e2ec834 \ No newline at end of file diff --git a/docs/Conversion_8cpp__incl.png b/docs/Conversion_8cpp__incl.png deleted file mode 100644 index 347956d90245f4e9c5d0dad745b870403f2e2ba9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38508 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 BSxEo@ diff --git a/docs/Conversion_8cpp_source.html b/docs/Conversion_8cpp_source.html deleted file mode 100644 index 34a8126..0000000 --- a/docs/Conversion_8cpp_source.html +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Conversion.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Conversion.cpp
-
-
-Go to the documentation of this file.
1 #include "CppUnitTest.h"
-
2 #include "helper.h"
-
3 #include "../Hazelnupp/Hazelnupp.h"
-
4 #include "../Hazelnupp/HazelnuppException.h"
-
5 
-
6 using namespace Microsoft::VisualStudio::CppUnitTestFramework;
-
7 
-
8 namespace TestHazelnupp
-
9 {
-
10  TEST_CLASS(_Conversion)
-
11  {
-
12  public:
-
13 
-
14  // Tests that string conversion methods work
-
15  TEST_METHOD(Convert_String)
-
16  {
-
17  // Setup
-
18  ArgList args({
-
19  "/my/fake/path/wahoo.out",
-
20  "--pud",
-
21  "hello"
-
22  });
-
23 
-
24  // Exercise
-
25  Hazelnupp nupp(C_Ify(args));
-
26  nupp.SetCrashOnFail(false);
-
27 
-
28  // Verify
-
29  const Hazelnupp* ptnupp = &nupp;
-
30 
-
31  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
32  [ptnupp]
-
33  {
-
34  (*ptnupp)["--pud"].GetInt64();
-
35  }
-
36  , L"Int64");
-
37 
-
38  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
39  [ptnupp]
-
40  {
-
41  (*ptnupp)["--pud"].GetInt32();
-
42  }
-
43  , L"Int32");
-
44 
-
45  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
46  [ptnupp]
-
47  {
-
48  (*ptnupp)["--pud"].GetFloat64();
-
49  }
-
50  , L"Float64");
-
51 
-
52  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
53  [ptnupp]
-
54  {
-
55  (*ptnupp)["--pud"].GetFloat32();
-
56  }
-
57  , L"Float32");
-
58 
-
59  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
60  [ptnupp]
-
61  {
-
62  (*ptnupp)["--pud"].GetList();
-
63  }
-
64  , L"List");
-
65 
-
66 
-
67  return;
-
68  }
-
69 
-
70  // Tests that void conversion methods work
-
71  TEST_METHOD(Convert_Void)
-
72  {
-
73  // Setup
-
74  ArgList args({
-
75  "/my/fake/path/wahoo.out",
-
76  "--pud"
-
77  });
-
78 
-
79  // Exercise
-
80  Hazelnupp nupp(C_Ify(args));
-
81  nupp.SetCrashOnFail(false);
-
82 
-
83  // Verify
-
84  const Hazelnupp* ptnupp = &nupp;
-
85 
-
86  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
87  [ptnupp]
-
88  {
-
89  (*ptnupp)["--pud"].GetInt64();
-
90  }
-
91  , L"Int64");
-
92 
-
93  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
94  [ptnupp]
-
95  {
-
96  (*ptnupp)["--pud"].GetInt32();
-
97  }
-
98  , L"Int32");
-
99 
-
100  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
101  [ptnupp]
-
102  {
-
103  (*ptnupp)["--pud"].GetFloat64();
-
104  }
-
105  , L"Float64");
-
106 
-
107  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
108  [ptnupp]
-
109  {
-
110  (*ptnupp)["--pud"].GetFloat32();
-
111  }
-
112  , L"Float32");
-
113 
-
114  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
115  [ptnupp]
-
116  {
-
117  (*ptnupp)["--pud"].GetString();
-
118  }
-
119  , L"String");
-
120 
-
121  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
122  [ptnupp]
-
123  {
-
124  (*ptnupp)["--pud"].GetList();
-
125  }
-
126  , L"List");
-
127 
-
128 
-
129  return;
-
130  }
-
131 
-
132  // Tests that int conversion methods work
-
133  TEST_METHOD(Convert_Int)
-
134  {
-
135  // Setup
-
136  ArgList args({
-
137  "/my/fake/path/wahoo.out",
-
138  "--pud",
-
139  "39"
-
140  });
-
141 
-
142  // Exercise
-
143  Hazelnupp nupp(C_Ify(args));
-
144  nupp.SetCrashOnFail(false);
-
145 
-
146  // Verify
-
147  const Hazelnupp* ptnupp = &nupp;
-
148 
-
149  Assert::AreEqual(39ll, nupp["--pud"].GetInt64(), L"Int64");
-
150  Assert::AreEqual(39, nupp["--pud"].GetInt32(), L"Int32");
-
151  Assert::IsTrue(39.0l == nupp["--pud"].GetFloat64(), L"Float64");
-
152  Assert::AreEqual(39.0, nupp["--pud"].GetFloat32(), L"Float32");
-
153  Assert::AreEqual(std::string("39"), nupp["--pud"].GetString(), L"String");
-
154 
-
155  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
156  [ptnupp]
-
157  {
-
158  (*ptnupp)["--pud"].GetList();
-
159  }
-
160  , L"List");
-
161 
-
162 
-
163  return;
-
164  }
-
165 
-
166  // Tests that float conversion methods work
-
167  TEST_METHOD(Convert_Float)
-
168  {
-
169  // Setup
-
170  ArgList args({
-
171  "/my/fake/path/wahoo.out",
-
172  "--pud",
-
173  "39.5"
-
174  });
-
175 
-
176  // Exercise
-
177  Hazelnupp nupp(C_Ify(args));
-
178  nupp.SetCrashOnFail(false);
-
179 
-
180  // Verify
-
181  const Hazelnupp* ptnupp = &nupp;
-
182 
-
183  Assert::AreEqual(39ll, nupp["--pud"].GetInt64(), L"Int64");
-
184  Assert::AreEqual(39, nupp["--pud"].GetInt32(), L"Int32");
-
185  Assert::IsTrue(39.5l == nupp["--pud"].GetFloat64(), L"Float64");
-
186  Assert::AreEqual(39.5, nupp["--pud"].GetFloat32(), L"Float32");
-
187  Assert::AreEqual(std::string("39.5"), nupp["--pud"].GetString(), L"String");
-
188 
-
189  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
190  [ptnupp]
-
191  {
-
192  (*ptnupp)["--pud"].GetList();
-
193  }
-
194  , L"List");
-
195 
-
196 
-
197  return;
-
198  }
-
199 
-
200  // Tests that list conversion methods work
-
201  TEST_METHOD(Convert_List)
-
202  {
-
203  // Setup
-
204  ArgList args({
-
205  "/my/fake/path/wahoo.out",
-
206  "--pud",
-
207  "apple",
-
208  "1",
-
209  "2",
-
210  "3"
-
211  });
-
212 
-
213  // Exercise
-
214  Hazelnupp nupp(C_Ify(args));
-
215  nupp.SetCrashOnFail(false);
-
216 
-
217  // Verify
-
218  const Hazelnupp* ptnupp = &nupp;
-
219 
-
220  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
221  [ptnupp]
-
222  {
-
223  (*ptnupp)["--pud"].GetInt64();
-
224  }
-
225  , L"Int64");
-
226 
-
227  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
228  [ptnupp]
-
229  {
-
230  (*ptnupp)["--pud"].GetInt32();
-
231  }
-
232  , L"Int32");
-
233 
-
234  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
235  [ptnupp]
-
236  {
-
237  (*ptnupp)["--pud"].GetFloat64();
-
238  }
-
239  , L"Float64");
-
240 
-
241  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
242  [ptnupp]
-
243  {
-
244  (*ptnupp)["--pud"].GetFloat32();
-
245  }
-
246  , L"Float32");
-
247 
-
248  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
-
249  [ptnupp]
-
250  {
-
251  (*ptnupp)["--pud"].GetString();
-
252  }
-
253  , L"String");
-
254 
-
255  return;
-
256  }
-
257  };
-
258 }
-
- -
TEST_CLASS(_Conversion)
Definition: Conversion.cpp:10
-
#define C_Ify(vector)
Definition: helper.h:4
-
std::vector< const char * > ArgList
Definition: helper.h:6
-
The main class to interface with.
Definition: Hazelnupp.h:9
- - - - - diff --git a/docs/DataType_8h.html b/docs/DataType_8h.html deleted file mode 100644 index 991c909..0000000 --- a/docs/DataType_8h.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/DataType.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
DataType.h File Reference
-
-
-
#include <string>
-
-Include dependency graph for DataType.h:
-
-
- - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Namespaces

 Hazelnp
 
- - - - -

-Enumerations

enum  Hazelnp::DATA_TYPE {
-  Hazelnp::DATA_TYPE::VOID, -Hazelnp::DATA_TYPE::INT, -Hazelnp::DATA_TYPE::FLOAT, -Hazelnp::DATA_TYPE::STRING, -
-  Hazelnp::DATA_TYPE::LIST -
- }
 The different data types a paramater can be. More...
 
- - - -

-Functions

static std::string Hazelnp::DataTypeToString (DATA_TYPE type)
 
-
- - - - diff --git a/docs/DataType_8h__dep__incl.map b/docs/DataType_8h__dep__incl.map deleted file mode 100644 index 9420f2f..0000000 --- a/docs/DataType_8h__dep__incl.map +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/DataType_8h__dep__incl.md5 b/docs/DataType_8h__dep__incl.md5 deleted file mode 100644 index f910235..0000000 --- a/docs/DataType_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -ade4d06f1bc62f0f5e08b5d2c18bb715 \ No newline at end of file diff --git a/docs/DataType_8h__dep__incl.png b/docs/DataType_8h__dep__incl.png deleted file mode 100644 index 46650057b8f83c8d991055d46a1204a8b1787b82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 70679 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%0Ac|<5PzO+eidu5EwkW` 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 BJ^}y$ diff --git a/docs/DataType_8h__incl.map b/docs/DataType_8h__incl.map deleted file mode 100644 index acf7e2c..0000000 --- a/docs/DataType_8h__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/DataType_8h__incl.md5 b/docs/DataType_8h__incl.md5 deleted file mode 100644 index 81f3b38..0000000 --- a/docs/DataType_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -eab021d5766fc460a8e029af4cccd74b \ No newline at end of file diff --git a/docs/DataType_8h__incl.png b/docs/DataType_8h__incl.png deleted file mode 100644 index 05870403339ae69e06192918d46167fc68a13416..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3371 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 diff --git a/docs/DataType_8h_source.html b/docs/DataType_8h_source.html deleted file mode 100644 index 6f4fab9..0000000 --- a/docs/DataType_8h_source.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/DataType.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
DataType.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <string>
-
3 
-
4 namespace Hazelnp
-
5 {
-
6  /** The different data types a paramater can be
-
7  */
-
8  enum class DATA_TYPE
-
9  {
-
10  VOID,
-
11  INT,
-
12  FLOAT,
-
13  STRING,
-
14  LIST
-
15  };
-
16 
-
17  static inline std::string DataTypeToString(DATA_TYPE type)
-
18  {
-
19  switch (type)
-
20  {
-
21  case DATA_TYPE::VOID:
-
22  return "VOID";
-
23 
-
24  case DATA_TYPE::INT:
-
25  return "INT";
-
26 
-
27  case DATA_TYPE::FLOAT:
-
28  return "FLOAT";
-
29 
-
30  case DATA_TYPE::STRING:
-
31  return "STRING";
-
32 
-
33  case DATA_TYPE::LIST:
-
34  return "LIST";
-
35  }
-
36 
-
37  return "";
-
38  }
-
39 }
-
- - - - - -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
- -
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
- - - - diff --git a/docs/Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html b/docs/Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html deleted file mode 100644 index 033b07c..0000000 --- a/docs/Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Debug/Hazelnupp.vcxproj.FileListAbsolute.txt File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Hazelnupp/Debug/Hazelnupp.vcxproj.FileListAbsolute.txt File Reference
-
-
-
- - - - diff --git a/docs/Debug_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html b/docs/Debug_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html deleted file mode 100644 index dc5d6cc..0000000 --- a/docs/Debug_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Debug/Test_Hazelnupp.vcxproj.FileListAbsolute.txt File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Test_Hazelnupp/Debug/Test_Hazelnupp.vcxproj.FileListAbsolute.txt File Reference
-
-
-
- - - - diff --git a/docs/FloatValue_8cpp.html b/docs/FloatValue_8cpp.html deleted file mode 100644 index de2db87..0000000 --- a/docs/FloatValue_8cpp.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/FloatValue.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
FloatValue.cpp File Reference
-
-
-
#include "FloatValue.h"
-#include "HazelnuppException.h"
-#include <sstream>
-
-Include dependency graph for FloatValue.cpp:
-
-
- - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/FloatValue_8cpp__incl.map b/docs/FloatValue_8cpp__incl.map deleted file mode 100644 index 2e98ba0..0000000 --- a/docs/FloatValue_8cpp__incl.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/FloatValue_8cpp__incl.md5 b/docs/FloatValue_8cpp__incl.md5 deleted file mode 100644 index e07c855..0000000 --- a/docs/FloatValue_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -f5a895813c4221d24468ffc9cb70662d \ No newline at end of file diff --git a/docs/FloatValue_8cpp__incl.png b/docs/FloatValue_8cpp__incl.png deleted file mode 100644 index 4aa9be06a5e90a1384f91b1b0b5f66a13464887c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26410 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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/FloatValue.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
FloatValue.cpp
-
-
-Go to the documentation of this file.
1 #include "FloatValue.h"
-
2 #include "HazelnuppException.h"
-
3 #include <sstream>
-
4 
-
5 using namespace Hazelnp;
-
6 
-
7 FloatValue::FloatValue(const long double& value)
-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
14 
- -
16 {
-
17  return new FloatValue(value);
-
18 }
-
19 
-
20 std::string FloatValue::GetAsOsString() const
-
21 {
-
22  std::stringstream ss;
-
23  ss << "FloatValue: " << value;
-
24  return ss.str();
-
25 }
-
26 
-
27 const long double& FloatValue::GetValue() const
-
28 {
-
29  return value;
-
30 }
-
31 
-
32 FloatValue::operator long double() const
-
33 {
-
34  return value;
-
35 }
-
36 
-
37 FloatValue::operator double() const
-
38 {
-
39  return (double)value;
-
40 }
-
41 
-
42 
-
43 
-
44 long long int FloatValue::GetInt64() const
-
45 {
-
46  return (long long int)value;
-
47 }
-
48 
- -
50 {
-
51  return (int)value;
-
52 }
-
53 
-
54 long double FloatValue::GetFloat64() const
-
55 {
-
56  return value;
-
57 }
-
58 
-
59 double FloatValue::GetFloat32() const
-
60 {
-
61  return (double)value;
-
62 }
-
63 
-
64 std::string FloatValue::GetString() const
-
65 {
-
66  std::stringstream ss;
-
67  ss << value;
-
68 
-
69  return ss.str();
-
70 }
-
71 
-
72 const std::vector<Value*>& FloatValue::GetList() const
-
73 {
- -
75 }
-
-
long double GetFloat64() const override
Will return the data as a long double.
Definition: FloatValue.cpp:54
- - -
std::string GetString() const override
Will return the data as a string.
Definition: FloatValue.cpp:64
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: FloatValue.cpp:72
-
long long int GetInt64() const override
Will return the data as a long long int.
Definition: FloatValue.cpp:44
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: FloatValue.cpp:20
-
const long double & GetValue() const
Will return the raw value.
Definition: FloatValue.cpp:27
-
Abstract class for values.
Definition: Value.h:10
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: FloatValue.cpp:15
-
double GetFloat32() const override
Will return the data as a double.
Definition: FloatValue.cpp:59
- - -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
FloatValue(const long double &value)
Definition: FloatValue.cpp:7
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
-
int GetInt32() const override
Will return the data as an int.
Definition: FloatValue.cpp:49
- - - - diff --git a/docs/FloatValue_8h.html b/docs/FloatValue_8h.html deleted file mode 100644 index cacd969..0000000 --- a/docs/FloatValue_8h.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/FloatValue.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
FloatValue.h File Reference
-
-
-
#include "Value.h"
-#include <ostream>
-
-Include dependency graph for FloatValue.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::FloatValue
 Specializations for floating point values (uses long double) More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/FloatValue_8h__dep__incl.map b/docs/FloatValue_8h__dep__incl.map deleted file mode 100644 index 7c61a1b..0000000 --- a/docs/FloatValue_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/FloatValue_8h__dep__incl.md5 b/docs/FloatValue_8h__dep__incl.md5 deleted file mode 100644 index 972d717..0000000 --- a/docs/FloatValue_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -9a73d58edf4444ecb436553aba643585 \ No newline at end of file diff --git a/docs/FloatValue_8h__dep__incl.png b/docs/FloatValue_8h__dep__incl.png deleted file mode 100644 index b00242776347708efefe23e6094d639ecb77c355..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6866 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 diff --git a/docs/FloatValue_8h__incl.map b/docs/FloatValue_8h__incl.map deleted file mode 100644 index a80b6c8..0000000 --- a/docs/FloatValue_8h__incl.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/FloatValue_8h__incl.md5 b/docs/FloatValue_8h__incl.md5 deleted file mode 100644 index 07d0c69..0000000 --- a/docs/FloatValue_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -57518ea84d05060d1ecb612836c4662f \ No newline at end of file diff --git a/docs/FloatValue_8h__incl.png b/docs/FloatValue_8h__incl.png deleted file mode 100644 index 3f2294d4cc9a5683090207048632836f54adffaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10846 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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/FloatValue.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
FloatValue.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 #include <ostream>
-
4 
-
5 namespace Hazelnp
-
6 {
-
7  /** Specializations for floating point values (uses long double)
-
8  */
-
9  class FloatValue : public Value
-
10  {
-
11  public:
-
12  FloatValue(const long double& value);
-
13  ~FloatValue() override {};
-
14 
-
15  //! Will return a deeopopy of this object
-
16  Value* Deepcopy() const override;
-
17 
-
18  //! Will return a string suitable for an std::ostream;
-
19  std::string GetAsOsString() const override;
-
20 
-
21  //! Will return the raw value
-
22  const long double& GetValue() const;
-
23 
-
24  operator long double() const;
-
25  operator double() const;
-
26 
-
27  //! Will return the data as a long long int
-
28  long long int GetInt64() const override;
-
29  //! Will return the data as an int
-
30  int GetInt32() const override;
-
31 
-
32  //! Will return the data as a long double
-
33  long double GetFloat64() const override;
-
34  //! Will return the data as a double
-
35  double GetFloat32() const override;
-
36 
-
37  //! Will return the data as a string
-
38  std::string GetString() const override;
-
39 
-
40  //! Throws HazelnuppValueNotConvertibleException
-
41  const std::vector<Value*>& GetList() const override;
-
42 
-
43  private:
-
44  long double value;
-
45  };
-
46 }
-
-
long double GetFloat64() const override
Will return the data as a long double.
Definition: FloatValue.cpp:54
- -
~FloatValue() override
Definition: FloatValue.h:13
-
std::string GetString() const override
Will return the data as a string.
Definition: FloatValue.cpp:64
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: FloatValue.cpp:72
-
long long int GetInt64() const override
Will return the data as a long long int.
Definition: FloatValue.cpp:44
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: FloatValue.cpp:20
-
const long double & GetValue() const
Will return the raw value.
Definition: FloatValue.cpp:27
-
Specializations for floating point values (uses long double)
Definition: FloatValue.h:9
-
Abstract class for values.
Definition: Value.h:10
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: FloatValue.cpp:15
-
double GetFloat32() const override
Will return the data as a double.
Definition: FloatValue.cpp:59
-
FloatValue(const long double &value)
Definition: FloatValue.cpp:7
- -
int GetInt32() const override
Will return the data as an int.
Definition: FloatValue.cpp:49
- - - - diff --git a/docs/HazelnuppException_8h.html b/docs/HazelnuppException_8h.html deleted file mode 100644 index a5d6028..0000000 --- a/docs/HazelnuppException_8h.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/HazelnuppException.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
HazelnuppException.h File Reference
-
-
-
#include <stdexcept>
-#include <string>
-#include <sstream>
-#include "DataType.h"
-
-Include dependency graph for HazelnuppException.h:
-
-
- - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - - - - - -
-
-

Go to the source code of this file.

- - - - - - - - - - - - - - - - - - - - - - - -

-Classes

class  Hazelnp::HazelnuppException
 Generic hazelnupp exception. More...
 
class  Hazelnp::HazelnuppInvalidKeyException
 Gets thrown when an non-existent key gets dereferenced. More...
 
class  Hazelnp::HazelnuppValueNotConvertibleException
 Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible. More...
 
class  Hazelnp::HazelnuppConstraintException
 Gets thrown something bad happens because of parameter constraints. More...
 
class  Hazelnp::HazelnuppConstraintTypeMissmatch
 Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it. More...
 
class  Hazelnp::HazelnuppConstraintMissingValue
 Gets thrown when a parameter constrained to be required is not provided, and has no default value set. More...
 
class  Hazelnp::HazelnuppConstraintIncompatibleParameters
 Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones. More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/HazelnuppException_8h__dep__incl.map b/docs/HazelnuppException_8h__dep__incl.map deleted file mode 100644 index 016dbab..0000000 --- a/docs/HazelnuppException_8h__dep__incl.map +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/docs/HazelnuppException_8h__dep__incl.md5 b/docs/HazelnuppException_8h__dep__incl.md5 deleted file mode 100644 index 3beba8b..0000000 --- a/docs/HazelnuppException_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -6e865be0592ca1da6ebc6ef8f2a3d948 \ No newline at end of file diff --git a/docs/HazelnuppException_8h__dep__incl.png b/docs/HazelnuppException_8h__dep__incl.png deleted file mode 100644 index 2288f1baaaf484ae90328c4e6e8e4adcb67c9359..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15481 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 diff --git a/docs/HazelnuppException_8h__incl.map b/docs/HazelnuppException_8h__incl.map deleted file mode 100644 index abb40ee..0000000 --- a/docs/HazelnuppException_8h__incl.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/HazelnuppException_8h__incl.md5 b/docs/HazelnuppException_8h__incl.md5 deleted file mode 100644 index a3e64cd..0000000 --- a/docs/HazelnuppException_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -7da910c60f774be0fed8735daa712376 \ No newline at end of file diff --git a/docs/HazelnuppException_8h__incl.png b/docs/HazelnuppException_8h__incl.png deleted file mode 100644 index dfcdf55836ecbd1b91e60de9a5de40899f9f4a61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13084 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 Cb(j1A diff --git a/docs/HazelnuppException_8h_source.html b/docs/HazelnuppException_8h_source.html deleted file mode 100644 index 06881c8..0000000 --- a/docs/HazelnuppException_8h_source.html +++ /dev/null @@ -1,232 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/HazelnuppException.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
HazelnuppException.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <stdexcept>
-
3 #include <string>
-
4 #include <sstream>
-
5 #include "DataType.h"
-
6 
-
7 namespace Hazelnp
-
8 {
-
9  /** Generic hazelnupp exception
-
10  */
-
11  class HazelnuppException : public std::exception
-
12  {
-
13  public:
- -
15  HazelnuppException(const std::string& msg) : message{ msg } {};
-
16 
-
17  //! Will return an error message
-
18  const std::string& What() const
-
19  {
-
20  return message;
-
21  }
-
22 
-
23  protected:
-
24  std::string message;
-
25  };
-
26 
-
27  /** Gets thrown when an non-existent key gets dereferenced
-
28  */
- -
30  {
-
31  public:
- -
33  HazelnuppInvalidKeyException(const std::string& msg) : HazelnuppException(msg) {};
-
34  };
-
35 
-
36  /** Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible
-
37  */
- -
39  {
-
40  public:
- -
42  HazelnuppValueNotConvertibleException(const std::string& msg) : HazelnuppException(msg) {};
-
43  };
-
44 
-
45  /** Gets thrown something bad happens because of parameter constraints
-
46  */
- -
48  {
-
49  public:
- -
51  HazelnuppConstraintException(const std::string& msg) : HazelnuppException(msg) {};
-
52  };
-
53 
-
54  /** Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it
-
55  */
- -
57  {
-
58  public:
- - -
61 
-
62  HazelnuppConstraintTypeMissmatch(const std::string& key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string& paramDescription = "")
-
63  {
-
64  // Generate descriptive error message
-
65  std::stringstream ss;
-
66  ss << "Cannot convert parameter " << key << " to type " << DataTypeToString(requiredType)
-
67  << ". You supplied type: " << DataTypeToString(actualType) << ".";
-
68 
-
69  // Add the parameter description, if provided
-
70  if (paramDescription.length() > 0)
-
71  ss << std::endl << key << " => " << paramDescription;
-
72 
-
73  message = ss.str();
-
74  return;
-
75  };
-
76  };
-
77 
-
78  /** Gets thrown when a parameter constrained to be required is not provided, and has no default value set
-
79  */
- -
81  {
-
82  public:
- -
84  HazelnuppConstraintMissingValue(const std::string& key, const std::string& paramDescription = "")
-
85  {
-
86  // Generate descriptive error message
-
87  std::stringstream ss;
-
88  ss << "Missing required parameter " << key << ".";
-
89 
-
90  // Add the parameter description, if provided
-
91  if (paramDescription.length() > 0)
-
92  ss << std::endl << key << " => " << paramDescription;
-
93 
-
94  message = ss.str();
-
95  return;
-
96  };
-
97  };
-
98 
-
99  /** Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones
-
100  */
- -
102  {
-
103  public:
- -
105  HazelnuppConstraintIncompatibleParameters(const std::string& key1, const std::string& key2)
-
106  {
-
107  // Generate descriptive error message
-
108  std::stringstream ss;
-
109  ss << "Parameter \"" << key1 << "\" is NOT compatible with parameter \"" << key2 << "\"!";
-
110 
-
111  message = ss.str();
-
112  return;
-
113  };
-
114  };
-
115 }
-
- - -
HazelnuppInvalidKeyException(const std::string &msg)
- -
Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied along...
-
Gets thrown when an non-existent key gets dereferenced.
-
HazelnuppConstraintException(const std::string &msg)
-
HazelnuppException(const std::string &msg)
-
const std::string & What() const
Will return an error message.
- - -
Gets thrown something bad happens because of parameter constraints.
-
HazelnuppConstraintIncompatibleParameters(const std::string &key1, const std::string &key2)
-
Generic hazelnupp exception.
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
- - -
HazelnuppValueNotConvertibleException(const std::string &msg)
- -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
HazelnuppConstraintMissingValue(const std::string &key, const std::string &paramDescription="")
-
HazelnuppConstraintTypeMissmatch(const std::string &key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string &paramDescription="")
-
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
-
HazelnuppConstraintTypeMissmatch(const std::string &msg)
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - - - diff --git a/docs/Hazelnupp_8cpp.html b/docs/Hazelnupp_8cpp.html deleted file mode 100644 index 6ecce2d..0000000 --- a/docs/Hazelnupp_8cpp.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Hazelnupp.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnupp.cpp File Reference
-
-
-
#include "Hazelnupp.h"
-#include "VoidValue.h"
-#include "IntValue.h"
-#include "FloatValue.h"
-#include "StringValue.h"
-#include "ListValue.h"
-#include "HazelnuppException.h"
-#include "Placeholders.h"
-#include "StringTools.h"
-#include <iostream>
-#include <cstdlib>
-
-Include dependency graph for Hazelnupp.cpp:
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/Hazelnupp_8cpp__incl.map b/docs/Hazelnupp_8cpp__incl.map deleted file mode 100644 index f1f6081..0000000 --- a/docs/Hazelnupp_8cpp__incl.map +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/Hazelnupp_8cpp__incl.md5 b/docs/Hazelnupp_8cpp__incl.md5 deleted file mode 100644 index 3ab96cd..0000000 --- a/docs/Hazelnupp_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -16baf48028636080ba03165a663b1fef \ No newline at end of file diff --git a/docs/Hazelnupp_8cpp__incl.png b/docs/Hazelnupp_8cpp__incl.png deleted file mode 100644 index b7094a8d701b3bf3bfbe945b09022c4b9466692d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109995 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 Y*-*kJenX*M0}6gA$STW}N*Ve8KTCqpHvj+t diff --git a/docs/Hazelnupp_8cpp_source.html b/docs/Hazelnupp_8cpp_source.html deleted file mode 100644 index d812e48..0000000 --- a/docs/Hazelnupp_8cpp_source.html +++ /dev/null @@ -1,777 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Hazelnupp.cpp Source File - - - - - - - - - - - - -
-
-
Hazelnupp.cpp
-
-
-Go to the documentation of this file.
1 #include "Hazelnupp.h"
-
2 #include "VoidValue.h"
-
3 #include "IntValue.h"
-
4 #include "FloatValue.h"
-
5 #include "StringValue.h"
-
6 #include "ListValue.h"
-
7 #include "HazelnuppException.h"
-
8 #include "Placeholders.h"
-
9 #include "StringTools.h"
-
10 #include <iostream>
-
11 #include <cstdlib>
-
12 
-
13 using namespace Hazelnp;
-
14 
- -
16 {
-
17  return;
-
18 }
-
19 
-
20 Hazelnupp::Hazelnupp(const int argc, const char* const* argv)
-
21 {
-
22  Parse(argc, argv);
-
23  return;
-
24 }
-
25 
- -
27 {
-
28  for (auto& it : parameters)
-
29  delete it.second;
-
30 
-
31  parameters.clear();
-
32 
-
33  return;
-
34 }
-
35 
-
36 void Hazelnupp::Parse(const int argc, const char* const* argv)
-
37 {
-
38  try
-
39  {
-
40  // Populate raw arguments
-
41  PopulateRawArgs(argc, argv);
-
42 
-
43  // Expand abbreviations
-
44  ExpandAbbreviations();
-
45 
-
46  executableName = std::string(rawArgs[0]);
-
47 
-
48  std::size_t i = 1;
-
49  while (i < rawArgs.size())
-
50  {
-
51  if ((rawArgs[i].length() > 2) && (rawArgs[i].substr(0, 2) == "--"))
-
52  {
-
53  Parameter* param = nullptr;
-
54  i = ParseNextParameter(i, param);
-
55 
-
56  parameters.insert(std::pair<std::string, Parameter*>(param->Key(), param));
-
57  }
-
58  else
-
59  i++;
-
60  }
-
61 
-
62  // Apply constraints such as default values, and required parameters.
-
63  // Types have already been enforced.
-
64  // Dont apply constraints when we are just printind the param docs
-
65  if ((!catchHelp) || (!HasParam("--help")))
-
66  ApplyConstraints();
-
67  }
-
68  catch (const HazelnuppConstraintTypeMissmatch& exc)
-
69  {
-
70  if (crashOnFail)
-
71  {
-
72  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
73  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
74  quick_exit(-1009);
-
75  }
-
76  else
-
77  throw exc; // yeet
-
78  }
-
79  catch (const HazelnuppConstraintMissingValue& exc)
-
80  {
-
81  if (crashOnFail)
-
82  {
-
83  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
84  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
85  quick_exit(-1010);
-
86  }
-
87  else
-
88  throw exc; // yeet
-
89  }
-
90 
-
91  // Catch --help parameter
-
92  if ((catchHelp) && (HasParam("--help")))
-
93  {
-
94  std::cout << GenerateDocumentation() << std::endl;
-
95  quick_exit(0);
-
96  }
-
97 
-
98  return;
-
99 }
-
100 
-
101 std::size_t Hazelnupp::ParseNextParameter(const std::size_t parIndex, Parameter*& out_Par)
-
102 {
-
103  std::size_t i = parIndex;
-
104  const std::string key = rawArgs[parIndex];
-
105  std::vector<std::string> values;
-
106 
-
107  // Get values
-
108  for (i++; i < rawArgs.size(); i++)
-
109  // If not another parameter
-
110  if ((rawArgs[i].length() < 2) || (rawArgs[i].substr(0, 2) != "--"))
-
111  values.emplace_back(rawArgs[i]);
-
112  else
-
113  {
-
114  break;
-
115  }
-
116 
-
117  // Fetch constraint info
-
118  const ParamConstraint* pcn = GetConstraintForKey(key);
-
119 
-
120  Value* parsedVal = ParseValue(values, pcn);
-
121  if (parsedVal != nullptr)
-
122  {
-
123  out_Par = new Parameter(key, parsedVal);
-
124 
-
125  delete parsedVal;
-
126  parsedVal = nullptr;
-
127  }
-
128  else
-
129  throw std::runtime_error("Unable to parse parameter!");
-
130 
-
131  return i;
-
132 }
-
133 
-
134 void Hazelnupp::PopulateRawArgs(const int argc, const char* const* argv)
-
135 {
-
136  rawArgs.clear();
-
137  rawArgs.reserve(argc);
-
138 
-
139  for (int i = 0; i < argc; i++)
-
140  rawArgs.emplace_back(std::string(argv[i]));
-
141 
-
142  return;
-
143 }
-
144 
-
145 void Hazelnupp::ExpandAbbreviations()
-
146 {
-
147  // Abort if no abbreviations
-
148  if (parameterAbreviations.size() == 0)
-
149  return;
-
150 
-
151  for (std::string& arg : rawArgs)
-
152  {
-
153  // Is arg registered as an abbreviation?
-
154  auto abbr = parameterAbreviations.find(arg);
-
155  if (abbr != parameterAbreviations.end())
-
156  {
-
157  // Yes: replace arg with the long form
-
158  arg = abbr->second;
-
159  }
-
160  }
-
161 
-
162  return;
-
163 }
-
164 
-
165 bool Hazelnupp::HasParam(const std::string& key) const
-
166 {
-
167  return parameters.find(key) != parameters.end();
-
168 }
-
169 
-
170 Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const ParamConstraint* constraint)
-
171 {
-
172  // This is the raw (unconverted) data type the user provided
-
173  DATA_TYPE rawInputType;
-
174 
-
175  // Constraint values
-
176  const bool constrainType = (constraint != nullptr) && (constraint->constrainType);
-
177 
-
178  // Void-type
-
179  if (values.size() == 0)
-
180  {
-
181  rawInputType = DATA_TYPE::VOID;
-
182 
-
183  // Is a list forced via a constraint? If yes, return an empty list
-
184  if ((constrainType) &&
-
185  (constraint->requiredType == DATA_TYPE::LIST))
-
186  return new ListValue();
-
187 
-
188  // Is a string forced via a constraint? If yes, return an empty string
-
189  else if ((constrainType) &&
-
190  (constraint->requiredType == DATA_TYPE::STRING))
-
191  return new StringValue("");
-
192 
-
193  // Is an int or float forced via constraint? If yes, throw an exception
-
194  else if ((constrainType) &&
-
195  ((constraint->requiredType == DATA_TYPE::INT) ||
-
196  (constraint->requiredType == DATA_TYPE::FLOAT)))
- -
198  constraint->key,
-
199  constraint->requiredType,
-
200  rawInputType,
-
201  GetDescription(constraint->key)
-
202  );
-
203 
-
204  // Else, just return the void type
-
205  return new VoidValue;
-
206  }
-
207 
-
208  // Force void type by constraint
-
209  else if ((constrainType) &&
-
210  (constraint->requiredType == DATA_TYPE::VOID))
-
211  {
-
212  return new VoidValue;
-
213  }
-
214 
-
215  // List-type
-
216  else if (values.size() > 1)
-
217  {
-
218  rawInputType = DATA_TYPE::LIST;
-
219 
-
220  // Should the type be something other than list?
-
221  if ((constrainType) &&
-
222  (constraint->requiredType != DATA_TYPE::LIST))
-
223  {
- -
225  constraint->key,
-
226  constraint->requiredType,
-
227  rawInputType,
-
228  GetDescription(constraint->key)
-
229  );
-
230  }
-
231 
-
232  ListValue* newList = new ListValue();
-
233  for (const std::string& val : values)
-
234  {
-
235  Value* tmp = ParseValue({ val });
-
236  newList->AddValue(tmp);
-
237  delete tmp;
-
238  }
-
239  return newList;
-
240  }
-
241 
-
242  // Now we're only dealing with a single value
-
243  const std::string& val = values[0];
-
244 
-
245  // String
-
246  if (!StringTools::IsNumeric(val, true))
-
247  {
-
248  rawInputType = DATA_TYPE::STRING;
-
249 
-
250  // Is the type not supposed to be a string?
-
251  // void and list are already sorted out
-
252  if ((constrainType) &&
-
253  (constraint->requiredType != DATA_TYPE::STRING))
-
254  {
-
255  // We can only force a list-value from here
-
256  if (constraint->requiredType == DATA_TYPE::LIST)
-
257  {
-
258  ListValue* list = new ListValue();
-
259  Value* tmp = ParseValue({ val });
-
260  list->AddValue(tmp);
-
261  delete tmp;
-
262  tmp = nullptr;
-
263  return list;
-
264  }
-
265  // Else it is not possible to convert to a numeric
-
266  else
- -
268  constraint->key,
-
269  constraint->requiredType,
-
270  rawInputType,
-
271  GetDescription(constraint->key)
-
272  );
-
273  }
-
274 
-
275  return new StringValue(val);
-
276  }
-
277 
-
278  // In this case we have a numeric value.
-
279  // We should still produce a string if requested
-
280  if ((constrainType) &&
-
281  (constraint->requiredType == DATA_TYPE::STRING))
-
282  return new StringValue(val);
-
283 
-
284  // Numeric
-
285  bool isInt;
-
286  long double num;
-
287 
-
288  if (StringTools::ParseNumber(val, isInt, num))
-
289  {
-
290  rawInputType = isInt ? DATA_TYPE::INT : DATA_TYPE::FLOAT;
-
291 
-
292  // Is the type constrained?
-
293  // (only int and float left)
-
294  if (constrainType)
-
295  {
-
296  // Must it be an integer?
-
297  if (constraint->requiredType == DATA_TYPE::INT)
-
298  return new IntValue((long long int)num);
-
299  // Must it be a floating point?
-
300  else if (constraint->requiredType == DATA_TYPE::FLOAT)
-
301  return new FloatValue(num);
-
302  // Else it must be a List
-
303  else
-
304  {
-
305  ListValue* list = new ListValue();
-
306  Value* tmp = ParseValue({ val });
-
307  list->AddValue(tmp);
-
308  delete tmp;
-
309  tmp = nullptr;
-
310  return list;
-
311  }
-
312  }
-
313  // Type is not constrained
-
314  else
-
315  {
-
316  // Integer
-
317  if (isInt)
-
318  return new IntValue((long long int)num);
-
319 
-
320  // Double
-
321  return new FloatValue(num);
-
322  }
-
323  }
-
324 
-
325  // Failed
-
326  return nullptr;
-
327 }
-
328 
- -
330 {
-
331  return crashOnFail;
-
332 }
-
333 
-
334 void Hazelnupp::SetCatchHelp(bool catchHelp)
-
335 {
-
336  this->catchHelp = catchHelp;
-
337  return;
-
338 }
-
339 
- -
341 {
-
342  return catchHelp;
-
343 }
-
344 
-
345 void Hazelnupp::SetBriefDescription(const std::string& description)
-
346 {
-
347  briefDescription = description;
-
348  return;
-
349 }
-
350 
-
351 const std::string& Hazelnupp::GetBriefDescription()
-
352 {
-
353  return briefDescription;
-
354 }
-
355 
-
356 void Hazelnp::Hazelnupp::RegisterDescription(const std::string& parameter, const std::string& description)
-
357 {
-
358  parameterDescriptions[parameter] = description;
-
359  return;
-
360 }
-
361 
-
362 const std::string& Hazelnp::Hazelnupp::GetDescription(const std::string& parameter) const
-
363 {
-
364  // Do we already have a description for this parameter?
-
365  if (!HasDescription(parameter))
-
366  // No? Then return ""
- -
368 
-
369  // We do? Then return it
-
370  return parameterDescriptions.find(parameter)->second;
-
371 }
-
372 
-
373 bool Hazelnupp::HasDescription(const std::string& parameter) const
-
374 {
-
375  return parameterDescriptions.find(parameter) != parameterDescriptions.end();
-
376 }
-
377 
-
378 void Hazelnupp::ClearDescription(const std::string& parameter)
-
379 {
-
380  // This will just do nothing if the entry does not exist
-
381  parameterDescriptions.erase(parameter);
-
382  return;
-
383 }
-
384 
- -
386 {
-
387  parameterDescriptions.clear();
-
388  return;
-
389 }
-
390 
- -
392 {
-
393  std::stringstream ss;
-
394 
-
395  // Add brief, if available
-
396  if (briefDescription.length() > 0)
-
397  ss << briefDescription << std::endl;
-
398 
-
399  // Collect parameter information
-
400  struct ParamDocEntry
-
401  {
-
402  std::string abbreviation;
-
403  std::string description;
-
404  std::string type;
-
405  bool required = false;
-
406  bool typeIsForced = false;
-
407  std::string defaultVal;
-
408  };
-
409  std::unordered_map<std::string, ParamDocEntry> paramInfos;
-
410 
-
411  // Collect descriptions
-
412  for (const auto& it : parameterDescriptions)
-
413  {
-
414  // Do we already have that param in the paramInfo set?
-
415  if (paramInfos.find(it.first) == paramInfos.end())
-
416  // No? Create it.
-
417  paramInfos[it.first] = ParamDocEntry();
-
418 
-
419  paramInfos[it.first].description = it.second;
-
420  }
-
421 
-
422  // Collect abbreviations
-
423  // first value is abbreviation, second is long form
-
424  for (const auto& it : parameterAbreviations)
-
425  {
-
426  // Do we already have that param in the paramInfo set?
-
427  if (paramInfos.find(it.second) == paramInfos.end())
-
428  // No? Create it.
-
429  paramInfos[it.second] = ParamDocEntry();
-
430 
-
431  paramInfos[it.second].abbreviation = it.first;
-
432  }
-
433 
-
434  // Collect constraints
-
435  for (const auto& it : parameterConstraints)
-
436  {
-
437  // Do we already have that param in the paramInfo set?
-
438  if (paramInfos.find(it.first) == paramInfos.end())
-
439  // No? Create it.
-
440  paramInfos[it.first] = ParamDocEntry();
-
441 
-
442  ParamDocEntry& cached = paramInfos[it.first];
-
443  cached.required = it.second.required;
-
444  cached.typeIsForced = it.second.constrainType;
-
445  cached.type = DataTypeToString(it.second.requiredType);
-
446 
-
447  std::stringstream defaultValueSs;
-
448  for (const std::string& s : it.second.defaultValue)
-
449  {
-
450  defaultValueSs << '\'' << s << '\'';
-
451 
-
452  // Add a space if we are not at the last entry
-
453  if ((void*)&s != (void*)&it.second.defaultValue.back())
-
454  defaultValueSs << " ";
-
455  }
-
456  cached.defaultVal = defaultValueSs.str();
-
457  }
-
458 
-
459  // Now generate the documentatino body
-
460  if (paramInfos.size() > 0)
-
461  {
-
462  ss << std::endl
-
463  << "==== AVAILABLE PARAMETERS ===="
-
464  << std::endl << std::endl;
-
465 
-
466  std::size_t counter = 0;
-
467  for (const auto& it : paramInfos)
-
468  {
-
469  const ParamDocEntry& pde = it.second;
-
470 
-
471  // Put name
-
472  ss << it.first << " ";
-
473 
-
474  // Put abbreviation
-
475  if (pde.abbreviation.length() > 0)
-
476  ss << pde.abbreviation << " ";
-
477 
-
478  // Put type
-
479  if (pde.typeIsForced)
-
480  ss << pde.type << " ";
-
481 
-
482  // Put default value
-
483  if (pde.defaultVal.length() > 0)
-
484  ss << "default=[" << pde.defaultVal << "] ";
-
485 
-
486  // Put required tag, but only if no default value
-
487  if ((pde.required) && (pde.defaultVal.length() == 0))
-
488  ss << "[[REQUIRED]] ";
-
489 
-
490  // Put brief description
-
491  if (pde.description.length() > 0)
-
492  ss << pde.description;
-
493 
-
494  // Omit linebreaks when we're on the last element
-
495  if (counter < paramInfos.size()-1)
-
496  ss << std::endl << std::endl;
-
497 
-
498  counter++;
-
499  }
-
500  }
-
501 
-
502  return ss.str();
-
503 }
-
504 
-
505 void Hazelnupp::ApplyConstraints()
-
506 {
-
507  // Enforce required parameters / default values
-
508  for (const auto& pc : parameterConstraints)
-
509  // Parameter in question is not supplied
-
510  if (!HasParam(pc.second.key))
-
511  {
-
512  // Do we have a default value?
-
513  if (pc.second.defaultValue.size() > 0)
-
514  {
-
515  // Then create it now, by its default value
-
516 
-
517  Value* tmp = ParseValue(pc.second.defaultValue, &pc.second);
-
518  parameters.insert(std::pair<std::string, Parameter*>(
-
519  pc.second.key,
-
520  new Parameter(pc.second.key, tmp)
-
521  ));
-
522 
-
523  delete tmp;
-
524  tmp = nullptr;
-
525  }
-
526  // So we do not have a default value...
-
527  else
-
528  {
-
529  // Is it important to have the missing parameter?
-
530  if (pc.second.required)
-
531  // Throw an error message then
- -
533  pc.second.key,
-
534  GetDescription(pc.second.key)
-
535  );
-
536  }
-
537  }
-
538 
-
539  return;
-
540 }
-
541 
-
542 ParamConstraint Hazelnupp::GetConstraint(const std::string& parameter) const
-
543 {
-
544  return parameterConstraints.find(parameter)->second;
-
545 }
-
546 
-
547 void Hazelnupp::ClearConstraint(const std::string& parameter)
-
548 {
-
549  parameterConstraints.erase(parameter);
-
550  return;
-
551 }
-
552 
-
553 const std::string& Hazelnupp::GetExecutableName() const
-
554 {
-
555  return executableName;
-
556 }
-
557 
-
558 const Value& Hazelnupp::operator[](const std::string& key) const
-
559 {
-
560  // Throw exception if param is unknown
-
561  if (!HasParam(key))
- -
563 
-
564  return *parameters.find(key)->second->GetValue();
-
565 }
-
566 
-
567 void Hazelnupp::RegisterAbbreviation(const std::string& abbrev, const std::string& target)
-
568 {
-
569  parameterAbreviations.insert(std::pair<std::string, std::string>(abbrev, target));
-
570  return;
-
571 }
-
572 
-
573 const std::string& Hazelnupp::GetAbbreviation(const std::string& abbrev) const
-
574 {
-
575  if (!HasAbbreviation(abbrev))
- -
577 
-
578  return parameterAbreviations.find(abbrev)->second;
-
579 }
-
580 
-
581 bool Hazelnupp::HasAbbreviation(const std::string& abbrev) const
-
582 {
-
583  return parameterAbreviations.find(abbrev) != parameterAbreviations.end();
-
584 }
-
585 
-
586 void Hazelnupp::ClearAbbreviation(const std::string& abbrevation)
-
587 {
-
588  parameterAbreviations.erase(abbrevation);
-
589  return;
-
590 }
-
591 
- -
593 {
-
594  parameterAbreviations.clear();
-
595  return;
-
596 }
-
597 
-
598 void Hazelnupp::RegisterConstraint(const std::string& key, const ParamConstraint& constraint)
-
599 {
-
600  // Magic syntax, wooo
-
601  (parameterConstraints[key] = constraint).key = key;
-
602  return;
-
603 }
-
604 
- -
606 {
-
607  parameterConstraints.clear();
-
608  return;
-
609 }
-
610 
-
611 void Hazelnupp::SetCrashOnFail(bool crashOnFail)
-
612 {
-
613  this->crashOnFail = crashOnFail;
-
614  return;
-
615 }
-
616 
-
617 const ParamConstraint* Hazelnupp::GetConstraintForKey(const std::string& key) const
-
618 {
-
619  const auto constraint = parameterConstraints.find(key);
-
620 
-
621  if (constraint == parameterConstraints.end())
-
622  return nullptr;
-
623 
-
624  return &constraint->second;
-
625 }
-
- - -
Specializations for integer values (uses long long int)
Definition: IntValue.h:8
-
static bool IsNumeric(const std::string &str, const bool allowDecimalPoint=false)
Will return true if the given string consists only of digits (including signage)
Definition: StringTools.cpp:56
-
static bool ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)
Will convert the number in str to a number.
Definition: StringTools.cpp:82
-
const std::string & GetBriefDescription()
Returns the brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:351
-
void ClearConstraints()
Will delete all constraints.
Definition: Hazelnupp.cpp:605
-
Gets thrown when an non-existent key gets dereferenced.
-
const std::string & GetExecutableName() const
Will return argv[0], the name of the executable.
Definition: Hazelnupp.cpp:553
-
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
Definition: Hazelnupp.cpp:391
-
ParamConstraint GetConstraint(const std::string &parameter) const
Will return the constraint information for a specific parameter.
Definition: Hazelnupp.cpp:542
- -
const Value & operator[](const std::string &key) const
Will return the value given a key.
Definition: Hazelnupp.cpp:558
- -
const std::string & What() const
Will return an error message.
- - - -
void ClearAbbreviations()
Will delete all abbreviations.
Definition: Hazelnupp.cpp:592
- -
Specializations for floating point values (uses long double)
Definition: FloatValue.h:9
-
DATA_TYPE requiredType
Constrain the parameter to this value. Requires constrainType to be set to true.
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:345
-
Abstract class for values.
Definition: Value.h:10
-
bool GetCrashOnFail() const
Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
Definition: Hazelnupp.cpp:329
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
Definition: Hazelnupp.cpp:373
-
void SetCatchHelp(bool catchHelp)
Sets whether the Hazelnupp should automatically catch the –help parameter, print the parameter docume...
Definition: Hazelnupp.cpp:334
-
bool GetCatchHelp() const
Retruns whether the Hazelnupp should automatically catch the –help parameter, print the parameter doc...
Definition: Hazelnupp.cpp:340
- - - -
static const std::string g_emptyString
The only purpose of this is to provide the ability to return an empty string as an error for std::str...
Definition: Placeholders.h:9
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
Definition: Hazelnupp.cpp:165
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:36
- -
bool constrainType
Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
-
void ClearDescription(const std::string &parameter)
Will delete the description of a parameter if it exists.
Definition: Hazelnupp.cpp:378
-
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
Definition: Hazelnupp.cpp:567
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
- -
const std::string & GetAbbreviation(const std::string &abbrev) const
Will return the long form of an abbreviation (like –force for -f) Returns "" if no match is found.
Definition: Hazelnupp.cpp:573
-
void ClearDescriptions()
Will delete all parameter descriptions.
Definition: Hazelnupp.cpp:385
- -
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:33
-
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
Definition: Hazelnupp.cpp:598
-
Specializations for void values.
Definition: VoidValue.h:8
-
const std::string & GetDescription(const std::string &parameter) const
Will return a short description for a parameter, if it exists.
Definition: Hazelnupp.cpp:362
- - -
void ClearConstraint(const std::string &parameter)
Will the constraint of a specific parameter.
Definition: Hazelnupp.cpp:547
- -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
Definition: Hazelnupp.cpp:581
- -
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
Definition: Hazelnupp.cpp:611
-
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
Definition: Hazelnupp.cpp:356
-
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
-
void ClearAbbreviation(const std::string &abbrevation)
Will delete the abbreviation for a given parameter.
Definition: Hazelnupp.cpp:586
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:9
-
Specializations for string values (uses std::string)
Definition: StringValue.h:9
- - - - - diff --git a/docs/Hazelnupp_8h.html b/docs/Hazelnupp_8h.html deleted file mode 100644 index 1009273..0000000 --- a/docs/Hazelnupp_8h.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Hazelnupp.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnupp.h File Reference
-
-
-
#include "Parameter.h"
-#include "ParamConstraint.h"
-#include <unordered_map>
-#include <vector>
-
-Include dependency graph for Hazelnupp.h:
-
-
- - - - - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::Hazelnupp
 The main class to interface with. More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/Hazelnupp_8h__dep__incl.map b/docs/Hazelnupp_8h__dep__incl.map deleted file mode 100644 index d3276c4..0000000 --- a/docs/Hazelnupp_8h__dep__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/Hazelnupp_8h__dep__incl.md5 b/docs/Hazelnupp_8h__dep__incl.md5 deleted file mode 100644 index 7c4195d..0000000 --- a/docs/Hazelnupp_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -9ea9d229b244e88be56b9485081ca20a \ No newline at end of file diff --git a/docs/Hazelnupp_8h__dep__incl.png b/docs/Hazelnupp_8h__dep__incl.png deleted file mode 100644 index f3711036d852e8584083e17372078bfa93e83b6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3012 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 q7ip>t - - - - - - - - - - diff --git a/docs/Hazelnupp_8h__incl.md5 b/docs/Hazelnupp_8h__incl.md5 deleted file mode 100644 index 49dadf1..0000000 --- a/docs/Hazelnupp_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -845ac1274f12c8f52f49584ce1233b40 \ No newline at end of file diff --git a/docs/Hazelnupp_8h__incl.png b/docs/Hazelnupp_8h__incl.png deleted file mode 100644 index ab8c7620462d0a5d49283f36c1f1663da993d713..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32669 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

-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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Hazelnupp.h Source File - - - - - - - - - - - -

-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnupp.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Parameter.h"
-
3 #include "ParamConstraint.h"
-
4 #include <unordered_map>
-
5 #include <vector>
-
6 
-
7 namespace Hazelnp
-
8 {
-
9  /** The main class to interface with
-
10  */
-
11  class Hazelnupp
-
12  {
-
13  public:
-
14  Hazelnupp();
-
15  Hazelnupp(const int argc, const char* const* argv);
-
16 
-
17  ~Hazelnupp();
-
18 
-
19  //! Will parse command line arguments
-
20  void Parse(const int argc, const char* const* argv);
-
21 
-
22  //! Will return argv[0], the name of the executable.
-
23  const std::string& GetExecutableName() const;
-
24 
-
25  //! Will return the value given a key
-
26  const Value& operator[](const std::string& key) const;
-
27 
-
28  //! Will check wether a parameter exists given a key, or not
-
29  bool HasParam(const std::string& key) const;
-
30 
-
31  // Abbreviations
-
32  //! Will register an abbreviation (like -f for --force)
-
33  void RegisterAbbreviation(const std::string& abbrev, const std::string& target);
-
34 
-
35  //! Will return the long form of an abbreviation (like --force for -f)
-
36  //! Returns "" if no match is found
-
37  const std::string& GetAbbreviation(const std::string& abbrev) const;
-
38 
-
39  //! Will check wether or not an abbreviation is registered
-
40  bool HasAbbreviation(const std::string& abbrev) const;
-
41 
-
42  //! Will delete the abbreviation for a given parameter.
-
43  //! IMPORTANT: This parameter is the abbreviation! Not the long form!
-
44  void ClearAbbreviation(const std::string& abbrevation);
-
45 
-
46  //! Will delete all abbreviations
-
47  void ClearAbbreviations();
-
48 
-
49  //! Will register a constraint for a parameter.
-
50  //! IMPORTANT: Any parameter can only have ONE constraint. Applying a new one will overwrite the old one!
-
51  //! Construct the ParamConstraint struct yourself to combine Require and TypeSafety! You can also use the ParamConstraint constructor!
-
52  void RegisterConstraint(const std::string& key, const ParamConstraint& constraint);
-
53 
-
54  //! Will return the constraint information for a specific parameter
-
55  ParamConstraint GetConstraint(const std::string& parameter) const;
-
56 
-
57  //! Will the constraint of a specific parameter
-
58  void ClearConstraint(const std::string& parameter);
-
59 
-
60  //! Will delete all constraints
-
61  void ClearConstraints();
-
62 
-
63  //! Sets whether to crash the application, and print to stderr, when an exception is
-
64  //! raised whilst parsing, or not.
-
65  void SetCrashOnFail(bool crashOnFail);
-
66 
-
67  //! Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
-
68  bool GetCrashOnFail() const;
-
69 
-
70  //! Sets whether the Hazelnupp should automatically catch the --help parameter, print the parameter documentation to stdout, and exit or not.
-
71  void SetCatchHelp(bool catchHelp);
-
72 
-
73  //! Retruns whether the Hazelnupp should automatically catch the --help parameter, print the parameter documentation to stdout, and exit or not.
-
74  bool GetCatchHelp() const;
-
75 
-
76  //! Sets a brief description of the application to be automatically added to the documentation.
-
77  void SetBriefDescription(const std::string& description);
-
78 
-
79  //! Returns the brief description of the application to be automatically added to the documentation.
-
80  const std::string& GetBriefDescription();
-
81 
-
82  //! Willl register a short description for a parameter.
-
83  //! Will overwrite existing descriptions for that parameter.
-
84  void RegisterDescription(const std::string& parameter, const std::string& description);
-
85 
-
86  //! Will return a short description for a parameter, if it exists.
-
87  //! Empty string if it does not exist.
-
88  const std::string& GetDescription(const std::string& parameter) const;
-
89 
-
90  //! Returns whether or not a given parameter has a registered description
-
91  bool HasDescription(const std::string& parameter) const;
-
92 
-
93  //! Will delete the description of a parameter if it exists.
-
94  void ClearDescription(const std::string& parameter);
-
95 
-
96  //! Will delete all parameter descriptions
-
97  void ClearDescriptions();
-
98 
-
99  //! Will generate a text-based documentation suited to show the user, for example on --help.
-
100  std::string GenerateDocumentation() const;
-
101 
-
102  private:
-
103  //! Will translate the c-like args to an std::vector
-
104  void PopulateRawArgs(const int argc, const char* const* argv);
-
105 
-
106  //! Will replace all args matching an abbreviation with their long form (like -f for --force)
-
107  void ExpandAbbreviations();
-
108 
-
109  //! Will parse the next parameter. Returns the index of the next parameter.
-
110  std::size_t ParseNextParameter(const std::size_t parIndex, Parameter*& out_Par);
-
111 
-
112  //! Will convert a vector of string-values to an actual Value
-
113  Value* ParseValue(const std::vector<std::string>& values, const ParamConstraint* constraint = nullptr);
-
114 
-
115  //! Will apply the loaded constraints on the loaded values, exluding types.
-
116  void ApplyConstraints();
-
117 
-
118  //! Will return a pointer to a paramConstraint given a key. If there is no, it returns nullptr
-
119  const ParamConstraint* GetConstraintForKey(const std::string& key) const;
-
120 
-
121  std::string executableName; //! The path of the executable. Always argv[0]
-
122  std::unordered_map<std::string, Parameter*> parameters;
-
123 
-
124  //! These are abbreviations. Like, -f for --force.
-
125  std::unordered_map<std::string, std::string> parameterAbreviations;
-
126 
-
127  //! Parameter constraints, mapped to keys
-
128  std::unordered_map<std::string, ParamConstraint> parameterConstraints;
-
129 
-
130  //! Raw argv
-
131  std::vector<std::string> rawArgs;
-
132 
-
133  //! Short descriptions for parameters
-
134  //! First member is the abbreviation
-
135  std::unordered_map<std::string, std::string> parameterDescriptions;
-
136 
-
137  //! A brief description of the application to be added to the generated documentation. Optional.
-
138  std::string briefDescription;
-
139 
-
140  //! If set to true, Hazelnupp will automatically catch the --help parameter, print the parameter documentation to stdout and exit.
-
141  bool catchHelp = true;
-
142 
-
143  //! If set to true, Hazelnupp will crash the application with output to stderr when an exception is thrown whilst parsing.
-
144  bool crashOnFail = true;
-
145  };
-
146 }
-
- -
const std::string & GetBriefDescription()
Returns the brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:351
-
void ClearConstraints()
Will delete all constraints.
Definition: Hazelnupp.cpp:605
-
const std::string & GetExecutableName() const
Will return argv[0], the name of the executable.
Definition: Hazelnupp.cpp:553
-
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
Definition: Hazelnupp.cpp:391
-
ParamConstraint GetConstraint(const std::string &parameter) const
Will return the constraint information for a specific parameter.
Definition: Hazelnupp.cpp:542
- -
const Value & operator[](const std::string &key) const
Will return the value given a key.
Definition: Hazelnupp.cpp:558
-
The main class to interface with.
Definition: Hazelnupp.h:11
- -
void ClearAbbreviations()
Will delete all abbreviations.
Definition: Hazelnupp.cpp:592
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:345
-
Abstract class for values.
Definition: Value.h:10
- -
bool GetCrashOnFail() const
Gets whether the application crashes on an exception whilst parsing, and prints to stderr.
Definition: Hazelnupp.cpp:329
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
Definition: Hazelnupp.cpp:373
-
void SetCatchHelp(bool catchHelp)
Sets whether the Hazelnupp should automatically catch the –help parameter, print the parameter docume...
Definition: Hazelnupp.cpp:334
-
bool GetCatchHelp() const
Retruns whether the Hazelnupp should automatically catch the –help parameter, print the parameter doc...
Definition: Hazelnupp.cpp:340
- - -
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
Definition: Hazelnupp.cpp:165
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:36
-
void ClearDescription(const std::string &parameter)
Will delete the description of a parameter if it exists.
Definition: Hazelnupp.cpp:378
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
Definition: Hazelnupp.cpp:567
-
const std::string & GetAbbreviation(const std::string &abbrev) const
Will return the long form of an abbreviation (like –force for -f) Returns "" if no match is found.
Definition: Hazelnupp.cpp:573
-
void ClearDescriptions()
Will delete all parameter descriptions.
Definition: Hazelnupp.cpp:385
- -
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
Definition: Hazelnupp.cpp:598
-
const std::string & GetDescription(const std::string &parameter) const
Will return a short description for a parameter, if it exists.
Definition: Hazelnupp.cpp:362
-
void ClearConstraint(const std::string &parameter)
Will the constraint of a specific parameter.
Definition: Hazelnupp.cpp:547
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
Definition: Hazelnupp.cpp:581
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
Definition: Hazelnupp.cpp:611
-
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
Definition: Hazelnupp.cpp:356
-
void ClearAbbreviation(const std::string &abbrevation)
Will delete the abbreviation for a given parameter.
Definition: Hazelnupp.cpp:586
- - - - diff --git a/docs/IntValue_8cpp.html b/docs/IntValue_8cpp.html deleted file mode 100644 index db59b06..0000000 --- a/docs/IntValue_8cpp.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/IntValue.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
IntValue.cpp File Reference
-
-
-
#include "IntValue.h"
-#include "HazelnuppException.h"
-#include <sstream>
-
-Include dependency graph for IntValue.cpp:
-
-
- - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/IntValue_8cpp__incl.map b/docs/IntValue_8cpp__incl.map deleted file mode 100644 index c0e2a4e..0000000 --- a/docs/IntValue_8cpp__incl.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/IntValue_8cpp__incl.md5 b/docs/IntValue_8cpp__incl.md5 deleted file mode 100644 index 22b5944..0000000 --- a/docs/IntValue_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -a735acab82e17102515add4f64c52e50 \ No newline at end of file diff --git a/docs/IntValue_8cpp__incl.png b/docs/IntValue_8cpp__incl.png deleted file mode 100644 index 0f1f9f34be1228bb17d7846f147dffe32f399c9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24191 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�oFGq!aZ(9M9lC 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 diff --git a/docs/IntValue_8cpp_source.html b/docs/IntValue_8cpp_source.html deleted file mode 100644 index d5b128f..0000000 --- a/docs/IntValue_8cpp_source.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/IntValue.cpp Source File - - - - - - - - - - - - -
-
-
IntValue.cpp
-
-
-Go to the documentation of this file.
1 #include "IntValue.h"
-
2 #include "HazelnuppException.h"
-
3 #include <sstream>
-
4 
-
5 using namespace Hazelnp;
-
6 
-
7 IntValue::IntValue(const long long int& value)
-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
14 
- -
16 {
-
17  return new IntValue(value);
-
18 }
-
19 
-
20 std::string IntValue::GetAsOsString() const
-
21 {
-
22  std::stringstream ss;
-
23  ss << "IntValue: " << value;
-
24  return ss.str();
-
25 }
-
26 
-
27 const long long int& IntValue::GetValue() const
-
28 {
-
29  return value;
-
30 }
-
31 
-
32 IntValue::operator long long int() const
-
33 {
-
34  return value;
-
35 }
-
36 
-
37 IntValue::operator int() const
-
38 {
-
39  return (int)value;
-
40 }
-
41 
-
42 
-
43 
-
44 long long int IntValue::GetInt64() const
-
45 {
-
46  return value;
-
47 }
-
48 
-
49 int IntValue::GetInt32() const
-
50 {
-
51  return (int)value;
-
52 }
-
53 
-
54 long double IntValue::GetFloat64() const
-
55 {
-
56  return (long double)value;
-
57 }
-
58 
-
59 double IntValue::GetFloat32() const
-
60 {
-
61  return (double)value;
-
62 }
-
63 
-
64 std::string IntValue::GetString() const
-
65 {
-
66  std::stringstream ss;
-
67  ss << value;
-
68 
-
69  return ss.str();
-
70 }
-
71 
-
72 const std::vector<Value*>& IntValue::GetList() const
-
73 {
- -
75 }
-
- -
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: IntValue.cpp:20
- -
double GetFloat32() const override
Will return the data as a double.
Definition: IntValue.cpp:59
- -
IntValue(const long long int &value)
Definition: IntValue.cpp:7
-
Abstract class for values.
Definition: Value.h:10
-
int GetInt32() const override
Will return the data as an int.
Definition: IntValue.cpp:49
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: IntValue.cpp:72
-
long double GetFloat64() const override
Will return the data as a long double.
Definition: IntValue.cpp:54
-
std::string GetString() const override
Will return the data as a string.
Definition: IntValue.cpp:64
-
long long int GetInt64() const override
Will return the data as a long long int.
Definition: IntValue.cpp:44
-
const long long int & GetValue() const
Will return the raw value.
Definition: IntValue.cpp:27
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: IntValue.cpp:15
- -
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/IntValue_8h.html b/docs/IntValue_8h.html deleted file mode 100644 index e6f877d..0000000 --- a/docs/IntValue_8h.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/IntValue.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
IntValue.h File Reference
-
-
-
#include "Value.h"
-
-Include dependency graph for IntValue.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::IntValue
 Specializations for integer values (uses long long int) More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/IntValue_8h__dep__incl.map b/docs/IntValue_8h__dep__incl.map deleted file mode 100644 index 4897b85..0000000 --- a/docs/IntValue_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/IntValue_8h__dep__incl.md5 b/docs/IntValue_8h__dep__incl.md5 deleted file mode 100644 index c741961..0000000 --- a/docs/IntValue_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -210bd13ae99f4f3c78d0bcbf903f3b49 \ No newline at end of file diff --git a/docs/IntValue_8h__dep__incl.png b/docs/IntValue_8h__dep__incl.png deleted file mode 100644 index 1aced50b7fc647c0eb302a999b0375ee055e89d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6657 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 - - - - - - - diff --git a/docs/IntValue_8h__incl.md5 b/docs/IntValue_8h__incl.md5 deleted file mode 100644 index 0173fa1..0000000 --- a/docs/IntValue_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -01877cbc4116c27e4712daf7947a4545 \ No newline at end of file diff --git a/docs/IntValue_8h__incl.png b/docs/IntValue_8h__incl.png deleted file mode 100644 index c562779c1ed6f992ad533e8036e7d7b0b5a9f8a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9219 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 diff --git a/docs/IntValue_8h_source.html b/docs/IntValue_8h_source.html deleted file mode 100644 index fc1e7e9..0000000 --- a/docs/IntValue_8h_source.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/IntValue.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
IntValue.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 
-
4 namespace Hazelnp
-
5 {
-
6  /** Specializations for integer values (uses long long int)
-
7  */
-
8  class IntValue : public Value
-
9  {
-
10  public:
-
11  IntValue(const long long int& value);
-
12  ~IntValue() override {};
-
13 
-
14  //! Will return a deeopopy of this object
-
15  Value* Deepcopy() const override;
-
16 
-
17  //! Will return a string suitable for an std::ostream;
-
18  std::string GetAsOsString() const override;
-
19 
-
20  //! Will return the raw value
-
21  const long long int& GetValue() const;
-
22 
-
23  operator long long int() const;
-
24  operator int() const;
-
25 
-
26 
-
27  //! Will return the data as a long long int
-
28  long long int GetInt64() const override;
-
29  //! Will return the data as an int
-
30  int GetInt32() const override;
-
31 
-
32  //! Will return the data as a long double
-
33  long double GetFloat64() const override;
-
34  //! Will return the data as a double
-
35  double GetFloat32() const override;
-
36 
-
37  //! Will return the data as a string
-
38  std::string GetString() const override;
-
39 
-
40  //! Throws HazelnuppValueNotConvertibleException
-
41  const std::vector<Value*>& GetList() const override;
-
42 
-
43  private:
-
44  long long int value;
-
45  };
-
46 }
-
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: IntValue.cpp:20
- -
Specializations for integer values (uses long long int)
Definition: IntValue.h:8
-
double GetFloat32() const override
Will return the data as a double.
Definition: IntValue.cpp:59
-
~IntValue() override
Definition: IntValue.h:12
-
IntValue(const long long int &value)
Definition: IntValue.cpp:7
-
Abstract class for values.
Definition: Value.h:10
-
int GetInt32() const override
Will return the data as an int.
Definition: IntValue.cpp:49
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: IntValue.cpp:72
-
long double GetFloat64() const override
Will return the data as a long double.
Definition: IntValue.cpp:54
-
std::string GetString() const override
Will return the data as a string.
Definition: IntValue.cpp:64
-
long long int GetInt64() const override
Will return the data as a long long int.
Definition: IntValue.cpp:44
-
const long long int & GetValue() const
Will return the raw value.
Definition: IntValue.cpp:27
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: IntValue.cpp:15
- - - - - diff --git a/docs/ListValue_8cpp.html b/docs/ListValue_8cpp.html deleted file mode 100644 index be6bb38..0000000 --- a/docs/ListValue_8cpp.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ListValue.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
ListValue.cpp File Reference
-
-
-
#include "ListValue.h"
-#include "HazelnuppException.h"
-#include <sstream>
-
-Include dependency graph for ListValue.cpp:
-
-
- - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/ListValue_8cpp__incl.map b/docs/ListValue_8cpp__incl.map deleted file mode 100644 index b61c796..0000000 --- a/docs/ListValue_8cpp__incl.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/ListValue_8cpp__incl.md5 b/docs/ListValue_8cpp__incl.md5 deleted file mode 100644 index fdbd642..0000000 --- a/docs/ListValue_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -0799ff068d78d8da242bc5bfd0ee52d6 \ No newline at end of file diff --git a/docs/ListValue_8cpp__incl.png b/docs/ListValue_8cpp__incl.png deleted file mode 100644 index 7e1de27947021703d961e6a67d4b8873b1c84917..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27392 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ģ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 z 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%0A($Hk`vC%hMys8So!FJR*wVGB5};m@FGS$l}n} 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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ListValue.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
ListValue.cpp
-
-
-Go to the documentation of this file.
1 #include "ListValue.h"
-
2 #include "HazelnuppException.h"
-
3 #include <sstream>
-
4 
-
5 using namespace Hazelnp;
-
6 
- - -
9 {
-
10  return;
-
11 }
-
12 
- -
14 {
-
15  for (Value* val : value)
-
16  delete val;
-
17 
-
18  value.clear();
-
19 
-
20  return;
-
21 }
-
22 
- -
24 {
-
25  ListValue* newList = new ListValue();
-
26 
-
27  for (const Value* val : value)
-
28  newList->AddValue(val);
-
29 
-
30  return newList;
-
31 }
-
32 
-
33 void ListValue::AddValue(const Value* value)
-
34 {
-
35  this->value.emplace_back(value->Deepcopy());
-
36  return;
-
37 }
-
38 
-
39 const std::vector<Value*>& ListValue::GetValue() const
-
40 {
-
41  return value;
-
42 }
-
43 
-
44 std::string ListValue::GetAsOsString() const
-
45 {
-
46  std::stringstream ss;
-
47 
-
48  ss << "ListValue: [";
-
49 
-
50  for (const Value* val : value)
-
51  {
-
52  ss << *val;
-
53  if (val != value.back())
-
54  ss << ", ";
-
55  }
-
56 
-
57  ss << "]";
-
58 
-
59  return ss.str();
-
60 }
-
61 
-
62 ListValue::operator std::vector<Value*>() const
-
63 {
-
64  return value;
-
65 }
-
66 
-
67 
-
68 
-
69 long long int ListValue::GetInt64() const
-
70 {
- -
72 }
-
73 
- -
75 {
- -
77 }
-
78 
-
79 long double ListValue::GetFloat64() const
-
80 {
- -
82 }
-
83 
-
84 double ListValue::GetFloat32() const
-
85 {
- -
87 }
-
88 
-
89 std::string ListValue::GetString() const
-
90 {
- -
92 }
-
93 
-
94 const std::vector<Value*>& ListValue::GetList() const
-
95 {
-
96  return value;
-
97 }
-
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: ListValue.cpp:44
- - -
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:84
-
std::string GetString() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:89
-
const std::vector< Value * > & GetList() const override
Will return this values list.
Definition: ListValue.cpp:94
-
const std::vector< Value * > & GetValue() const
Will return the raw value.
Definition: ListValue.cpp:39
-
Abstract class for values.
Definition: Value.h:10
- -
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:69
-
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:74
- -
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:33
-
~ListValue() override
Definition: ListValue.cpp:13
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
- -
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: ListValue.cpp:23
-
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
-
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:79
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:9
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/ListValue_8h.html b/docs/ListValue_8h.html deleted file mode 100644 index 130a391..0000000 --- a/docs/ListValue_8h.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ListValue.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
ListValue.h File Reference
-
-
-
#include "Value.h"
-#include <vector>
-
-Include dependency graph for ListValue.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::ListValue
 Specializations for list values (uses std::vector<Value*>) More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/ListValue_8h__dep__incl.map b/docs/ListValue_8h__dep__incl.map deleted file mode 100644 index a41c615..0000000 --- a/docs/ListValue_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/ListValue_8h__dep__incl.md5 b/docs/ListValue_8h__dep__incl.md5 deleted file mode 100644 index c4ded7a..0000000 --- a/docs/ListValue_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -f2fcfdd1c5f4d9d482e8985a8a7faca7 \ No newline at end of file diff --git a/docs/ListValue_8h__dep__incl.png b/docs/ListValue_8h__dep__incl.png deleted file mode 100644 index 9ddecd8c200e3c1010a4dad10296c3023f7835d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6708 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 - - - - - - - diff --git a/docs/ListValue_8h__incl.md5 b/docs/ListValue_8h__incl.md5 deleted file mode 100644 index 2334444..0000000 --- a/docs/ListValue_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -1ba6aca83c254dd89645ea4110f26a39 \ No newline at end of file diff --git a/docs/ListValue_8h__incl.png b/docs/ListValue_8h__incl.png deleted file mode 100644 index 9a9027681877f271fa03c4b93c172040184bc762..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11233 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 E0Y9WCD*ylh diff --git a/docs/ListValue_8h_source.html b/docs/ListValue_8h_source.html deleted file mode 100644 index 0fa3a52..0000000 --- a/docs/ListValue_8h_source.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ListValue.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
ListValue.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 #include <vector>
-
4 
-
5 namespace Hazelnp
-
6 {
-
7  /** Specializations for list values (uses std::vector<Value*>)
-
8  */
-
9  class ListValue : public Value
-
10  {
-
11  public:
-
12  ListValue();
-
13  ~ListValue() override;
-
14 
-
15  //! Will return a deeopopy of this object
-
16  Value* Deepcopy() const override;
-
17 
-
18  //! Will return a string suitable for an std::ostream;
-
19  std::string GetAsOsString() const override;
-
20 
-
21  //! Will add this value to the list
-
22  void AddValue(const Value* value);
-
23 
-
24  //! Will return the raw value
-
25  const std::vector<Value*>& GetValue() const;
-
26 
-
27  operator std::vector<Value*>() const;
-
28 
-
29  //! Throws HazelnuppValueNotConvertibleException
-
30  long long int GetInt64() const override;
-
31  //! Throws HazelnuppValueNotConvertibleException
-
32  int GetInt32() const override;
-
33 
-
34  //! Throws HazelnuppValueNotConvertibleException
-
35  long double GetFloat64() const override;
-
36  //! Throws HazelnuppValueNotConvertibleException
-
37  double GetFloat32() const override;
-
38 
-
39  //! Throws HazelnuppValueNotConvertibleException
-
40  std::string GetString() const override;
-
41 
-
42  //! Will return this values list
-
43  const std::vector<Value*>& GetList() const override;
-
44 
-
45  private:
-
46  std::vector<Value*> value;
-
47  };
-
48 }
-
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: ListValue.cpp:44
- -
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:84
-
std::string GetString() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:89
-
const std::vector< Value * > & GetList() const override
Will return this values list.
Definition: ListValue.cpp:94
-
const std::vector< Value * > & GetValue() const
Will return the raw value.
Definition: ListValue.cpp:39
-
Abstract class for values.
Definition: Value.h:10
-
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:69
-
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:74
-
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:33
-
~ListValue() override
Definition: ListValue.cpp:13
- -
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: ListValue.cpp:23
-
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: ListValue.cpp:79
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:9
- - - - - diff --git a/docs/ParamConstraint_8h.html b/docs/ParamConstraint_8h.html deleted file mode 100644 index 26e1268..0000000 --- a/docs/ParamConstraint_8h.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ParamConstraint.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
ParamConstraint.h File Reference
-
-
-
#include "DataType.h"
-#include <string>
-#include <vector>
-
-Include dependency graph for ParamConstraint.h:
-
-
- - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - -

-Classes

struct  Hazelnp::ParamConstraint
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/ParamConstraint_8h__dep__incl.map b/docs/ParamConstraint_8h__dep__incl.map deleted file mode 100644 index 3c271fe..0000000 --- a/docs/ParamConstraint_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/ParamConstraint_8h__dep__incl.md5 b/docs/ParamConstraint_8h__dep__incl.md5 deleted file mode 100644 index 4a1582d..0000000 --- a/docs/ParamConstraint_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -f90bab5c6fc162d0b90bdf119d4cc6e1 \ No newline at end of file diff --git a/docs/ParamConstraint_8h__dep__incl.png b/docs/ParamConstraint_8h__dep__incl.png deleted file mode 100644 index 252375565131384226805465eb6ad2d051d13e76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8796 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 diff --git a/docs/ParamConstraint_8h__incl.map b/docs/ParamConstraint_8h__incl.map deleted file mode 100644 index 99d5b17..0000000 --- a/docs/ParamConstraint_8h__incl.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/ParamConstraint_8h__incl.md5 b/docs/ParamConstraint_8h__incl.md5 deleted file mode 100644 index e70d106..0000000 --- a/docs/ParamConstraint_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -9d9204c024bc0136e4ef70b1bdecc7c4 \ No newline at end of file diff --git a/docs/ParamConstraint_8h__incl.png b/docs/ParamConstraint_8h__incl.png deleted file mode 100644 index 9bbfeb89036ced8636a9e8448aa3685ada9891d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10494 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 Wyf$9lG=YXjh>V1yc&V7-xBmbxC`VEN diff --git a/docs/ParamConstraint_8h_source.html b/docs/ParamConstraint_8h_source.html deleted file mode 100644 index 6a6fb95..0000000 --- a/docs/ParamConstraint_8h_source.html +++ /dev/null @@ -1,247 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/ParamConstraint.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
ParamConstraint.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "DataType.h"
-
3 #include <string>
-
4 #include <vector>
-
5 
-
6 namespace Hazelnp
-
7 {
- -
9  {
-
10  public:
-
11  //! Empty constructor
-
12  ParamConstraint() = default;
-
13 
-
14  //! Constructs a require constraint.
-
15  //! Think of the default value like of a list ofparameters. Like {"--width", "800"}
-
16  static ParamConstraint Require(const std::initializer_list<std::string>& defaultValue = {}, bool required = true)
-
17  {
-
18  ParamConstraint pc;
- -
20  pc.required = required;
-
21 
-
22  return pc;
-
23  }
-
24 
-
25  //! Daisychain-method. Will add a the "required-argument" aspect.
-
26  //! Think of the default value like of a list ofparameters. Like {"--width", "800"}
-
27  ParamConstraint AddRequire(const std::initializer_list<std::string>& defaultValue = {}, bool required = true)
-
28  {
-
29  ParamConstraint pc = *this;
- -
31  pc.required = required;
-
32 
-
33  return pc;
-
34  }
-
35 
-
36  //! Constructs a type-safety constraint
- -
38  {
-
39  ParamConstraint pc;
- - -
42 
-
43  return pc;
-
44  }
-
45 
-
46  //! Daisychain-method. Will add a the "type-safety" aspect.
-
47  //! Constructs a type-safety constraint
- -
49  {
-
50  ParamConstraint pc = *this;
- - -
53 
-
54  return pc;
-
55  }
-
56 
-
57  //! Constructs an incompatibility constraint.
-
58  //! This means, that the following parameters are NOT compatible with this one and will throw an error if passed together
-
59  static ParamConstraint Incompatibility(const std::initializer_list<std::string>& incompatibleParameters)
-
60  {
-
61  ParamConstraint pc;
- -
63 
-
64  return pc;
-
65  }
-
66 
-
67  //! Constructs an incompatibility constraint.
-
68  //! This means, that the following parameters are NOT compatible with this one and will throw an error if passed together.
-
69  //! Syntactical-sugar proxy method that will convert the lonely string to an initializer list for you :3
- -
71  {
-
72  ParamConstraint pc;
- -
74 
-
75  return pc;
-
76  }
-
77 
-
78  //! Daisychain-method. Will add a the "incompatiblity" aspect.
-
79  //! This means, that the following parameters are NOT compatible with this one and will throw an error if passed together.
-
80  //! Syntactical-sugar proxy method that will convert the lonely string to an initializer list for you :3
- -
82  {
-
83  ParamConstraint pc = *this;
- -
85 
-
86  return pc;
-
87  }
-
88 
-
89  //! Daisychain-method. Will add a the "incompatiblity" aspect.
-
90  //! This means, that the following parameters are NOT compatible with this one and will throw an error if passed together.
-
91  ParamConstraint AddIncompatibilities(const std::initializer_list<std::string>& incompatibleParameters)
-
92  {
-
93  ParamConstraint pc = *this;
- -
95 
-
96  return pc;
-
97  }
-
98 
-
99  //! Whole constructor
-
100  ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::initializer_list<std::string>& defaultValue, bool required, const std::initializer_list<std::string>& incompatibleParameters)
-
101  :
- - - -
105  required{ required },
- -
107  {
-
108  return;
-
109  }
-
110 
-
111  //! Should this parameter be forced to be of a certain type?
-
112  //! Remember to set `constrainTo` to the wanted type
-
113  bool constrainType = false;
-
114 
-
115  //! Constrain the parameter to this value. Requires `constrainType` to be set to true.
- -
117 
-
118  //! The default value for this parameter.
-
119  //! Gets applied if this parameter was not given.
-
120  //! Think of this like a list of parameters. Like {"--width", "800"}
-
121  std::vector<std::string> defaultValue;
-
122 
-
123  //! If set to true, and no default value set,
-
124  //! an error will be produced if this parameter is not supplied by the user.
-
125  bool required = false;
-
126 
-
127  //! Parameters that are incompatible with this parameter
-
128  std::vector<std::string> incompatibleParameters;
-
129 
-
130  private:
-
131  //! The parameter this constraint is for.
-
132  //! This value is automatically set by Hazelnupp.
-
133  std::string key;
-
134 
-
135  friend class CmdArgsInterface;
-
136  };
-
137 }
-
- -
static ParamConstraint Require(const std::initializer_list< std::string > &defaultValue={}, bool required=true)
Constructs a require constraint.
- -
The main class to interface with.
-
static ParamConstraint Incompatibility(const std::string &incompatibleParameters)
Constructs an incompatibility constraint.
-
static ParamConstraint Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)
Constructs an incompatibility constraint.
-
ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::initializer_list< std::string > &defaultValue, bool required, const std::initializer_list< std::string > &incompatibleParameters)
Whole constructor.
- -
DATA_TYPE requiredType
Constrain the parameter to this value. Requires constrainType to be set to true.
-
ParamConstraint AddIncompatibilities(const std::string &incompatibleParameters)
Daisychain-method.
- -
bool constrainType
Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
-
ParamConstraint AddRequire(const std::initializer_list< std::string > &defaultValue={}, bool required=true)
Daisychain-method.
-
ParamConstraint()=default
Empty constructor.
-
std::vector< std::string > incompatibleParameters
Parameters that are incompatible with this parameter.
-
ParamConstraint AddIncompatibilities(const std::initializer_list< std::string > &incompatibleParameters)
Daisychain-method.
-
bool required
If set to true, and no default value set, an error will be produced if this parameter is not supplied...
-
static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)
Constructs a type-safety constraint.
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
std::vector< std::string > defaultValue
The default value for this parameter.
-
ParamConstraint AddTypeSafety(DATA_TYPE requiredType, bool constrainType=true)
Daisychain-method.
- - - - diff --git a/docs/Parameter_8cpp.html b/docs/Parameter_8cpp.html deleted file mode 100644 index 56b2215..0000000 --- a/docs/Parameter_8cpp.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Parameter.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Parameter.cpp File Reference
-
-
-
#include "Parameter.h"
-
-Include dependency graph for Parameter.cpp:
-
-
- - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/Parameter_8cpp__incl.map b/docs/Parameter_8cpp__incl.map deleted file mode 100644 index 1e97d23..0000000 --- a/docs/Parameter_8cpp__incl.map +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/docs/Parameter_8cpp__incl.md5 b/docs/Parameter_8cpp__incl.md5 deleted file mode 100644 index 2cbf985..0000000 --- a/docs/Parameter_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -eef9313956abb82e5769561d6009dfd6 \ No newline at end of file diff --git a/docs/Parameter_8cpp__incl.png b/docs/Parameter_8cpp__incl.png deleted file mode 100644 index 72f481d43c272a365da79a1d109a9d29501a961c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16052 zcmd73WmJ`I)GmrBh;%7Px+n?hkPwgs(kTMc-6<@(6qX1GA|fDNA|NRZk|H7?UD7Sx z(sicq{&Bv&_Za8*S?_q)7{bH-+%fMt=XK3%hN-K{5#UncVqjnpD9Fn^#=y8@0ROAw zV8T!QDmCC61KUhVP6p%h-+$@#IWZU*cQ6!Wq@H*sZ%kT0B^w>b-sV?WCVrTWBd@7Z z@_dHj=@sfbkBF~5A&u#VvRJXh{~Mf z)ESuDnP!g-18`zme({@E^Dq9QiD zG1vN9E%kwdy2!-r%1Xk!ccoTcR7(GS^!3NHmEs$G58o`;zKx3NDb%kDEy^^%L;k$C zv%Nj<^JhLDo`*OpNkW_w5)z`KdTMIU=O_D?mX5Ge{UQ?kkoNZW zG|51t3Og+W0|Wi8h{#Au|C9HrsYRKYq{PJA@Y>wm+{8pG4vzer9NIHodXwbim5!%p z$9tQTUp=>`3X6*akG5wkE1#B`!A!Pq=H=xbpKdj#iTi46X<3?@ez9mLRZwVGb;u-q zp^o9;u{jY&Y{o-*`}S@9Dkm*XO=`)2y1YDFKfec4Gk;eG;5?ce<2*MfMtgfp0xtu+ zy^l3>R2?U(c?AT@SLp9<9&C)m9}e~Pg@uRX;^Wu(9lLf4sTei}_`|$>e0*So@NjU1 zeGdwPf-qmL^rVU>2|4P$8pa7+`_q*K&kT%=+>Mq$nl{bvqJww4uMJE1pU^z;BEEbr z9&qO6?OoH@*ccXeV@j)FNac&|z^A&p2Y2t@wYRs|=5=)Z@~O2XoCqHu);dvPuLHx= zKk(ZA(?wk;=_+?$<5knFv?pq%pShFev8HB{;GJms^V365508M8zqSJ_RnF55@WLX) zuOB~tR8&;_Hvymh)v0=4usUvoY94NGZrJI?IXDb#LK;>CVs?4?skZjP`Kf33qKL3C z?3;p;lCPH+D;t}*_b$5SZ%0Q*dAWe!R&e&GPk(-YF@OB{v6ojxg{-QoYA`l|-HF_9 zJAP|xYjJULHnu#47?z>oVJ_WL8Thrdbj$DG!s6nzh{0}^<{I5jv+&oi;oNQ!6Q^fq zGjnj*TU)o)N@qwX6M;OXCPmUMedp z;t~){HUZYCnF2 zHBfLH;os(y(bJ+YWpEx-4AJs-c6NpnGPGD37#DkcOFbLoRnC*OL%)ANg@Iti!>#GI>66_> zB@>ewupmJ}!5y~GpFdNE7}op5DrS3_>5`I?7NBfAM2RowP3!3d?a2SL9cmF*CVQW< zy7>}W9K^5&{*qPWcT-J)^FK>*ed_wkPg;;CFsfQCll2BqW4DWMn1fN^=ASi(_rm!)xg2 z(_pW3w6#}PRw8M|gqWGJ5Py$$=KK5myOQpg>CNfT!+bnX{;mkx51*YKYs$%4|M`_* zW@ffw5C`4_Oc`u-aBz@@me#o5r`4x(YD(h40~*Pf4Q@-S!&APUD`4|lV3k^08_QJg zMYpdzI^q%$MZxhKHTdbOscnIip`A3N7IMJB!_zObQgL)FeEAY)?_D#^lM#0QAzCGK%?ZEkFIwPA*hWT^aAii?ZuO3lG|Mf5O~ znTg3o*aIWw>c4-ah`5C;lgbdIF^TWZ&d$;%P7&<*kTuU<#duDD#{A#Dl5NNZX*b-j zKIA9H&14b%_eor4zebpFug7GNCt+jbDFiGD_oGZdP7#Jp3 zGyebm70jEUoN15o{It@!F*WHlW`90kXSB9fF+7~FfNi`|MN1?4Zl-{g9HJHj!z)Oc zrS*HA^m5}?-Psx6u)VwcBYAXX)9h7Z6;;(ADr6aKyu77JNo;9rBn-s34+U1%^7l9L zBTNhHhJMR?y70{TK0;naUJ1RYGcx_t!nJedDt7MbO5ScGo#~Yf44JsHvKuMgHbT)z z#MjyjS$XkqnExIoAZX2y9#UYcl*SQFF?A+tBTRnCilOmmZkKv^p$;>|l!Zml|K#tT z5~k+sFiJuecy<>_2&n4%txtw7o zC{yvv7VB{9nyr!e!JNO3!V@tHI0)=u5yvr?%uW)_e?M(+S9nA3{G6DSj8P@^0eaaL zjRA(^-`&lElc5k3^0Pyc*zh&+^RG--;!O)ZI9bR;G@d-U^*(m8D8KVgZQLKYsBouM zQ8yiCxD=ZFJL5R{@87>$iz}p4WHCOzm9Boxe&lyoSL8CO9_&PQ&%}g5Z^QZeI@QPQ z*07>Xk!F0XW?WSaFBuFnDHADH42<8f1^<0DVadwMl8}(d=rq$3Ly{*%jQbp8czBpH z#FUcd?%n&Y3qM~G(UTgIP)Yb5wa45ID?;9Zzco8LJ>^gM1%Zr=jO_aLS95b_nH-px zLFyPXnUC|pyA%}^D9g*2l$EvcM946#{O5Uthen2f{Os)j)Y`KksS3NsFuP84kCnsNDUvCIF4<~l@ z^bFiz9h#_di79Qvf%;u~oY-kad3gyRK0GxvtT%5XgscubxH;CbH4t{YQ+0UTdDGj=%VDfMFFpNvv&psV*9U9_w9SW8;**ok-^In<3X@^yH&^J=_3}0YpU|b8TtUO2+_kHl-LGF{)@S7aT zDJft3BZ2`55YY(t{`euQt2;U}GSb6(KW5mM+ zc}_$~q8wCHXrlHX68Qi8qT3;?<`xzfW@is4!prRAAq`UqDi$gV>bg<=tF`r!v~(~L z-sfV-3poN$S*BBeY)$38kF6MG=H=Jqy|44eH@hMpa+Nd*|D#5O?sPduV#T~Xtkl%D zg$1UbWZm?PjHAv2JG;&(x|I1Dlfl)mv$Ii^4mDIHUz)y|-KpZZDN&Mxf$qtYv(?O@ z>mAan_2?=V58GCnnlevGQMtt}5fihQwdO|V0siWzLG|0^mD^U1;tT7#^z2&U`el<9 zom!7x*1F8*g@h1JyykrO54f1{B}hqCX%|%U_#Wh*pNfC~{?j12ro0@Y{T?4*_Tl=KW zXyRo502_N%LL$e`p4zMaUh_3L=dtms>Gch1R`UKx>P~Ee$4f1wY~=lYS!H;5omCDs zKVG%oxC7IxcA8dA720^)&@eWXA7E#P>!)9on241B84((a?u<9yam)yU$b*v$|C|n# zoLv@P|CKPkxWIH=_cx5}y0>>EAx>z=&t;GKQSh!Wf{lIfaYA?NO9G`;QGo|;2TwIVnaOV8-D|@5}OJN672n!>9cfYmJ11oX}1~v7$sOWGPw-Lp*a^w)BRj zmZoTB+PJmHd2Vy^(!w$pHZUF@q+@4iPZQlYQB<5->{Pm|N&_n~s6?$CHTcKs6jV2v zgbwo9!-91lYvO%U9#zZgGdGJPpk;SqWbsJ(Kq(^pdwwW?-EAqA%nd!os|h-oNj%V4#YeoqZ<2 zkuO91Z@eTSkv~iEDWd!Dmyx1TNYs^wI08cbRgPa(84%c4c_||j6MgRHG_teX5z!x@ zP~?fP@^)S&CVo3RHV+PRQcJSR%w?4Z1G?giJ2QfmriZ&*=5(6TM+sM+fHK|AoFD!B z+qIa+OPL!tT;=6y`d*?)(U?as`};qipKb~GCd!*bQX}HL(vL&(Rq8DV>~933k>w8!t9J%%CZP$6R)I%mXYI z@Tdy+-B$3i_hy>EGI-4M=)7(JNI<=QalCXMbNAbQ13@@)i}@d&7OossJnF1WX!XW` zju$VwJv>7Eij{C8=$%bWd0oaU*N~oQEFJoXNlsH|+h^V^F~`%^R4v3|G7QnZ3+>Vm z#O2=H&XP0n4s!0i)pmpIz^LJ@qt#NluL1=bv5lcQqyOHYe9Dk*<#hF*0#t^YWlIIR zfB3CF+*oN9k{B4!Op%yG^`r*U(7w8%p+ks+)mz(m8IYWGdKCd_rUomMT$?G}IzHY$ zhFUH}nOWw}59*fvBBH70AQyv3g0bDwpH0TjzS^Cta;NsKaj-hEu9cM)KvKiBsOV@7 z85x<8rGYLsj!ti%L?D)`Dl1jhi^>QZ87KSkYel9&Xs{BNXh&3%2(4%SDzSoHMt zxD0FGzx8=|_wPE}+KO$!kxSik$pQkTlj$DnuD;eX=91n zHDkV}m;B6S9PkK*0EC5e9a2SR=4^iJ?vhV5VjjPK{c>3D&G7K>pbUwYXQHJ|p%wGs z(O={Kn33`9aMSS2-N}h7#MG++67b{GQ+r!mHdfZ(qoe-7Gz?|uWM@OtsgXB$4|ME*l#_V98=8+T9!Qoy^J0$49 z>h0!f=5(h?PG5{dt}iAoehz%obb~*&uuFPO3|Vlq&FDJNghM}7)}Om05_Wg?^2U9G>j2 zZ6pKXycx@(^R1=D9fg7v6LL*RpC3QgyIs~aJv}`*_(V?+9Ahhdj*pKGbh9>XXPTzs z;;u%~)Tp5ljzQ|gR6x*Zeo_|kSf@lT0}Yp&nhHrcPDXAntGT&3>;`@dz#=y{w{ek{ zf`WVKx4_2$XbXvMUkDEm2cQ(k3Akm40*DfvjIl92rvmlE3YQE^BvRJZm9Fn)IU!Q& z!@uK{m2L3eV*zv_>A}j*zPr8syWCb&O6p2*GY%o)r#>6bKn+F3@cnpTWg;4T`}-j+ z&(6+P+0reks#+RfMd@eB9gd9XoStsU$x!r*;$WHbdG9U&vH&u>YhuE0d#3rn319~! zfQ;ngg6-Rbj9ojh@8{3u?_p$shKw5n2yk$k?!uBqg@u7J^}jf)0rqjRGahKg{r!C$ zgtPP34KkK($NE|Xcd>>}Q5_d&Aw%t3ZLl;l(y+fk5L;VXekqc%v$x+GEo*CO30BN5 zdiv$t=xEK5@kG6^r>$*XZEbBzis66|U}-uy^~lJ`($do6;^O%DcwiAFhd++HJ-f}t z$w_y6^vjaww!(uN3c@2O$hN;yr%4e4sZJC*_nRurE z$Q{#9%Df*RXJ=-<3*|!pV~)@yWQ=Mlc76vAn3`{W-bk}zJp7oz-vy{Q^}`3q&@Lfv zJ(oW@vBSo;gI!>$eR~Oh;UUl6yYp)!(?SB}{gNrf#JEA> zdc+;SQRQ zPZ8xFJ2q{ktGl_onBDTq{$HYevVWhpfCBaFJzEF?fxs1S8ZvYcvDd`|^SSR(0r_66 zYrfYb+4%~;Z~41&X{qQfTpWb0?aqAL5@fNJHhl@{>G~;8S#5IY#4VIn+yNG_)Doj- zwxyc1o(yjOCUHAh-@8GE-<@WhTU7MB=JP_lB4p!M02sovQ&~D5#2K2<#m>ex|j!$1E5JYWp@(=>uK;~lfrRl zAa?;oCM~^`ES@y8;g8(DE=>AZNJyH4V=Ybm6p2C*<6`EOl=w~6&Erv|R+dmw($mkZ zp6F9pe@M{1$ECWWSfHF>MtQS>iH&W%bx~bG!IEO_3a70ND-~t#WW)K3W#k?5Yxu#< z5ux&wVjfF5YFN?HuL)^BSxGNq9v@VoQ+6q;*4bvhx3aw=@;y0ubGR>#7tdZ3ibNzN9r_+^^EX=(e?4+4 zs;gt+;knf~M|rzOUPa{vg%aDnd&NaXOJ=Nh&^-A1HT`;8S^<-_%XM|7lV1&QG`?k_ z`tgRg#LfEN7YY_rwHG}9o#fPQig;2g(WOB)XF6s~BrD_9M!LLT`yxI6fRWH4_>0t3 z)7V&dgS5c=7N)%EpFdx0j5}W&#>ja19H{J`4Xdpc=h<$vhJx&6+q{YnMnU*zSm7ucgT;zWzEsAB&j3=wnmDl zxs43!tb0%*BB|5CA7ZuotGEw6$(}|;2$-9l*$Vu4&vvT$_!`Pj24QBFnezUwmsZN;|*KO1`TdKy|;z1s3wW>x7*9VtEqGFHHSRq9GjzMNOW z2b;Uh&8b1T`T6$v_z@`&MC1*UT@N?yij1EvL=eI0y^D{R2n@)m*eB*L-sZPX-SK(G zuwFG?uB4P-TBa1nj!`7BJyB+DtXI#gesK}E%iEZ}`Y+Mluf(xv0`eY9XSF2?QgE=_U7igPaA|qGuNH1?dbrW@ z%77w%7EO+k(Zm6VI#T%h7FibhrMF7LxA8SRnwb&CnxT|0DH9XQLxbdX^=jng?_a*^ z$$p%DRD&W(FD{Nt)O$GCKbwqs2noyN8;I0x0vpsKwFI8F~8jsp?EB<{KnpV`^ip zv9aUw!V{c^#oBP5Ujr9M1eAr2H^x1Yw+J$Ny_uO~$E%E^-l!%DKkMC`Ec*O;S4L;h zKwJApa5K|tGLj!$Wo&HT#f3G{IYe~HZ2yqNjO7mEh;;{k4Eck8U0uAkdPY%5QD$ z4vr2suE(@5TxKH3MKK!ZgiXIq_4l)%g=ZDq+X?o2_Hbrjp78JAC+6nyKrxPvzpC?! zRzQhhepX9Mt*9V?N$dso5#w&`&q{B;XKM~TBl&6*y;!Kv5fO6z+VJ;072uNjXm`}Mn)2fD#i37Vb>ppuY~t7BNWI>m zyekjHTY%~7PCl*=42R(V>>vX)kM?_y_ zxqlYC6_fcG^~IS zc=Tv7HgtZ%GfgH3J6+uWkQ~nCClc>ZHKY$E*v$#_oJX6=kZ+ zm*g~YD6_bYmb%r{SSqu0^jvz+JfuN__~cvL(qOX4EDOt66n!z-3)mV0x`J*|7n2Ni zsARAh&{xHcfc}DvPU1crn;6R<&NaLkWtKu?`pIrGQ+R;$GMAP7U1S$ALL@MPm-1Tj z?%FM1-0MVBU)|TPHuyu3eR0*3nd$o*x=274qJaUk)z7Yma=o<=!SAy<<~8F>;Ly<{ zd#py`e`ypOr#&cuX(Mm~L^V(*CiY@~;~OOc>Kfj^mr)@Yzu_mEGP~~Z?Oe}0y|R){ zQsKLGW@FCwLi>`q?}hD2PLSzx(+gqirP;&HLXvD)$^KSx|2jJK1Lf#|+xs|ewM@m; za)7Q^F}W%y*qV4820n2R5Ofhm>yc9A{2sk6G=8VQ|J|)yS8H@xdj1gIw4+dtU9+XPl@!kbP`j7&_dOr*oR32z7p{u+J_@b`Wv^9`Vf?pJJapP#s1hlQU$ z=RUnZ{IPSUO+UhHQe{v(IZ<&IN34rXStAu9Gh3_>4i)^Zdzi`4mnzZB3pHEg-eJm~6 zFDW=_sB^Q7>N}>&S8!v(h)=etLu9^ftKCdc=HpR6+@-onC2BpGdx6$!rv~JAbojZT zU;%iNe?**A^G3K7ORK zx9i`U{OY!4v}6rBmIkxda4zi+F)^AN8hxz^E}!!ApK5A4I~2Tq_w8IN0TKo2Y!COe zN{*Kai3dD_6_-a}K$tgpbo6U~Elcakhvc+wJ};h|2n);Xme&N|q;x8^q@)tc%Y_l< zd!;Xtz$>6o<*#4kU9Qc<^*_F?JL)4?p(s-0^X!?^0d?TTnTXCGcr$$Z_8U0}PY$<^ z$DOI_yuvjU6vE!Udpz=*n~g2waULmYN+XW5NxFkcdY#wK&##^X)AbxYyc$crPxbXR zBIR-$t-2Uh8T1Oo5x8ooW}2@$bty_qOY0`!N$VseQdQ*Wn%qg~@sF#mF6-4l3*HjG+%{@Hw8YF;Lz(AmT0qdbeTbeMCFQOtMA{ZDL zLW?k;4`+Y+qXYrlom&4s0T#x!(a!i$=~s5d?q<3CN)?rrKX~w4cp$MdG@JyPBUE|L zcdJ5(=mT~a6bK1GWmqz-&dTt+C0sI~rt48iXyM90&PtXX+3-kZjK;#&R*wZA6vmyW z>fmZPgLViAGt?JysHy+C1Qp#FP(eE*0%OHn$=4rRKn?59!WkvMY*a30ZFwLA7ng)d z({qsZ0ADvgGC~nZ7m|`f8)C{tssNgywl}m#GM=7?I>km^DPj~YJpBA+m5CLozsr3H z=?m&L(5Iy!GeD>WCSYMv4x%Ss^B?MYkaNug|1;3*9FFl9YZoVL z#ilJGUjlx0bTGuUkB*M!ZdByw=58Mzj`a0`O5^X&PF_)wQ%x6CrLBK`$N(8%W+tC? zcQU zmbG7#wt+tZ(}&6a?C7APq-0`Y!N$U}wXuQ9H}}($=Y6Z@bk$4kF(}|IOj|;!n?H=o zzyizI3KRdAzQJ{CN*t|jXUA@j`+uk#czH#h&B>JMRyYhhsAZIvzEjMW@ZP#O800>&d-jYsrXA(#TKeTn`>$X3xVepMTo+4BTb5BiWs6i) z|42#}78Y$Coh?w->FOplo46R+Q~dkH8#^T%E5bEXRsA#Z2V@AKhXXrk4xA{rjRBR$ zMQve)n~MvjxDQHEv7;wV5{%v4%~#7*@8nw)Xa~)$acfX~w+4 zQ6D1^Lw@xW1v?AVccD{)WP9l7AB?wy$W3C2?v#=LXxE@nNA{D7KjHtfC;s< zTm<@fabY3g@*EU=jd0I(wY2s@`8J`~rhR;roGij$PS*I7bK=HJm=YuUX<+R=&`W?n zI$G0~&amV+7-)ILtQ7YvQSf!U#qiM3{`%-1$N`T~AbtcP=9hp+#>SEY0s?pMUPru- zkAJ21abV>M`#xwkyW(tYY$(ae(TzVEgIwL*M2ZC^rC+pLsHRCw_Vh%xTkuihb8;4j zhT^cqj1G^@8vC!TtaMrRqmryGEbgFzs@$dr!X2PXPmeWULP$u+(cuF34k!88XCZ!m zOL!I6Vv?jPl4y9~^kBn0Hr({7me$RS`CkeAAZ6{0b$8J6_n&`$W$oKH zI*-2;HKAfT_jfj?@^!e;>QA1$|MKMv(8(dD7Z(>bH8q77iegC!^et{9kmH@hDu8~* zeQD-=IsIG&=u{Qsr9XeHEG-de&|~hzytm-1$;`x@-f;>UYSRYwCgKU`o_F^DWB_Xj z9C#)0@)zf)!1#7|cjIJK4s(f#B`LEUZj8sb;JdlHvXX~aRtjC1L#Eq%dD(_Q3kYJ_ z%ZFBe26e6ooYm@3KB$o-z>GY%#{6io?IVT#n1uasV&7lTe$avQh0=wrY{)*Nnk4(- zR*tsT5R@2qok$wLr>OrE@WPg)rW%0&^wq1jPbx{cxVV(~vMw$>YXXR{ztg3l6KQX1 zGWi}#0;cr9=Wi~gZy$aK&R@=6PFMf>r3```PEJnJFd*;81dbE`gqC~|uzmOOqlJUR zI%uONCnt9n?CdwnD=I*bbFne@WWaGMM~$8;5(J|6&)T?+8)nFM=&>AsDi98hjgL>) zy05jqrqI^bHg9`Vn3pHDZXa%5sG(0?C{2%SsPWm4OwctpOG_WgR=06*P*zd`En^q> zSCFVYH+|~p$Qj%WIw`nnuruDUiu`9=Q}tleQO=%(U3wK>J9D7aeBgWVYkd6c%HJ%x zD3EZKl$P%HNM8Qx>T-8=?H?ROxwvfa?w*_-yQ!#jb;fh2Bqy(~t&t$7rl!bPl$SeB zcFDqI5@DPdSFdv!H#~5jdf;cKZ=VAKYisNKa1bEW1OZY>NeKvuzBhD%DhM3&SBv&{ zK|w*u$uyFZl8~BD)$7x1gu6IuQBzP{>t~uax z=oFqcUt)ZJF0%#?p$Sa-j}XTYCb> z5~f#iU{f*nZ2rf;%GK}RP)xzTe%-jvO9O;e6;B7O^d@a+&xv=NH^$q6o2E`OCbDhT zS2@fZ^UjREgiz}9clj9w-+b>Te zM!8w>CA=b}1!We9sHyrYFq$|(4g?H%f@B~*$VXfFsUV!)Bqx7EFFEy>oDqY8ML@tv zP3>jVn}~ZzVq8bVD?XmyeGWlW&(3 zl80-cAiqHr_`q}1MnU0)@WT)&L6`vEVUGENg?BHMYrz-_k;FhtpM4Lz+Zm_wE+&Sl zHZHKjH4{o)ug{95w-^8Xv9qypvDAiI4%EC15@NUK_CtlgnL$zd{rd&09=d;}4O?dN ziHV6LXy~>3({!cKdegKu!{<@e*D?BXNsn9oL)OP) z;kD#tovz{J%%b2}k8{vW^2n7*b*D`=rOrt_3cUi5@t`=n+~d`oh6V+ag?El-ntjP} zZTlFMoVT8ll47FnU9XM0&5v|*3;f<%c&kaxv?4s@%WI+pvsPiJAvJau=kkL;3QX0CZn zL4mh^Ve3hRH37+CbF-(J*%Z|0s{-m%GEC_~(V1zx(jO`p)jv0Q8E!B$K$O6%*s=@gdk?2-M=xh~CGj(H+>WfN31C=~veFSn^^)}>IKjo2Bz zEXzPOOf74whYxyQHuCRC=&rk-QKB0W~lo0A!|9_ zUr$V^ZyQRQ%Ps?efyv&?jL{^?&r_PX zffQQmk-V6D1mwsZLb`g-fv(|&`Z5ztW9+fc$nv}!J1?&$CD|1zR#abSysnt%l)Un< zWS(Y|jWM>96HHMfj+rEw6!6|^X}AmwwK0i0l|EzO_EHb`Akf+%54oPvq|!T`Hx5l5YiGxS`ME#S#McJ$ zOlDo>N!mr(y67Tq_7%L$JAk-r_^3$iK%g(-ta%&{FQXy zs`Hjy-w}6+`V8mt7SlJ74V<0#{Addts~;cg>UzKIT8)i-L7(0jvwXab7-?I2qM~yC z#oXvWWl^v8i@^y?O zBK^Pm9e=d!WC{DBfVR3r9(v_G1>FaXe;lWnj2Eyi z+oozD(~%jHt^WA2z`Tuas_t0o(aY6&^Vt;<$l)U3byVn}WgsbkwyzYImQsnPG$)3d zhRQGidGBbMt!CnQ)@H)9HF0X2lIZoY^IB++t)A4t9GC6WPP@U zy6Okz?-rTfdv6+nVt-;f@y&v7YwG-{(+bjl&@cY_RoRnrS``$8vRKH3ww2o23+%97 z)smb$3?Ny}lEngz7cXVu*{gT$ObQAepbmwq$zG!n)HrhY_9H{1KoT&i{peAG_PB)w zd78xe`q}Xk4#M-01omdAKWK`E7W;51Jalh~%+0Nn*iL+I1tse*-ZgnH@38J_dL{;) zY)N8=Ti?FnVh2Av^(g&%8v1E#cu?T`j|Q>8i{sZ6x~r?Wo$+d^A_K{aFWVlYNY~jy zF{vVXohCqIPl_gfiDZc`3BlIuv?9mVee{xw`m1s^9Su21757(P<6{TQn!lC*z1-(R z!FBKZw9lo)U3PZpi24ZW2HxuzTwE=V4k3?OUDPL-iE$Z%KvKRG52Yy!i}$dcoE(bm z9EzK_;-L2kUwUqioGS7~n$z-#nh47eVKhjc7q{Cp(oYR z>xgG#FfWIV&HMa>?Q2a!ZA~QcLG#$P>*%1L>|9&{ml8GU>A06VPoJJ|=zB{^xf{|J z242#wjYPeFOI%In3^oUyX5Wmht>b;X&r=d~f33Q`V2tL$XH-zoprHxz_WF?U0cX)= zD+s@vEtC)UrGR&-ZdsV6WyR>|^x|SR3UzI50SS7dwfz*acBQ!F!eVD|HaG}$$(5^5 zAQG%qRtfEajfHAzYdi5`t*qRbtFl*6xPc6nHD8|&6cZLEY*EkGc?{@4PY)3(yX5;~ z5-a)L70izX1>Id6KQGRoDYKLf$u#j&ZmgDIz?Hp%6JF(v_opXHQU2%~g77IMR4uRG z)!r5M!@!(f>@4{C)3c+a)Xomt*ifQbpFa}@<^!*qF*_anGBFXGB?izRz4(cNmKHY$ zUe3*GA{Y=2MBHf202ShU?MaiaIU{Xq*f&O(BMecHQr&y-Ao({H@Uc9s*ilVZScR1T zt36}f=MZG@ki7fdyS{z%e>EZ@Jw0cduF%rb-oBjxtU_JDITd1IbMpeg6reIQN|1|% z5Q92tti&`J`VW$mCtl)FB+^Mx-o6c8l6@T=;fmRWlsq%tDPl)|q2oheU!OhJ&cwuJ zdqxVsMNvs9Oi!+tSNTpR1md~*d66pUCxosLUtowF9UX!9`>d6}y#g%3UDae0LH_@N zZ;*g~IbPttwhBRw4}0OL5UacZmC0S|^&hea6~ zr4|%86dPRGRPBU?%+LqQNFSgsv@B487#ZdBAEW~ge{=E_khXvxhnk&j6u_l~q@>f6 zleqWqEv&4H^sC zZUT6>^Sp1}B<8YzWg7@4rkBVB0o%u5EDs+(|N2#|@8*kxpqA@RWB?OG!^1(ER$5k8 zR$2;}nxU4V*9a6*UYXD;3{5_FYH@pS|5Hf)U+rvnsUFb;>==Up@`-xhH-XfY+#qqR zXlCdu{rFJ^b(8jC_G73$UioWt4Wk4awEwpr?|NL8i? IX%h7R09ViVPyhe` diff --git a/docs/Parameter_8cpp_source.html b/docs/Parameter_8cpp_source.html deleted file mode 100644 index 8caa375..0000000 --- a/docs/Parameter_8cpp_source.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Parameter.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Parameter.cpp
-
-
-Go to the documentation of this file.
1 #include "Parameter.h"
-
2 
-
3 using namespace Hazelnp;
-
4 
-
5 Parameter::Parameter(const std::string& key, const ::Value* value)
-
6  :
-
7  key{ key }
-
8 {
-
9  this->value = value->Deepcopy();
-
10  return;
-
11 }
-
12 
- -
14 {
-
15  delete value;
-
16  value = nullptr;
-
17 
-
18  return;
-
19 }
-
20 
-
21 const std::string& Parameter::Key() const
-
22 {
-
23  return key;
-
24 }
-
25 
-
26 const ::Value* Parameter::GetValue() const
-
27 {
-
28  return value;
-
29 }
-
- - -
const Value * GetValue() const
Will return the value of this parameter.
Definition: Parameter.cpp:26
-
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Parameter(const std::string &key, const Value *value)
Definition: Parameter.cpp:5
- - - - - diff --git a/docs/Parameter_8h.html b/docs/Parameter_8h.html deleted file mode 100644 index 2767fc9..0000000 --- a/docs/Parameter_8h.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Parameter.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Parameter.h File Reference
-
-
-
#include "Value.h"
-#include <string>
-#include <ostream>
-
-Include dependency graph for Parameter.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Classes

class  Hazelnp::Parameter
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/Parameter_8h__dep__incl.map b/docs/Parameter_8h__dep__incl.map deleted file mode 100644 index 3d2fc7a..0000000 --- a/docs/Parameter_8h__dep__incl.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/Parameter_8h__dep__incl.md5 b/docs/Parameter_8h__dep__incl.md5 deleted file mode 100644 index 6952c80..0000000 --- a/docs/Parameter_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -9a4982f3921120df66d02a430e4732ed \ No newline at end of file diff --git a/docs/Parameter_8h__dep__incl.png b/docs/Parameter_8h__dep__incl.png deleted file mode 100644 index b0ea6c667d8673b1e8593c46440405979e5bef70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11178 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 diff --git a/docs/Parameter_8h__incl.map b/docs/Parameter_8h__incl.map deleted file mode 100644 index fabe3ea..0000000 --- a/docs/Parameter_8h__incl.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/Parameter_8h__incl.md5 b/docs/Parameter_8h__incl.md5 deleted file mode 100644 index 9c6d55d..0000000 --- a/docs/Parameter_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -240c281ba511f80f96f83cc0e81d73ac \ No newline at end of file diff --git a/docs/Parameter_8h__incl.png b/docs/Parameter_8h__incl.png deleted file mode 100644 index 9b0c9028965cc44595eb69df0cb84aa30bc97923..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16028 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 diff --git a/docs/Parameter_8h_source.html b/docs/Parameter_8h_source.html deleted file mode 100644 index 8aff0b6..0000000 --- a/docs/Parameter_8h_source.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Parameter.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Parameter.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 #include <string>
-
4 #include <ostream>
-
5 
-
6 namespace Hazelnp
-
7 {
-
8  class Parameter
-
9  {
-
10  public:
-
11  explicit Parameter(const std::string& key, const Value* value);
-
12  ~Parameter();
-
13 
-
14  //! Will return the key of this parameter
-
15  const std::string& Key() const;
-
16 
-
17  //! Will return the value of this parameter
-
18  const Value* GetValue() const;
-
19 
-
20  friend std::ostream& operator<< (std::ostream& os, const Parameter& p)
-
21  {
-
22  return os << "{ Key: \"" << p.key << "\" -> " << *p.value << " }";
-
23  }
-
24 
-
25  private:
-
26  std::string key;
-
27  Hazelnp::Value* value;
-
28  };
-
29 }
-
- - -
Abstract class for values.
Definition: Value.h:10
- -
const Value * GetValue() const
Will return the value of this parameter.
Definition: Parameter.cpp:26
-
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Parameter(const std::string &key, const Value *value)
Definition: Parameter.cpp:5
-
friend std::ostream & operator<<(std::ostream &os, const Parameter &p)
Definition: Parameter.h:20
- - - - - diff --git a/docs/Placeholders_8h.html b/docs/Placeholders_8h.html deleted file mode 100644 index 7680692..0000000 --- a/docs/Placeholders_8h.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Placeholders.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Placeholders.h File Reference
-
-
-
#include <string>
-
-Include dependency graph for Placeholders.h:
-
-
- - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - -
-
-

Go to the source code of this file.

- - - - - - -

-Namespaces

 Hazelnp
 
 Hazelnp::Placeholders
 
- - - - -

-Variables

static const std::string Hazelnp::Placeholders::g_emptyString
 The only purpose of this is to provide the ability to return an empty string as an error for std::string& methods. More...
 
-
- - - - diff --git a/docs/Placeholders_8h__dep__incl.map b/docs/Placeholders_8h__dep__incl.map deleted file mode 100644 index 9ef9625..0000000 --- a/docs/Placeholders_8h__dep__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/Placeholders_8h__dep__incl.md5 b/docs/Placeholders_8h__dep__incl.md5 deleted file mode 100644 index a02cd5a..0000000 --- a/docs/Placeholders_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -521956097f5a4e4270470701af0a25f6 \ No newline at end of file diff --git a/docs/Placeholders_8h__dep__incl.png b/docs/Placeholders_8h__dep__incl.png deleted file mode 100644 index 79e7b2d23d72360430f659a0758c6f4b01e2f7ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4950 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 Nx>`o?8jU-#{{tUOY_k9W diff --git a/docs/Placeholders_8h__incl.map b/docs/Placeholders_8h__incl.map deleted file mode 100644 index 3e94310..0000000 --- a/docs/Placeholders_8h__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/Placeholders_8h__incl.md5 b/docs/Placeholders_8h__incl.md5 deleted file mode 100644 index 58a6a99..0000000 --- a/docs/Placeholders_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -e5b4d2e9e3fff41bcea0a3f60f76dcda \ No newline at end of file diff --git a/docs/Placeholders_8h__incl.png b/docs/Placeholders_8h__incl.png deleted file mode 100644 index 29ee41be93e2b2682de1747ef8ab41be4928e25c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3371 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 - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Placeholders.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Placeholders.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <string>
-
3 
-
4 namespace Hazelnp
-
5 {
-
6  namespace Placeholders
-
7  {
-
8  //! The only purpose of this is to provide the ability to return an empty string as an error for std::string& methods.
-
9  static const std::string g_emptyString;
-
10  }
-
11 }
-
- -
static const std::string g_emptyString
The only purpose of this is to provide the ability to return an empty string as an error for std::str...
Definition: Placeholders.h:9
- - - - diff --git a/docs/Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html b/docs/Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html deleted file mode 100644 index a599dab..0000000 --- a/docs/Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Release/Hazelnupp.vcxproj.FileListAbsolute.txt File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Hazelnupp/Release/Hazelnupp.vcxproj.FileListAbsolute.txt File Reference
-
-
-
- - - - diff --git a/docs/Release_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html b/docs/Release_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html deleted file mode 100644 index 7eda615..0000000 --- a/docs/Release_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Release/Test_Hazelnupp.vcxproj.FileListAbsolute.txt File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Test_Hazelnupp/Release/Test_Hazelnupp.vcxproj.FileListAbsolute.txt File Reference
-
-
-
- - - - diff --git a/docs/StringTools_8cpp.html b/docs/StringTools_8cpp.html deleted file mode 100644 index 9c1fc51..0000000 --- a/docs/StringTools_8cpp.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringTools.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
StringTools.cpp File Reference
-
-
-
#include "StringTools.h"
-
-Include dependency graph for StringTools.cpp:
-
-
- - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/StringTools_8cpp__incl.map b/docs/StringTools_8cpp__incl.map deleted file mode 100644 index 762e92c..0000000 --- a/docs/StringTools_8cpp__incl.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/StringTools_8cpp__incl.md5 b/docs/StringTools_8cpp__incl.md5 deleted file mode 100644 index 7011543..0000000 --- a/docs/StringTools_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -4d994ee3745469dd451021ef4507b101 \ No newline at end of file diff --git a/docs/StringTools_8cpp__incl.png b/docs/StringTools_8cpp__incl.png deleted file mode 100644 index e632c77b70949aa165b02062471c2d0e9822854c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11528 zcmd6N1y_|(wCw?;Q#z#tkq!arZUm$SY3XjHyF*kO>F)0CF6nNN?vA^8eaF2&;OQ80 zhJ5GSv1+b0XNZEF1S%3C5(EN4m68-ygg~HF!RJNsBjnhRV&!IOWfuX6Nmp zAp$6aa32g|1Y_(QMsEz^O;lJqa(|m}-xv(xkK*mp2;{^{>y6%b>(j-WvvszVD~1>y zjo;6=({)-s-Q&pr(x?~GP*cN6M7`;5^MSc#48U0a+U$yxDG`;UTl@;voSi|ZCHWW= zVJ#vi24{t85_z)s<(-+jRQ?!|pUW_X5qfFVw-!eQp2Pp<%Aae&-7?+r62c*=QsB{) z1=FWjLhty+rJ-pXOBWfmR8vq8l$1nx zcTRB@<{KlaB`b?kQBk35W)_NwMV%%S$9S_5C6Jb$?t{mqy}H`&_ft290|y7kKQK`G zNxQ~^-~&5*xy_oe_8$2q7HlDkdX>rRj*bp841~1OQglsCP1$&6C}ScEGbQnC#%LFpmxIZ1VPVL3*T+%DqbcOPyu`za z?0$`nJg!#5h071Dn0c_azuw7X;NZYg zQc~8{*RKsSwf>fE&2WO$eLttZyE+WJxNvCldVWKvTI5|)!U#zNYy8ykyxqbR6&2Mz zoUc}IbYkFkJ_@&7sFB(}1y}j<|Lwl8A6+kK4h{}MiR{#CY9h;i! zF4OBQ`+jcp@OZs4Ha*RFT`4Uu-y6%IY4iN#0TDc2ZU$DP|6sLPCw-X8*Vp$) zY-}JJ3AgUm!JNrTi$}ufaDRV$iB_Y{`Sz!8hKB7E6PP6>B??MP8=Lmzi|PET1Z76U zgy7ECC$eR3w&HYbo*uq`ZE+_M9LHn(@Im>^df@ka@FqUlPoJntBf`Qub3P^6Z1%mz zCn7TF|4Ef+62El5Giq>m@$Vzp0a!a!rBGGn=3(>??{`e4TsbiX1&pGiqSb%@LM|>Y zXlqxRzGFS!U5fmo{xp^$hJ3Kp2+ZFkC?q5la!aq(fK9^f;GLWMPFO@l=HMum&ka}L z>4wtR&ri?NQtR-#UcVd3#KdG3cyw1HySdHjdN*zJ_10hxC^z`LAAA)qzrw=8R#~sSp_GX1iXh^Yu1*#3db2a~$1f@heR66l z`uA^t;9`1f9RbWAK8R+DM=;xO%XW2luMH=0ZcT6Q?gq>K;TBR+!RZV_mvD9ER#a3h zct{CEC4ysPWBXt>i2#-h03K7K)2f|)H8dpa9~6`coCgEp)yes}Ut}bjYN<9V4-d~! zB0KU-iB@4%;A=|pm+(Nyf`G{_A_n2|9)7!vdGD^I;Im{;WSkbjT_6B0;KDwNc>FewNh>L@VWIK%? zEj0#tdqXVds}MnO!6;ma!G}U`+9M(&n*7cAl)%nzIw5-IrJ|w&5%l!*j9K}Wp01bQ z`s?SPd7KDBc4)}%?rz)C5{ck=$x#3@UYW%ltHom7Ya=70t?9JfTs6}_ zTg{`Jo8R&Z3*%MIp$yB$X!3F zWKQmnTS553fDr7?`lu}SfkAHXvx*AC z>k7j|T3qSWYbH=cglsBRjuQ9Q(sM_D);lV>dN)Q8a5^!kvZ>3cLyb!$ypHZvf z6(=Vrv4H2-GZBTMwl;`3W-$gf~w zrRD|PZ@k6AaP^KB>$7Y0FE1`mE@yN)dwb!_%gg&lM|%s^O3S|WV`AgtPUodK9nP;U z*4y_D40M2C!N9;!*yDO9pVGC_8x{TQmtR|(;9DxHwIu77{3@-tm}?;a{#=>?7NXZ~ z!bg9@D`;dyT~S$S3o`24w{O$zcSa!IM#G8Z+}wl|(Rt#>x%A@V;=2>s$PbT?(J3jB zz;z!^dr4zjM#jc4mKq#ilFpBxKYhEpL@kz^2t4jCUR;{a@_Dh@?Yhi5Dm64 zJ#J=N+RF_<$~+%khf)Pd1;>q-N_7N^G;7hUS6alJoH#%(vE83$=)W+#0|7sdOE-#w zg2HUjgYshVzM&z}AT$zY-8KlX*Ap?s=5U_oyUbS>WN}4;Jf{>>R#>h@f(6 z95na3*nREb=t$K#z|GB#&tZWN^0oiTiA}I5MU}~TM%NcakP^D@F86I8ZfqTP$9yW! zRpJ=6kaTo(!bt_*fG?F*S9b&R&}vx?#xisQ?7(6<{{i6@^u^v3GRW>KR?oi^5(p?L zDc3;O1y%sBg$7UhH8i*;j9y<|^+b~Jtgfy3EG~Xk*U*UFRW0}j{Qg~9W0mS~G^NDq z=BDyGac^KBsC;sAa`?P1Hq{HDxWj?!Tvt~&>6kF(bbn=8q*09od|h&ZfCx@1ik@4a^N2Z$o%6N{j82NLp zUIHsrlJQAN1|UVumg&JvPEP9T>3z;tDnZCc+C$2t*h3=oZ-6ccZGc7~_cy>U^2g|4 zK~fb)Si}FHXlev0FNaR8j&y}4!Pt7{}=%9H6f?8G(x*s zLqurJOS2dW3Hsun0W=JZxXae$>*+kyNV=wTh@X9heTLEEnqpgL|3!WQ+g@ZfOf;LVOkcWXd{9{d65&pQjx!L86n1!ZLHc-!E&;wl6 z7ztSn5(=jijfY)y7UCN-NpyytC))Cv^glHSgheeL_xb>Cu)7w6kVYf^*k&sxstqo3 zWQw{BAsQas0tE#HG^KdBHz*g09F|B#L_}X3ojy%0R~pM7%vI)2{PPb8Xz%XMp1$1N z+EQ_O%KeE+;zm^g)|8x`pBGkA!U7q(tvEFTaT^pA6nCE@*$LV!2*lOZ^##1D7ODG`l`(_!$C!Y+$2>GVT<&&l#oU8| zi%V^KKkD`5H&v)c$;U@BGBRQ)=LL}S$?2((urRde%^JLH^2gWVI7 zp~5ycHZkZ(5d>^-1Ox;wAfdk?pZIuu@M!tKVQOe_aGNhIvdwB6R904&F2K70YAOVr zm+taK!$rQX$HvF+E4V-H>FHrrQ&XER(c;M|DjEVQzZYa?YEw|qje$KFPZPmwD`V)? zVqJ>lQ~52xZ>dr?_V?*-dDz)wpmaf{KDgYUL4n9fOaH72^7sGk8qU%q9zoa*>SYhU z0X;2kD3q@Ca#M7bfXCf$C|v*yN~<2vxid2}6961=JKL0siB%Ch&gX`dwY9aGH3#KOsb$4k`#EoTqd2(9~{@^ahkzteyJ{(8{S(jtNUNJ|>8fT#KIecpwQ|&d<)%6P0){c$<m|gjZ$jFilM+VIre+8N@ za6fOO#Kgs==V{HE!uiW8` zkRP1wRZECFNJEg&8e-#-TntGL#Z@?CsskQDyXT&CF8UO06dkI zo0|!qDyyvQ+#Sz^g3!{^#=WvX;@ zd%M;bO*u9>xq0C6Gf<=rpQPuv1OS{qzkVq-^GbVc4-tUYIlV(Eb2C7YOi))h?JMfB zq{*xx1q?{8=~-F+?sh)H?~YC-us`@x|KgI-Rf+6>ms%}rfXvvX!9 z?zjRWp9OeKllgKJ7aA%5kTZe5O<;}se_ue+wEOGVe;sDO=Tt-7+q*O_n)HPhqj?{a zo~H0Tatl&Yjrx`{04i&{yEIeZJs1Eae*tIjlq8Kony^zGA?dBX;(ZI zEGBUT3l1Oe9b8<9eX1`tKm#3ixZovdbCOILKnpooaK^emYHsg|7-2_Kfq>qv4SaMt zdkc4ey;5|w9}%9Yztq4|=U__i;6T_3c9NW2v(X)P&0Z4nLAI(}x`3XYooJyp2-K6p zu_;Rw&f0c-o*Hy)9P_99hcyv6IJB=}QomYyGQ^ycC+l4unXitTeZ~~z-A~1S5z6n( zS0faC{f;!6+6!O>PgC=up2cGFFT(%f+c5(J1HH@5Gi%3Qhy?}G@hqK~0#6??Xlbhj z^1q#JY6XWsc+14$3V-^P;AiIJ3r!A(zU&RIcCF3lUv(m`0ZMy&RJqZxX;*i4dw)JB zFQ4Uj6Bp_`$pMLW>4BIeP4DN29l{!mdK4dsjbn9Bl_|_ek|I82B#m`!lIxLOuwUMz)Rg!R`Q{WMc;fmmYI{ zGuqZ0z(yWQd1R=nGV`RJ+)-4j)HD4D0}szuq`@9q`OnkrbUpKJDvZTPvCN zI}@A?Z&6`j&0!p$pESXegfpeBfdOLh4=c}HX#hYv^6SWtk|py$;;WUqN*(sOYG`oK zGt6}KQZS$qB{DAk(|kvn@AZFEndwx7~g7nSZvrz*q@K57y{2tq&_}ur^B4=jX%;0LhlRIO3}pi z^{I2@ww_i=qbV47=)+LC}*Yi4_8cHw0Ha(4As2b4$zMsYaEPuG- zg%yTJDq?d&>~PGuw04Jy$@+3j09g@P&hP3yJ)}E?#wKUz#<0!J-Og6#?w%(a?Ab==_hmKOL7>a%PUaGEDcpE^tW|Hm!|v$F(6e44(bleEX31|hx4X0B-ZL7ZOd}wv zDCDX&zW$f4Tb!Hq{nqqTa5oC2gcayB`A3oy;HjwQxD_ZdL)KPLh_JC=eYEX}xQ3DH zPTd)Z$pzDdfcHxDtJ@q15kxb?TP;~upUb92W=h0#yF;;DE@|I5IW3jDl=Ep+|17o@ zc0Rm=r&CRCOJF-c*@_c)k5kHtW7;@fa&A$tvG|xHSH0Ru40$H{Y;nGgLG%9oYHn(g z%OT}Ec9C|CsKt7$2zGP1jgdc`Wwpm>=;%aMmW92}U$VP;a@yxz8FJ)nyL@3+PPOC$ zrb`9FyuIlV5Kn*PljdGr5L+y{)_0|?Z}eOiUmY4D2+*kS`@o|wcl7R{l;}ixgIIHM zTgcSpoNKP!sk4O&j`-Bw9foZ9^zEiY_;n!497JoW2La_FQJejH^$lb0Z>AO#U&s9(vbW#JL3?R16n|)AHy@cRZ*a>Pq3m6w zZm3{k@scdp$I=%}Rj=-F@$DU3Zh7=`x^4_PA|kTv#|#YN_JP9nL3vI9E2yZ%9xi^VG!sAW zZuIi1YuxFswnd(t6Ae0ZRkJ!Dk^2X>bWIg%k4;;3IdiEfx|5a+CouuIfOvG|$MXG* z^Kvif%d$e*+3H^&&+Tno-H9ygz03a9^KFuztwAQ6tx&wg5Ba2e$|>ulh;)S`Czp<3 zlVlSkGj7xOp5b?RS8;+S$%U0IvXPRic>( zL+xOy(52{$Jt4T@AmGLHnjFMAIXWlcm4fXWy(L;`30{{m3<573&j5Ma$o>fNqUr;E5E7HTtD zOn$s?YO)xwuY9mz;B~)2>kNDZ)A;1o&B>%=yS=Wp&f0QaA+o0@HxAdUqLqzo)*cMv zuXbZ^&!R(O7hqAq0>{3v&9V$P5cHR2w()4dlm{`9Ca2Zj)F=z}K#K!U;Z1xAa z$8{xubjmE!$z}0y1HmOt9Rckk1%*$wS+)1!tZmHBUe->OKnb(K#_hq@;5BF~*Ejyo z-JC)VjoF}S)*hjZPEE;4OXF(RpJB6cq>RF$s8g!#Go_k@RR=06R)A5vTA4ww3UCL# zs{o5WLI)S5Q56~8h<>k@n|C`VQ%-5SPeQGQ}5t%UcA!hw9Bfu_(6a0mzQ%eyA zXe}Us0t_?>0d79m(k~X1c&B$b&-Rm#(b^gw3>IRKEA|+Wrk|yy`U?~#JWoF+G&(){ z<$PjicD8zKe5j&DLh?6RSw;qLfp`l-z%(MSfEJY9cX}tfN-1=|OUB03Zccmo`UdGB z24e7j-WlWN6cp}zOH+1R-!FDaRExO-h&UDkzZAUvs^H!UpzN9`_|(=^}dZ0$wy$%NISMWN$Jm`(&`_hKb-n@ag95 z=;*QAySD^RF8S0lw6qZe^bZzq(R1XM0y>1ryYvI)YsJ7=2+R{mqHyd6hlcQlgv2_P za&n9ePF62%?C-Hi`M>?XPYgm|(d)y|0cf}M0x8D!EDmAnVpL%5=3nk(aEMelNS)Hv zc(|cp{J?N=+=`jRq1DwD@(8Bh&+Su}n)P$i?*|VT#toMVHE8JPVXw{`Aw)?LF1KfV z=u=X?gK@`t29>V|`TdP9RDxQrb@4O|@xtR5|K?yh*Ts}>{m z^hVWZr!?w!BW`Zt=r7hmL`C18C=?%Cy383MxJR{+7xRe5J+4nG}WOPoVAc%I^3A;400PYn&X8modE_*)@;kX8H%|x`JOP zo!;2W28?1Myks9rnqA}fD%2j`xhBP$&Tzu%_$4LNKihr(7e0o(4EsJ<&LbF)42gu{ ze)?XLsDsL(uG13Ud$RV_H_YHI`4$dB^FB0bmlpy-DSy!dyw^QiBsZCnBQ>8%5t5ZX z-O3d)bUiUB0cLVI*bP`*?66Cv#DJ`LSx2H0^$2QdiG@x{$$Pe7gyE8i>8}2Hero&u zsPb7!N!;Zok+t?@OUlWK-}9LdTeDVMywZpe95P(1v4os<4@NX2!!R=|3qeH0GMS&R zw%x-2ceW7Re(N)JXS*I2E9)5=5q4# zAYeF_Efdtv z3A(Qho1d9VKNJ*~Xlbslcf;0RJxc(B+yjdvU2=U!P_5*h@+}rXROFe(mbeq(4rG3`39% zV|6FB*!CjN-0z6fd|nwQ2yM6v^u2&}{ppPpMgTA>k*v4-Lp;1dD{{7{yTCilkk`Zy z2+Pa8S;`3qCK&CBacaS&p0hr|!8g(%xc!C60U`-;K32?9_+#-M;70%nAfa~yfI~0$ zdX74|s99YoSR(gOQn2143|!vf zATR32kASk8qak~hik&3u`HhELSOA$7&iw56RXcZ$Ex~C!gS-MFNl>N3Z?ZEoUg5+{ zc#MTZnNKJ8fa;h1g}PMw56+L&)TnTj+g%;(Falf#ZlCiV9cd@iFlU{~$=~A@hFDeB zrBQN!!pCZg-^j{3jO9cyR#i=MB|P^=kw(YG_4Zd~89qI1fSFrwU-Z)27JJnYleE_O z^mJf>*%Gl>N#SKfn&2za)N`O3U}<@*p>+3=HVPQeNzEO#R z7Z(yAA0_!|xbxzl(e9*_=Sbaq^Ja$YL|GY`!G@AtIhGzkC$=d{*a%!c+@5onW-_Xo zlo)>71ezDL-HC3=z4I2ktx)A{CAIzPY^v2={2*M0#DT?Oazjf#CVK4t;co1$;#xbm za<}mkffbcWruq4ZZ;aS`Sp1$p_9(w2PKEY8w$lkCM05NfQY=e|m5r^_2L^uc+dL~) z(TjWqj7M)7{V;^hibwpafxZ9?5ahE*!PML@EKEi#jUmC2PA6{|-_k*dWS=~BO_%W7+Tfrx|Z9DH~_hEO6gv#_)S>48kR?l&W& zK%kat2RlnlOk`$f?>=0pUEALe1GI#orX~^4Je4|lqkXA09K?0MoKmBD<95D{ij9MF z3J51?!R)~^z+c-qI|qe?AOh+nlz`2MjEARjag>gQ<@H8Sgdd<(fN+S#bmDDRPL6br z+VsvBotRn+@5EvQoZ{Lo25SfcIyw`lf!Wsiy`I<2iBCXapz7_@+}hfj?3XVITCJXc zwzjt`G;6KOVUckq=ZA-f=fFr`rYXnm`UsHq-b;11eux3WU{()i(Rw^i2Q;U|1_lN% z^lI#%Kf|geU;BY-CSIN1D4gXA@bhfO#>TPn@qK_sRR{VX0!Zxd-^yF_Kqu3a!sn*C zwWFryn5#2hv1!H?h0o$UH#=LlyK52~9o-Jtn$ecKJvwU45a}jW8te*q^fzUI)-M-$ zeyHsF0Jb;`cGe60X72ZUC3SH6xhR3BJ|I_77ZrWQ#>}h>M#%Zo6-cP4hJXOdn>H`V zY}j`+GouAn$`GBD|2J=q!#_nMOG}2^#tK6&i&^HYVa}DZozc`6H3cpPMjH^qbmP= zs=2QV#{WiygoFoRSZ`PpcO3{W=gWF|h40kNjM|wq*a%FUzJbBq{!FP%fQh7}WHb77 zXe<@pAQv@tAe1gx>}M~KQ~aHnpmlC&eY_&Fx3i;V8Gh09JOLWd5ZcGv(9lro4G|#p z&(F>ZZiYR@r+s5sdVt2Qb8&GI-yl4sTYtJhh0Y1kIz8%JgJ;0oP#|tVXqNEz>ERsc zY4jnpz@^_t@%?YM#W+0Xu{j^buCdbzzgVfU6Ef0Z#!T17N>*iudHE-Z~FZ4f9 zxnzK#jOTWweFLN%|MtTp=vr|f|L$8)O@+aU_YV(?ef>%d6mjX9nUtp1fGI~Uh-1KE zkYS8H2P;A#fU)^0WcuRTryCOeN0wkx{~}!Z^yw2ozIBa_lpGv2T_1psh3Z*NNlD~I z^pl?cdA)pbu>h6s-C&Mvf-i6cEFgBObH8Ps`1_Z|?%OyST@1tE3sC}&X0lLY8MBS^ zUx=OVg0tpmN0l!eQ(CNP2u?ra(C(^#Kbm7i(Ei70zW-HjnAwLu>+~wC{5vt z-i%ElAUgUr5CckIbPNY89QUU&LPUc@Y29er zM+HiOU{06@dwr?#8C3@e8fffw)Xr&dMj*bpu=%wxB;{(Vl(ORpe7xg7z`wkXrZHC6&qdF{7RsAc07)-Qe!V58@%#%(B1Z(VHl18Oph^^LiQW@)|P z{`aN#Ah>Efff@`>SV{^}BoIXiH0Hc~d}{{>L(X6PF%-Q@n+QLcU;x477;w4Sg@sN) z8@9BxxW|bhkY757RfDo}c{hM19Q;sFs|ge*6or6D{O?pDMT?ctS&pgBEgsynB3b}U zm@yAl@SEhN!WQpLsO$|CK0LU8`}XZbC2A6I)pHMAVvWfJ=I^e6%7dQO*@4W z_NvP}`>K?gKNZspiZ8<8ET{h}Pk9f8u-=FOD*d}>^hODKQ&hz`A0TapNQudbmI&+m F{s)4cYUBU_ diff --git a/docs/StringTools_8cpp_source.html b/docs/StringTools_8cpp_source.html deleted file mode 100644 index 04dfee9..0000000 --- a/docs/StringTools_8cpp_source.html +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringTools.cpp Source File - - - - - - - - - - - - -
-
-
StringTools.cpp
-
-
-Go to the documentation of this file.
1 #include "StringTools.h"
-
2 
-
3 using namespace Hazelnp;
-
4 
-
5 bool Internal::StringTools::Contains(const std::string& str, const char c)
-
6 {
-
7  for (const char& i : str)
-
8  if (i == c)
-
9  return true;
-
10 
-
11  return false;
-
12 }
-
13 
-
14 std::string Internal::StringTools::Replace(const std::string& str, const char find, const std::string& subst)
-
15 {
-
16  std::stringstream ss;
-
17 
-
18  for (std::size_t i = 0; i < str.length(); i++)
-
19  {
-
20  if (str[i] != find) ss << str[i];
-
21  else ss << subst;
-
22  }
-
23 
-
24  return ss.str();
-
25 }
-
26 
-
27 std::string Internal::StringTools::Replace(const std::string& str, const std::string& find, const std::string& subst)
-
28 {
-
29  if (find.length() == 0) return str;
-
30 
-
31  std::stringstream ss;
-
32 
-
33  std::size_t posFound = 0;
-
34  std::size_t lastFound = 0;
-
35 
-
36  while (posFound != std::string::npos)
-
37  {
-
38  lastFound = posFound;
-
39  posFound = str.find(find, posFound);
-
40 
-
41  if (posFound != std::string::npos)
-
42  {
-
43  ss << str.substr(lastFound, posFound - lastFound) << subst;
-
44  posFound += find.length();
-
45  }
-
46  else
-
47  {
-
48  ss << str.substr(lastFound, (str.length()) - lastFound);
-
49  }
-
50  }
-
51 
-
52  return ss.str();
-
53 }
-
54 
-
55 
-
56 bool Internal::StringTools::IsNumeric(const std::string& str, const bool allowDecimalPoint)
-
57 {
-
58  if (str.length() == 0) return false;
-
59 
-
60  bool alreadyParsedDecimalPoint = false;
-
61  std::size_t digitCount = 0;
-
62 
-
63  for (std::size_t i = 0; i < str.length(); i++)
-
64  {
-
65  if (!(
-
66  ((str[i] >= '0') && (str[i] <= '9')) ||
-
67  ((str[i] == '-') && (i == 0)) ||
-
68  ((str[i] == '.') && (allowDecimalPoint) && (!alreadyParsedDecimalPoint) && (digitCount > 0))
-
69  )) return false;
-
70 
-
71 
-
72  // Here we just have to check for the character. Not for any other conditions.
-
73  // Why? Because if these conditions failed, the function would have already returned false.
-
74  if (((str[i] >= '0') && (str[i] <= '9'))) digitCount++;
-
75  if (str[i] == '.') alreadyParsedDecimalPoint = true;
-
76  }
-
77 
-
78  // Even if we did not find any invalid chars, we should still return false, if we found no digits at all.
-
79  return digitCount > 0;
-
80 }
-
81 
-
82 bool Internal::StringTools::ParseNumber(const std::string& str, bool& out_isInt, long double& out_number)
-
83 {
-
84  bool isDecimal = false;
-
85 
-
86  if (str.length() == 0) return false;
-
87  if (Contains(str, '.')) isDecimal = true;
-
88 
-
89  if (isDecimal)
-
90  {
-
91  try
-
92  {
-
93  out_number = std::stold(str);
-
94  out_isInt = false;
-
95  }
-
96  catch (std::invalid_argument&)
-
97  {
-
98  return false;
-
99  }
-
100  catch (std::out_of_range&)
-
101  {
-
102  return false;
-
103  }
-
104  }
-
105  else
-
106  {
-
107  try
-
108  {
-
109  out_number = (long double)std::stoll(str);
-
110  out_isInt = true;
-
111  }
-
112  catch (std::invalid_argument&)
-
113  {
-
114  return false;
-
115  }
-
116  catch (std::out_of_range&)
-
117  {
-
118  return false;
-
119  }
-
120  }
-
121 
-
122  return true;
-
123 }
-
124 
-
125 std::vector<std::string> Internal::StringTools::SplitString(const std::string& str, const char delimiter)
-
126 {
-
127  if (str.length() == 0) return std::vector<std::string>();
-
128 
-
129  return SplitString(str, delimiter);
-
130 }
-
131 
-
132 std::vector<std::string> Internal::StringTools::SplitString(const std::string& str, const std::string& delimiter)
-
133 {
-
134  if (str.length() == 0) return std::vector<std::string>();
-
135 
-
136  std::vector<std::string> parts;
-
137 
-
138  if (delimiter.length() == 0) // If the delimiter is "" (empty), just split between every single char. Not useful, but logical
-
139  {
-
140  for (std::size_t i = 0; i < str.length(); i++)
-
141  {
-
142  parts.push_back(std::string({ str[i] }));
-
143  }
-
144  return parts;
-
145  }
-
146 
-
147  std::size_t posFound = 0;
-
148  std::size_t lastFound = 0;
-
149 
-
150  while (posFound != std::string::npos)
-
151  {
-
152  lastFound = posFound;
-
153  posFound = str.find(delimiter, posFound);
-
154 
-
155  std::string found;
-
156 
-
157  if (posFound != std::string::npos)
-
158  {
-
159  found = str.substr(lastFound, posFound - lastFound);
-
160  posFound += delimiter.length();
-
161  }
-
162  else
-
163  {
-
164  found = str.substr(lastFound, str.length() - lastFound);
-
165  }
-
166 
-
167  parts.push_back(found);
-
168  }
-
169 
-
170  return parts;
-
171 }
-
172 
-
173 std::string Internal::StringTools::ToLower(const std::string& str)
-
174 {
-
175  std::stringstream ss;
-
176  for (std::size_t i = 0; i < str.length(); i++)
-
177  {
-
178  if ((str[i] >= 'A') && (str[i] <= 'Z')) ss << (char)(((int)str[i]) + 32);
-
179  else if (str[i] == -60) ss << (char)-28; // AE => ae
-
180  else if (str[i] == -42) ss << (char)-10; // OE => oe
-
181  else if (str[i] == -36) ss << (char)-4; // UE => ue
-
182  else ss << str[i];
-
183  }
-
184 
-
185  return ss.str();
-
186 }
-
- -
static bool Contains(const std::string &str, const char c)
Will return wether or not a given char is in a string.
Definition: StringTools.cpp:5
-
static std::string ToLower(const std::string &str)
Will make a string all lower-case.
-
static std::string Replace(const std::string &str, const char find, const std::string &subst)
Will replace a part of a string with another string.
Definition: StringTools.cpp:14
-
static bool ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)
Will convert the number in str to a number.
Definition: StringTools.cpp:82
-
static std::vector< std::string > SplitString(const std::string &str, const char delimiter)
Will split a string by a delimiter char. The delimiter will be excluded!
-
static bool IsNumeric(const std::string &str, const bool allowDecimalPoint=false)
Will return true if the given string consists only of digits (including signage)
Definition: StringTools.cpp:56
- - - - - diff --git a/docs/StringTools_8h.html b/docs/StringTools_8h.html deleted file mode 100644 index 01d9a59..0000000 --- a/docs/StringTools_8h.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringTools.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
StringTools.h File Reference
-
-
-
#include <string>
-#include <sstream>
-#include <vector>
-#include <cmath>
-
-Include dependency graph for StringTools.h:
-
-
- - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::Internal::StringTools
 Internal helper class. More...
 
- - - - - -

-Namespaces

 Hazelnp
 
 Hazelnp::Internal
 
-
- - - - diff --git a/docs/StringTools_8h__dep__incl.map b/docs/StringTools_8h__dep__incl.map deleted file mode 100644 index be3956c..0000000 --- a/docs/StringTools_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/StringTools_8h__dep__incl.md5 b/docs/StringTools_8h__dep__incl.md5 deleted file mode 100644 index f88359e..0000000 --- a/docs/StringTools_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -6a8a846369ea9d647a0ae474629f3fdc \ No newline at end of file diff --git a/docs/StringTools_8h__dep__incl.png b/docs/StringTools_8h__dep__incl.png deleted file mode 100644 index d0d812d0ddd8f388484d41f609c4948c7e69b2ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7463 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 diff --git a/docs/StringTools_8h__incl.map b/docs/StringTools_8h__incl.map deleted file mode 100644 index 31b2cdc..0000000 --- a/docs/StringTools_8h__incl.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/StringTools_8h__incl.md5 b/docs/StringTools_8h__incl.md5 deleted file mode 100644 index 7975647..0000000 --- a/docs/StringTools_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -67b004299d6fdf50268756d41946bfee \ No newline at end of file diff --git a/docs/StringTools_8h__incl.png b/docs/StringTools_8h__incl.png deleted file mode 100644 index 6cdea0cf4d418d3f344ee62d758435b825632146..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8293 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 N{3{jdO3By3{|~?A;zs}g diff --git a/docs/StringTools_8h_source.html b/docs/StringTools_8h_source.html deleted file mode 100644 index 4cc1902..0000000 --- a/docs/StringTools_8h_source.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringTools.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
StringTools.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <string>
-
3 #include <sstream>
-
4 #include <vector>
-
5 #include <cmath>
-
6 
-
7 namespace Hazelnp
-
8 {
-
9  namespace Internal
-
10  {
-
11  /** Internal helper class. Feel free to use it tho.
-
12  */
- -
14  {
-
15  public:
-
16  //! Will return wether or not a given char is in a string
-
17  static bool Contains(const std::string& str, const char c);
-
18 
-
19  //! Will replace a part of a string with another string
-
20  static std::string Replace(const std::string& str, const char find, const std::string& subst);
-
21 
-
22  //! Will replace a part of a string with another string
-
23  static std::string Replace(const std::string& str, const std::string& find, const std::string& subst);
-
24 
-
25  //! Will return true if the given string consists only of digits (including signage)
-
26  static bool IsNumeric(const std::string& str, const bool allowDecimalPoint = false);
-
27 
-
28  //! Will convert the number in str to a number.
-
29  //! Returns wether or not the operation was successful.
-
30  //! Also returns wether the number is an integer, or floating point. If int, cast out_number to int.
-
31  static bool ParseNumber(const std::string& str, bool& out_isInt, long double& out_number);
-
32 
-
33  //! Will split a string by a delimiter char. The delimiter will be excluded!
-
34  static std::vector<std::string> SplitString(const std::string& str, const char delimiter);
-
35 
-
36  //! Will split a string by a delimiter string. The delimiter will be excluded!
-
37  static std::vector<std::string> SplitString(const std::string& str, const std::string& delimiter);
-
38 
-
39  //! Will make a string all lower-case
-
40  static std::string ToLower(const std::string& str);
-
41  };
-
42  }
-
43 }
-
44 
-
- -
static bool Contains(const std::string &str, const char c)
Will return wether or not a given char is in a string.
Definition: StringTools.cpp:5
-
static std::string ToLower(const std::string &str)
Will make a string all lower-case.
-
Internal helper class.
Definition: StringTools.h:13
-
static std::string Replace(const std::string &str, const char find, const std::string &subst)
Will replace a part of a string with another string.
Definition: StringTools.cpp:14
-
static bool ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)
Will convert the number in str to a number.
Definition: StringTools.cpp:82
-
static std::vector< std::string > SplitString(const std::string &str, const char delimiter)
Will split a string by a delimiter char. The delimiter will be excluded!
-
static bool IsNumeric(const std::string &str, const bool allowDecimalPoint=false)
Will return true if the given string consists only of digits (including signage)
Definition: StringTools.cpp:56
- - - - diff --git a/docs/StringValue_8cpp.html b/docs/StringValue_8cpp.html deleted file mode 100644 index 327b668..0000000 --- a/docs/StringValue_8cpp.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringValue.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
StringValue.cpp File Reference
-
-
-
#include "StringValue.h"
-#include "HazelnuppException.h"
-#include <sstream>
-
-Include dependency graph for StringValue.cpp:
-
-
- - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/StringValue_8cpp__incl.map b/docs/StringValue_8cpp__incl.map deleted file mode 100644 index 7a62a3c..0000000 --- a/docs/StringValue_8cpp__incl.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/StringValue_8cpp__incl.md5 b/docs/StringValue_8cpp__incl.md5 deleted file mode 100644 index e67ac23..0000000 --- a/docs/StringValue_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -edbcbad437362bfcea36ede007a980df \ No newline at end of file diff --git a/docs/StringValue_8cpp__incl.png b/docs/StringValue_8cpp__incl.png deleted file mode 100644 index 2299566c67df1a4fe8dc083517fc51a437847aee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29261 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%0A`@)42D)}4(d@%&vN%FNh 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 rS%?i#XyDubhBE?j@PCtI=^Bas5%O) - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringValue.cpp Source File - - - - - - - - - - - - -
-
-
StringValue.cpp
-
-
-Go to the documentation of this file.
1 #include "StringValue.h"
-
2 #include "HazelnuppException.h"
-
3 #include <sstream>
-
4 
-
5 using namespace Hazelnp;
-
6 
-
7 StringValue::StringValue(const std::string& value)
-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
14 
- -
16 {
-
17  return new StringValue(value);
-
18 }
-
19 
-
20 std::string StringValue::GetAsOsString() const
-
21 {
-
22  std::stringstream ss;
-
23  ss << "StringValue: " << value;
-
24  return ss.str();
-
25 }
-
26 
-
27 const std::string& StringValue::GetValue() const
-
28 {
-
29  return value;
-
30 }
-
31 
-
32 StringValue::operator std::string() const
-
33 {
-
34  return value;
-
35 }
-
36 
-
37 
-
38 
-
39 long long int StringValue::GetInt64() const
-
40 {
- -
42 }
-
43 
- -
45 {
- -
47 }
-
48 
-
49 long double StringValue::GetFloat64() const
-
50 {
- -
52 }
-
53 
- -
55 {
- -
57 }
-
58 
-
59 std::string StringValue::GetString() const
-
60 {
-
61  return value;
-
62 }
-
63 
-
64 const std::vector<Value*>& StringValue::GetList() const
-
65 {
- -
67 }
-
- - -
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:44
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: StringValue.cpp:20
-
StringValue(const std::string &value)
Definition: StringValue.cpp:7
- -
Abstract class for values.
Definition: Value.h:10
-
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:39
-
std::string GetString() const override
Will return this value as a string.
Definition: StringValue.cpp:59
-
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:54
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: StringValue.cpp:15
- -
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:49
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:64
-
const std::string & GetValue() const
Will return the raw value.
Definition: StringValue.cpp:27
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/StringValue_8h.html b/docs/StringValue_8h.html deleted file mode 100644 index 7807b86..0000000 --- a/docs/StringValue_8h.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringValue.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
StringValue.h File Reference
-
-
-
#include "Value.h"
-#include <string>
-
-Include dependency graph for StringValue.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::StringValue
 Specializations for string values (uses std::string) More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/StringValue_8h__dep__incl.map b/docs/StringValue_8h__dep__incl.map deleted file mode 100644 index 00d1a24..0000000 --- a/docs/StringValue_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/StringValue_8h__dep__incl.md5 b/docs/StringValue_8h__dep__incl.md5 deleted file mode 100644 index c81cd5d..0000000 --- a/docs/StringValue_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -a0f49b1d76495fc57c0b0a69a84be1dd \ No newline at end of file diff --git a/docs/StringValue_8h__dep__incl.png b/docs/StringValue_8h__dep__incl.png deleted file mode 100644 index a7784eb25869ee9c16ecf42cb13586a92440e5a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7207 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 Q1AGjkEUzI~E@Kw*Kdro3@&Et; diff --git a/docs/StringValue_8h__incl.map b/docs/StringValue_8h__incl.map deleted file mode 100644 index d07717d..0000000 --- a/docs/StringValue_8h__incl.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/StringValue_8h__incl.md5 b/docs/StringValue_8h__incl.md5 deleted file mode 100644 index 7016e1f..0000000 --- a/docs/StringValue_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -3091c398edee9f2e3c943dafdcded410 \ No newline at end of file diff --git a/docs/StringValue_8h__incl.png b/docs/StringValue_8h__incl.png deleted file mode 100644 index 66f8e57815140396a30c5905140386f0554f75fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13726 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 F`aiYPi;VyP diff --git a/docs/StringValue_8h_source.html b/docs/StringValue_8h_source.html deleted file mode 100644 index 94cebe7..0000000 --- a/docs/StringValue_8h_source.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/StringValue.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
StringValue.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 #include <string>
-
4 
-
5 namespace Hazelnp
-
6 {
-
7  /** Specializations for string values (uses std::string)
-
8  */
-
9  class StringValue : public Value
-
10  {
-
11  public:
-
12  StringValue(const std::string& value);
-
13  ~StringValue() override {};
-
14 
-
15  //! Will return a deeopopy of this object
-
16  Value* Deepcopy() const override;
-
17 
-
18  //! Will return a string suitable for an std::ostream;
-
19  std::string GetAsOsString() const override;
-
20 
-
21  //! Will return the raw value
-
22  const std::string& GetValue() const;
-
23 
-
24  operator std::string() const;
-
25 
-
26  //! Throws HazelnuppValueNotConvertibleException
-
27  long long int GetInt64() const override;
-
28  //! Throws HazelnuppValueNotConvertibleException
-
29  int GetInt32() const override;
-
30 
-
31  //! Throws HazelnuppValueNotConvertibleException
-
32  long double GetFloat64() const override;
-
33  //! Throws HazelnuppValueNotConvertibleException
-
34  double GetFloat32() const override;
-
35 
-
36  //! Will return this value as a string
-
37  std::string GetString() const override;
-
38 
-
39  //! Throws HazelnuppValueNotConvertibleException
-
40  const std::vector<Value*>& GetList() const override;
-
41 
-
42  private:
-
43  std::string value;
-
44  };
-
45 }
-
- -
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:44
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: StringValue.cpp:20
-
StringValue(const std::string &value)
Definition: StringValue.cpp:7
-
Abstract class for values.
Definition: Value.h:10
-
~StringValue() override
Definition: StringValue.h:13
-
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:39
-
std::string GetString() const override
Will return this value as a string.
Definition: StringValue.cpp:59
-
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:54
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: StringValue.cpp:15
-
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:49
-
const std::vector< Value * > & GetList() const override
Throws HazelnuppValueNotConvertibleException.
Definition: StringValue.cpp:64
-
Specializations for string values (uses std::string)
Definition: StringValue.h:9
-
const std::string & GetValue() const
Will return the raw value.
Definition: StringValue.cpp:27
- - - - - diff --git a/docs/Value_8cpp.html b/docs/Value_8cpp.html deleted file mode 100644 index 9c455f0..0000000 --- a/docs/Value_8cpp.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Value.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Value.cpp File Reference
-
-
-
#include "Value.h"
-
-Include dependency graph for Value.cpp:
-
-
- - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/Value_8cpp__incl.map b/docs/Value_8cpp__incl.map deleted file mode 100644 index c2c1829..0000000 --- a/docs/Value_8cpp__incl.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/Value_8cpp__incl.md5 b/docs/Value_8cpp__incl.md5 deleted file mode 100644 index 1c22e19..0000000 --- a/docs/Value_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -4cc537f22df28748abb702e213edf12b \ No newline at end of file diff --git a/docs/Value_8cpp__incl.png b/docs/Value_8cpp__incl.png deleted file mode 100644 index 57faa48e1840219cfc6634d1fb5f7ed8f1713d13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9207 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 x+0Tf> - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Value.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Value.cpp
-
-
-Go to the documentation of this file.
1 #include "Value.h"
-
2 
-
3 using namespace Hazelnp;
-
4 
- -
6  :
-
7  type{ type }
-
8 {
-
9  return;
-
10 }
-
11 
- -
13 {
-
14  return type;
-
15 }
-
- -
Value(DATA_TYPE type)
Definition: Value.cpp:5
-
DATA_TYPE GetDataType() const
Will return the data type of this value.
Definition: Value.cpp:12
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
DATA_TYPE type
Definition: Value.h:48
- - - - - diff --git a/docs/Value_8h.html b/docs/Value_8h.html deleted file mode 100644 index 7ffadce..0000000 --- a/docs/Value_8h.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Value.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Value.h File Reference
-
-
-
#include "DataType.h"
-#include <ostream>
-#include <vector>
-
-Include dependency graph for Value.h:
-
-
- - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::Value
 Abstract class for values. More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/Value_8h__dep__incl.map b/docs/Value_8h__dep__incl.map deleted file mode 100644 index 7cae3a0..0000000 --- a/docs/Value_8h__dep__incl.map +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/docs/Value_8h__dep__incl.md5 b/docs/Value_8h__dep__incl.md5 deleted file mode 100644 index 6dbcc84..0000000 --- a/docs/Value_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -f01a2282f78dfaef0fb8ee3f2c321ea8 \ No newline at end of file diff --git a/docs/Value_8h__dep__incl.png b/docs/Value_8h__dep__incl.png deleted file mode 100644 index e031544b0ccf4826592e416003e0bbc03e76f494..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46660 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

H#SkDME*H~CX`EU2%6Uw0wx+Z?OAS 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 g|Nfi*-{qV!@EqS|!?Cm4#Qaw!1$FsyS<_el4 - - - - - - diff --git a/docs/Value_8h__incl.md5 b/docs/Value_8h__incl.md5 deleted file mode 100644 index 16be7d7..0000000 --- a/docs/Value_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -8a865d27021023f3bf0f841e7e4f7839 \ No newline at end of file diff --git a/docs/Value_8h__incl.png b/docs/Value_8h__incl.png deleted file mode 100644 index 462fd8aaad085038eaf3f8ee77a2a7943a058792..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8450 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 diff --git a/docs/Value_8h_source.html b/docs/Value_8h_source.html deleted file mode 100644 index 2cebc30..0000000 --- a/docs/Value_8h_source.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Value.h Source File - - - - - - - - - - - -

-
-
-
Value.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "DataType.h"
-
3 #include <ostream>
-
4 #include <vector>
-
5 
-
6 namespace Hazelnp
-
7 {
-
8  /** Abstract class for values
-
9  */
-
10  class Value
-
11  {
-
12  public:
-
13  virtual ~Value() {};
-
14 
-
15  //! Will return a deeopopy of this object
-
16  virtual Value* Deepcopy() const = 0;
-
17 
-
18  //! Will return a string suitable for an std::ostream
-
19  virtual std::string GetAsOsString() const = 0;
-
20 
-
21  //! Will return the data type of this value
-
22  DATA_TYPE GetDataType() const;
-
23 
-
24  friend std::ostream& operator<< (std::ostream& os, const Value& v)
-
25  {
-
26  return os << v.GetAsOsString();
-
27  }
-
28 
-
29  //! Will attempt to return the integer data (long long)
-
30  virtual long long int GetInt64() const = 0;
-
31  //! Will attempt to return the integer data (int)
-
32  virtual int GetInt32() const = 0;
-
33 
-
34  //! Will attempt to return the floating-point data (long double)
-
35  virtual long double GetFloat64() const = 0;
-
36  //! Will attempt to return the floating-point data (double)
-
37  virtual double GetFloat32() const = 0;
-
38 
-
39  //! Will attempt to return the string-data
-
40  virtual std::string GetString() const = 0;
-
41 
-
42  //! Will attempt to return the list-data
-
43  virtual const std::vector<Value*>& GetList() const = 0;
-
44 
-
45  protected:
- -
47 
- -
49  };
-
50 }
-
- - -
virtual double GetFloat32() const =0
Will attempt to return the floating-point data (double)
-
Abstract class for values.
Definition: Value.h:10
-
virtual int GetInt32() const =0
Will attempt to return the integer data (int)
-
virtual std::string GetString() const =0
Will attempt to return the string-data.
-
virtual ~Value()
Definition: Value.h:13
-
Value(DATA_TYPE type)
Definition: Value.cpp:5
-
DATA_TYPE GetDataType() const
Will return the data type of this value.
Definition: Value.cpp:12
-
virtual long long int GetInt64() const =0
Will attempt to return the integer data (long long)
-
virtual std::string GetAsOsString() const =0
Will return a string suitable for an std::ostream.
-
virtual const std::vector< Value * > & GetList() const =0
Will attempt to return the list-data.
-
friend std::ostream & operator<<(std::ostream &os, const Value &v)
Definition: Value.h:24
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
DATA_TYPE type
Definition: Value.h:48
-
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
-
virtual long double GetFloat64() const =0
Will attempt to return the floating-point data (long double)
- - - - diff --git a/docs/Version_8h.html b/docs/Version_8h.html deleted file mode 100644 index 4f1ed99..0000000 --- a/docs/Version_8h.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Version.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Version.h File Reference
-
-
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - -

-Macros

#define HAZELNUPP_VERSION   (1.121)
 
-

Macro Definition Documentation

- -

◆ HAZELNUPP_VERSION

- -
-
- - - - -
#define HAZELNUPP_VERSION   (1.121)
-
- -

Definition at line 2 of file Version.h.

- -
-
-
- - - - diff --git a/docs/Version_8h__dep__incl.map b/docs/Version_8h__dep__incl.map deleted file mode 100644 index ec3789b..0000000 --- a/docs/Version_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/Version_8h__dep__incl.md5 b/docs/Version_8h__dep__incl.md5 deleted file mode 100644 index 37e3bcb..0000000 --- a/docs/Version_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -92ebb13d9fcb4c4be1ddcf0283b48ade \ No newline at end of file diff --git a/docs/Version_8h__dep__incl.png b/docs/Version_8h__dep__incl.png deleted file mode 100644 index f14d5a23a96d20aa556f40d17826a7ba28cc8175..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8372 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 O5O)>s%NNO7Jo-NZW-_n< diff --git a/docs/Version_8h_source.html b/docs/Version_8h_source.html deleted file mode 100644 index 105d000..0000000 --- a/docs/Version_8h_source.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Version.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Version.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #define HAZELNUPP_VERSION (1.121)
-
- - - - diff --git a/docs/VoidValue_8cpp.html b/docs/VoidValue_8cpp.html deleted file mode 100644 index e0453c1..0000000 --- a/docs/VoidValue_8cpp.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/VoidValue.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
VoidValue.cpp File Reference
-
-
-
#include "VoidValue.h"
-#include "HazelnuppException.h"
-
-Include dependency graph for VoidValue.cpp:
-
-
- - - - - - - - - - - - -
-
-

Go to the source code of this file.

-
- - - - diff --git a/docs/VoidValue_8cpp__incl.map b/docs/VoidValue_8cpp__incl.map deleted file mode 100644 index bf2e24d..0000000 --- a/docs/VoidValue_8cpp__incl.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/VoidValue_8cpp__incl.md5 b/docs/VoidValue_8cpp__incl.md5 deleted file mode 100644 index 1f8476e..0000000 --- a/docs/VoidValue_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -8d346c10bcdef3b6c864189574d98cf6 \ No newline at end of file diff --git a/docs/VoidValue_8cpp__incl.png b/docs/VoidValue_8cpp__incl.png deleted file mode 100644 index 3a7733349331e1d1edd4d42a1ed777950a127681..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22702 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 Pk0AON4RuPiZSVgV59&R% diff --git a/docs/VoidValue_8cpp_source.html b/docs/VoidValue_8cpp_source.html deleted file mode 100644 index 95f4b5f..0000000 --- a/docs/VoidValue_8cpp_source.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/VoidValue.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
VoidValue.cpp
-
-
-Go to the documentation of this file.
1 #include "VoidValue.h"
-
2 #include "HazelnuppException.h"
-
3 
-
4 using namespace Hazelnp;
-
5 
- -
7  :
- -
9 {
-
10  return;
-
11 }
-
12 
- -
14 {
-
15  return new VoidValue();
-
16 }
-
17 
-
18 std::string VoidValue::GetAsOsString() const
-
19 {
-
20  return "VoidValue";
-
21 }
-
22 
-
23 
-
24 
-
25 long long int VoidValue::GetInt64() const
-
26 {
- -
28 }
-
29 
- -
31 {
- -
33 }
-
34 
-
35 long double VoidValue::GetFloat64() const
-
36 {
- -
38 }
-
39 
-
40 double VoidValue::GetFloat32() const
-
41 {
- -
43 }
-
44 
-
45 std::string VoidValue::GetString() const
-
46 {
-
47  return "";
-
48 }
-
49 
-
50 const std::vector<Value*>& VoidValue::GetList() const
-
51 {
-
52  static const std::vector<Value*> empty;
-
53  return empty;
-
54 }
-
- - -
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:25
-
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:35
- -
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: VoidValue.cpp:18
-
Abstract class for values.
Definition: Value.h:10
-
const std::vector< Value * > & GetList() const
Returns an empty list.
Definition: VoidValue.cpp:50
-
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:30
- -
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: VoidValue.cpp:13
-
std::string GetString() const override
Returns an empty string.
Definition: VoidValue.cpp:45
-
DATA_TYPE
The different data types a paramater can be.
Definition: DataType.h:8
-
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:40
- -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/VoidValue_8h.html b/docs/VoidValue_8h.html deleted file mode 100644 index 992befa..0000000 --- a/docs/VoidValue_8h.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/VoidValue.h File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
VoidValue.h File Reference
-
-
-
#include "Value.h"
-
-Include dependency graph for VoidValue.h:
-
-
- - - - - - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - -
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  Hazelnp::VoidValue
 Specializations for void values. More...
 
- - - -

-Namespaces

 Hazelnp
 
-
- - - - diff --git a/docs/VoidValue_8h__dep__incl.map b/docs/VoidValue_8h__dep__incl.map deleted file mode 100644 index 0462c59..0000000 --- a/docs/VoidValue_8h__dep__incl.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/VoidValue_8h__dep__incl.md5 b/docs/VoidValue_8h__dep__incl.md5 deleted file mode 100644 index 9f3bf28..0000000 --- a/docs/VoidValue_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -c3697ea496d303a2f2ce807251f8e6c9 \ No newline at end of file diff --git a/docs/VoidValue_8h__dep__incl.png b/docs/VoidValue_8h__dep__incl.png deleted file mode 100644 index 50297b90134ef78c3c13a5fccd3ef23e251166c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7962 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 - - - - - - - diff --git a/docs/VoidValue_8h__incl.md5 b/docs/VoidValue_8h__incl.md5 deleted file mode 100644 index 7483fb9..0000000 --- a/docs/VoidValue_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -64107a9642900c322c5205ad2d9c1aed \ No newline at end of file diff --git a/docs/VoidValue_8h__incl.png b/docs/VoidValue_8h__incl.png deleted file mode 100644 index 1138ac2112c1f444cab9bb114b4ac1fdbea40381..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9442 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 P5=2o}O{P@pP0;@WTtYY` diff --git a/docs/VoidValue_8h_source.html b/docs/VoidValue_8h_source.html deleted file mode 100644 index 093b36c..0000000 --- a/docs/VoidValue_8h_source.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/VoidValue.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
VoidValue.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "Value.h"
-
3 
-
4 namespace Hazelnp
-
5 {
-
6  /** Specializations for void values. These house no value whatsoever, but only communicate information by merely existing.
-
7  */
-
8  class VoidValue : public Value
-
9  {
-
10  public:
-
11  VoidValue();
-
12  ~VoidValue() override {};
-
13 
-
14  //! Will return a deeopopy of this object
-
15  Value* Deepcopy() const override;
-
16 
-
17  //! Will return a string suitable for an std::ostream;
-
18  std::string GetAsOsString() const override;
-
19 
-
20  //! Throws HazelnuppValueNotConvertibleException
-
21  long long int GetInt64() const override;
-
22  //! Throws HazelnuppValueNotConvertibleException
-
23  int GetInt32() const override;
-
24 
-
25  //! Throws HazelnuppValueNotConvertibleException
-
26  long double GetFloat64() const override;
-
27  //! Throws HazelnuppValueNotConvertibleException
-
28  double GetFloat32() const override;
-
29 
-
30  //! Returns an empty string
-
31  std::string GetString() const override;
-
32 
-
33  //! Returns an empty list
-
34  const std::vector<Value*>& GetList() const;
-
35  };
-
36 }
-
- -
long long int GetInt64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:25
-
~VoidValue() override
Definition: VoidValue.h:12
-
long double GetFloat64() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:35
-
std::string GetAsOsString() const override
Will return a string suitable for an std::ostream;.
Definition: VoidValue.cpp:18
-
Abstract class for values.
Definition: Value.h:10
-
const std::vector< Value * > & GetList() const
Returns an empty list.
Definition: VoidValue.cpp:50
-
int GetInt32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:30
-
Value * Deepcopy() const override
Will return a deeopopy of this object.
Definition: VoidValue.cpp:13
-
Specializations for void values.
Definition: VoidValue.h:8
-
std::string GetString() const override
Returns an empty string.
Definition: VoidValue.cpp:45
-
double GetFloat32() const override
Throws HazelnuppValueNotConvertibleException.
Definition: VoidValue.cpp:40
- - - - - - diff --git a/docs/annotated.html b/docs/annotated.html deleted file mode 100644 index db68dad..0000000 --- a/docs/annotated.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class List
-
-
-
Here are the classes, structs, unions and interfaces with brief descriptions:
-
[detail level 123]
- - - - - - - - - - - - - - - - - - - -
 NHazelnp
 NInternal
 CStringToolsInternal helper class
 CCmdArgsInterfaceThe main class to interface with
 CFloatValueSpecializations for floating point values (uses long double)
 CHazelnuppConstraintExceptionGets thrown something bad happens because of parameter constraints
 CHazelnuppConstraintIncompatibleParametersGets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones
 CHazelnuppConstraintMissingValueGets thrown when a parameter constrained to be required is not provided, and has no default value set
 CHazelnuppConstraintTypeMissmatchGets thrown when a parameter is of a type that does not match the required type, and is not convertible to it
 CHazelnuppExceptionGeneric hazelnupp exception
 CHazelnuppInvalidKeyExceptionGets thrown when an non-existent key gets dereferenced
 CHazelnuppValueNotConvertibleExceptionGets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible
 CIntValueSpecializations for integer values (uses long long int)
 CListValueSpecializations for list values (uses std::vector<Value*>)
 CParamConstraint
 CParameter
 CStringValueSpecializations for string values (uses std::string)
 CValueAbstract class for values
 CVoidValueSpecializations for void values
-
-
- - - - diff --git a/docs/bc_s.png b/docs/bc_s.png deleted file mode 100644 index 3ad51f0cab44c8022914a5967a057a324fe30374..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 640 zcmV-`0)PF9P)o2p$K>4CEV!@D zF7Hk>mhj5hw$<)9PH)USZq!OFeUW;~M)Y`6aQ~Bnl^gL0i>oi{2_2+KM%UtH>Ld9- zf@>>gBoQIuhAGQiK9IfwK!QVlmNF$t*(_UFehxr_%9xTfjf6r+KgUz)ZU7SY>Bvo7 z@oAikW;VC<3;-Iv)8|+3Xrb75o*L`|fJVO`R?U;t=ro&M%mR>LfU&Kpad=1A%;#|c z67H%&y)PKlHj7rii%lxPZg}4N%nDmtbX$Xoqt@{nkyudr=&R4rDlVH zK=_B_{CQek=htsu_J-s!#@I+mHKQ~guq%7EyUuSA;mC&Q>l5@R=ZmGCT3t5z>2Y=Z z&Cpv_YOaR}Gu1@_$E$Tw2!Du5*hMQ>+w?Mgn11BOj2@1)3lSJAmhum!htu2N8F!mg zRilaK{gq#PWr=XD@6vEEpe5+SPFbb=Kf1GbQ=^-P-V$UA? a(f_E)H!3HEvS)PKZcuyC{kP61Pb7OfM40u}h^V;u8 zU|`fZz~FdvhI-D2CdC`3syf~W950`)vX9kbtoUv5ef2ZJ2i*VDer7ReD8|lS$!p<% zchfn?=KYTka~H|{@?80*=@ie)vH;P5nF}AXos^YXH1Eg1D4zopr0A>X? AY5)KL diff --git a/docs/classFloatValue-members.html b/docs/classFloatValue-members.html deleted file mode 100644 index 23dcde0..0000000 --- a/docs/classFloatValue-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
FloatValue Member List
-
-
- -

This is the complete list of members for FloatValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
Deepcopy() const overrideFloatValuevirtual
FloatValue(const long double &value)FloatValue
GetAsOsString() const overrideFloatValuevirtual
GetDataType() constValue
GetFloat32() const overrideFloatValuevirtual
GetFloat64() const overrideFloatValuevirtual
GetInt32() const overrideFloatValuevirtual
GetInt64() const overrideFloatValuevirtual
GetList() const overrideFloatValuevirtual
GetString() const overrideFloatValuevirtual
GetValue() constFloatValue
operator double() constFloatValue
operator long double() constFloatValue
typeValueprotected
Value(DATA_TYPE type)Valueprotected
~FloatValue() overrideFloatValueinline
~Value()Valueinlinevirtual
- - - - diff --git a/docs/classFloatValue.html b/docs/classFloatValue.html deleted file mode 100644 index 3774cd3..0000000 --- a/docs/classFloatValue.html +++ /dev/null @@ -1,578 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: FloatValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
FloatValue Class Reference
-
-
- -

Specializations for floating point values (uses long double) - More...

- -

#include <FloatValue.h>

-
-Inheritance diagram for FloatValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for FloatValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 FloatValue (const long double &value)
 
 ~FloatValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const long double & GetValue () const
 Will return the raw value. More...
 
 operator long double () const
 
 operator double () const
 
long long int GetInt64 () const override
 Will return the data as a long long int. More...
 
int GetInt32 () const override
 Will return the data as an int. More...
 
long double GetFloat64 () const override
 Will return the data as a long double. More...
 
double GetFloat32 () const override
 Will return the data as a double. More...
 
std::string GetString () const override
 Will return the data as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for floating point values (uses long double)

- -

Definition at line 7 of file FloatValue.h.

-

Constructor & Destructor Documentation

- -

◆ FloatValue()

- -
-
- - - - - - - - -
FloatValue::FloatValue (const long double & value)
-
- -

Definition at line 5 of file FloatValue.cpp.

-
6  :
- -
8  value { value }
-
9 {
-
10  return;
-
11 }
-
-
-
- -

◆ ~FloatValue()

- -
-
- - - - - -
- - - - - - - -
FloatValue::~FloatValue ()
-
-inlineoverride
-
- -

Definition at line 11 of file FloatValue.h.

-
11 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * FloatValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Value.

- -

Definition at line 13 of file FloatValue.cpp.

-
14 {
-
15  return new FloatValue(value);
-
16 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string FloatValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Value.

- -

Definition at line 18 of file FloatValue.cpp.

-
19 {
-
20  std::stringstream ss;
-
21  ss << "FloatValue: " << value;
-
22  return ss.str();
-
23 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double FloatValue::GetFloat32 () const
-
-overridevirtual
-
- -

Will return the data as a double.

- -

Implements Value.

- -

Definition at line 57 of file FloatValue.cpp.

-
58 {
-
59  return (double)value;
-
60 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double FloatValue::GetFloat64 () const
-
-overridevirtual
-
- -

Will return the data as a long double.

- -

Implements Value.

- -

Definition at line 52 of file FloatValue.cpp.

-
53 {
-
54  return value;
-
55 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int FloatValue::GetInt32 () const
-
-overridevirtual
-
- -

Will return the data as an int.

- -

Implements Value.

- -

Definition at line 47 of file FloatValue.cpp.

-
48 {
-
49  return (int)value;
-
50 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int FloatValue::GetInt64 () const
-
-overridevirtual
-
- -

Will return the data as a long long int.

- -

Implements Value.

- -

Definition at line 42 of file FloatValue.cpp.

-
43 {
-
44  return (long long int)value;
-
45 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & FloatValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 70 of file FloatValue.cpp.

-
71 {
- -
73 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string FloatValue::GetString () const
-
-overridevirtual
-
- -

Will return the data as a string.

- -

Implements Value.

- -

Definition at line 62 of file FloatValue.cpp.

-
63 {
-
64  std::stringstream ss;
-
65  ss << value;
-
66 
-
67  return ss.str();
-
68 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const long double & FloatValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 25 of file FloatValue.cpp.

-
26 {
-
27  return value;
-
28 }
-
-
-
- -

◆ operator double()

- -
-
- - - - - - - -
FloatValue::operator double () const
-
- -

Definition at line 35 of file FloatValue.cpp.

-
36 {
-
37  return (double)value;
-
38 }
-
-
-
- -

◆ operator long double()

- -
-
- - - - - - - -
FloatValue::operator long double () const
-
- -

Definition at line 30 of file FloatValue.cpp.

-
31 {
-
32  return value;
-
33 }
-
-
-
-
The documentation for this class was generated from the following files: -
- -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
-
Value(DATA_TYPE type)
Definition: Value.cpp:3
-
FloatValue(const long double &value)
Definition: FloatValue.cpp:5
- - - - diff --git a/docs/classFloatValue__coll__graph.map b/docs/classFloatValue__coll__graph.map deleted file mode 100644 index d1e1117..0000000 --- a/docs/classFloatValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classFloatValue__coll__graph.md5 b/docs/classFloatValue__coll__graph.md5 deleted file mode 100644 index ce67a40..0000000 --- a/docs/classFloatValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -61a7c55eab2b6c56d37885d5512dd079 \ No newline at end of file diff --git a/docs/classFloatValue__coll__graph.png b/docs/classFloatValue__coll__graph.png deleted file mode 100644 index 81a6e858d955e08fcb9743dd5af1b60ee8b4ab7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2346 zcmcIm`8(8IAO4m#ktI(gOCi-{-I@h`G^ZA@}-{;|_i5_|vv2v}W! zI)c#;>_NQy!SMmtnU`ST_OY>q0>A!k1(ecs0N|amf|@#Ga=+!>v^`9hh#IstC=;rWznWBhE=0Ldg0KZ0Q9tT2GVxJFV zc0hUd6vs}?Z?t!2bx|mk*SBY;D;*`zqfjVM&*^x=q$ahbwDij5%Yi+!UO#^PxECIN zv&U#h&xYf-EVhqu>ei0SDg z6BCUC_Z`ce6_1RMk0;!}KeV*j+uQr_;lsOY)AZsWnYwM+L?YbG%k8m&XB9u+j@GefT)%h<9KiJ_+kHA61*jHk2QSD(7nra z;V`GErj{1SI24V3Y)}YOURcL~RMnrp^-^_qaalq&jtYQjbbd3i6gJz{s8 z(Sn1QIbXE1yV??&$Is2pt#I31^hSm&z9Wcs%J5!Bs2 zA0Kz|`ksJd#{d(PD7!OB+C%T(*IG%v0({j6Z___rPkCQfR#uOqE5Om8ww8mBEb|dn zQ0Nn`1)tV!6xljEPNjD`M30MRFpEdOUb&J000$4wz^Qwrn!Z=}L#X-&mMsxZ8~_X! z^a?XX|Ke_@2bUc#cy#a(09Lu>=eA6y_1sFLtBDfa#wKS5hbtXf>M2Fmt?n>|7qYJH ztHXw(_R5A82d#a@6+|e(K86*~vQ*L*1@J1wqOV)=#%ysHNOrFKV=mE+VrOLvRu2(; z$Xhc8k2lV9d51jx*+w?(hL*CZqknc$Dk&>VhdcI*Uwy0B;xZw%Pb}B*9rDE|8)Z0# zIbS$DQOlVeZzbQ3SLuN`ub(_3_|u=yvQ&dNjsvf>kPz609Vk)NWu_*qIGv;X7m-uGT}I>5cFTJ1-)!mO%%2@`u_-1ANCi$CdRJ= z{bN;40kt^2CO*KG0Y`q>tuQw?$E!Tbsr1zAN+cCprszM@2YJ}Vz)`-}TkTF0f(dM+YwIz}*fH(aF9a>ix1OoXGh(@Eg zTVr`B&CU6S;fUU`v9TlI!G}b^kueYw8_iRAQQ8QrYiRiM=k8qqAfvw_#rZ9qoim`a^qT7_P+7g; zPn_iDulfX%g+ls1z|qO6KbB~WJ0u`*^*Xmm(@Ki1f)i={tSFyC`T^j{)2I6Y7K?@5 z*(fe5Dr#uZRabwe0#hvu$E=c<*pSopx$1(R4|J4ZbFb+Qox(Py1MG&;lXK&2@g*{Z8rdINuiD_oD*$oX1D=UHOG2Y?{?P)#NN=6=Ne7&OeS+MSMSckKpu;QadUI~5Lx9e_!KtNP*ZbQyYJW8{n2k|G#d7J;qr+;PX61^ ze~* - - - diff --git a/docs/classFloatValue__inherit__graph.md5 b/docs/classFloatValue__inherit__graph.md5 deleted file mode 100644 index ce67a40..0000000 --- a/docs/classFloatValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -61a7c55eab2b6c56d37885d5512dd079 \ No newline at end of file diff --git a/docs/classFloatValue__inherit__graph.png b/docs/classFloatValue__inherit__graph.png deleted file mode 100644 index 81a6e858d955e08fcb9743dd5af1b60ee8b4ab7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2346 zcmcIm`8(8IAO4m#ktI(gOCi-{-I@h`G^ZA@}-{;|_i5_|vv2v}W! zI)c#;>_NQy!SMmtnU`ST_OY>q0>A!k1(ecs0N|amf|@#Ga=+!>v^`9hh#IstC=;rWznWBhE=0Ldg0KZ0Q9tT2GVxJFV zc0hUd6vs}?Z?t!2bx|mk*SBY;D;*`zqfjVM&*^x=q$ahbwDij5%Yi+!UO#^PxECIN zv&U#h&xYf-EVhqu>ei0SDg z6BCUC_Z`ce6_1RMk0;!}KeV*j+uQr_;lsOY)AZsWnYwM+L?YbG%k8m&XB9u+j@GefT)%h<9KiJ_+kHA61*jHk2QSD(7nra z;V`GErj{1SI24V3Y)}YOURcL~RMnrp^-^_qaalq&jtYQjbbd3i6gJz{s8 z(Sn1QIbXE1yV??&$Is2pt#I31^hSm&z9Wcs%J5!Bs2 zA0Kz|`ksJd#{d(PD7!OB+C%T(*IG%v0({j6Z___rPkCQfR#uOqE5Om8ww8mBEb|dn zQ0Nn`1)tV!6xljEPNjD`M30MRFpEdOUb&J000$4wz^Qwrn!Z=}L#X-&mMsxZ8~_X! z^a?XX|Ke_@2bUc#cy#a(09Lu>=eA6y_1sFLtBDfa#wKS5hbtXf>M2Fmt?n>|7qYJH ztHXw(_R5A82d#a@6+|e(K86*~vQ*L*1@J1wqOV)=#%ysHNOrFKV=mE+VrOLvRu2(; z$Xhc8k2lV9d51jx*+w?(hL*CZqknc$Dk&>VhdcI*Uwy0B;xZw%Pb}B*9rDE|8)Z0# zIbS$DQOlVeZzbQ3SLuN`ub(_3_|u=yvQ&dNjsvf>kPz609Vk)NWu_*qIGv;X7m-uGT}I>5cFTJ1-)!mO%%2@`u_-1ANCi$CdRJ= z{bN;40kt^2CO*KG0Y`q>tuQw?$E!Tbsr1zAN+cCprszM@2YJ}Vz)`-}TkTF0f(dM+YwIz}*fH(aF9a>ix1OoXGh(@Eg zTVr`B&CU6S;fUU`v9TlI!G}b^kueYw8_iRAQQ8QrYiRiM=k8qqAfvw_#rZ9qoim`a^qT7_P+7g; zPn_iDulfX%g+ls1z|qO6KbB~WJ0u`*^*Xmm(@Ki1f)i={tSFyC`T^j{)2I6Y7K?@5 z*(fe5Dr#uZRabwe0#hvu$E=c<*pSopx$1(R4|J4ZbFb+Qox(Py1MG&;lXK&2@g*{Z8rdINuiD_oD*$oX1D=UHOG2Y?{?P)#NN=6=Ne7&OeS+MSMSckKpu;QadUI~5Lx9e_!KtNP*ZbQyYJW8{n2k|G#d7J;qr+;PX61^ ze~* - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::CmdArgsInterface Member List
-
-
- -

This is the complete list of members for Hazelnp::CmdArgsInterface, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClearAbbreviation(const std::string &abbrevation)Hazelnp::CmdArgsInterface
ClearAbbreviations()Hazelnp::CmdArgsInterface
ClearConstraint(const std::string &parameter)Hazelnp::CmdArgsInterface
ClearConstraints()Hazelnp::CmdArgsInterface
ClearDescription(const std::string &parameter)Hazelnp::CmdArgsInterface
ClearDescriptions()Hazelnp::CmdArgsInterface
CmdArgsInterface()Hazelnp::CmdArgsInterface
CmdArgsInterface(const int argc, const char *const *argv)Hazelnp::CmdArgsInterface
GenerateDocumentation() constHazelnp::CmdArgsInterface
GetAbbreviation(const std::string &abbrev) constHazelnp::CmdArgsInterface
GetBriefDescription()Hazelnp::CmdArgsInterface
GetCatchHelp() constHazelnp::CmdArgsInterface
GetConstraint(const std::string &parameter) constHazelnp::CmdArgsInterface
GetCrashOnFail() constHazelnp::CmdArgsInterface
GetDescription(const std::string &parameter) constHazelnp::CmdArgsInterface
GetExecutableName() constHazelnp::CmdArgsInterface
HasAbbreviation(const std::string &abbrev) constHazelnp::CmdArgsInterface
HasDescription(const std::string &parameter) constHazelnp::CmdArgsInterface
HasParam(const std::string &key) constHazelnp::CmdArgsInterface
operator[](const std::string &key) constHazelnp::CmdArgsInterface
Parse(const int argc, const char *const *argv)Hazelnp::CmdArgsInterface
RegisterAbbreviation(const std::string &abbrev, const std::string &target)Hazelnp::CmdArgsInterface
RegisterConstraint(const std::string &key, const ParamConstraint &constraint)Hazelnp::CmdArgsInterface
RegisterDescription(const std::string &parameter, const std::string &description)Hazelnp::CmdArgsInterface
SetBriefDescription(const std::string &description)Hazelnp::CmdArgsInterface
SetCatchHelp(bool catchHelp)Hazelnp::CmdArgsInterface
SetCrashOnFail(bool crashOnFail)Hazelnp::CmdArgsInterface
~CmdArgsInterface()Hazelnp::CmdArgsInterface
- - - - diff --git a/docs/classHazelnp_1_1CmdArgsInterface.html b/docs/classHazelnp_1_1CmdArgsInterface.html deleted file mode 100644 index bb60469..0000000 --- a/docs/classHazelnp_1_1CmdArgsInterface.html +++ /dev/null @@ -1,1206 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::CmdArgsInterface Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::CmdArgsInterface Class Reference
-
-
- -

The main class to interface with. - More...

- -

#include <CmdArgsInterface.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 CmdArgsInterface ()
 
 CmdArgsInterface (const int argc, const char *const *argv)
 
 ~CmdArgsInterface ()
 
void Parse (const int argc, const char *const *argv)
 Will parse command line arguments. More...
 
const std::string & GetExecutableName () const
 Will return argv[0], the name of the executable. More...
 
const Valueoperator[] (const std::string &key) const
 Will return the value given a key. More...
 
bool HasParam (const std::string &key) const
 Will check wether a parameter exists given a key, or not. More...
 
void RegisterAbbreviation (const std::string &abbrev, const std::string &target)
 Will register an abbreviation (like -f for –force) More...
 
const std::string & GetAbbreviation (const std::string &abbrev) const
 Will return the long form of an abbreviation (like –force for -f)
- Returns "" if no match is found. More...
 
bool HasAbbreviation (const std::string &abbrev) const
 Will check wether or not an abbreviation is registered. More...
 
void ClearAbbreviation (const std::string &abbrevation)
 Will delete the abbreviation for a given parameter. More...
 
void ClearAbbreviations ()
 Will delete all abbreviations. More...
 
void RegisterConstraint (const std::string &key, const ParamConstraint &constraint)
 Will register a constraint for a parameter. More...
 
ParamConstraint GetConstraint (const std::string &parameter) const
 Will return the constraint information for a specific parameter. More...
 
void ClearConstraint (const std::string &parameter)
 Will the constraint of a specific parameter. More...
 
void ClearConstraints ()
 Will delete all constraints. More...
 
void SetCrashOnFail (bool crashOnFail)
 Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not. More...
 
bool GetCrashOnFail () const
 Gets whether the application crashes on an exception whilst parsing, and prints to stderr. More...
 
void SetCatchHelp (bool catchHelp)
 Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not. More...
 
bool GetCatchHelp () const
 Retruns whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not. More...
 
void SetBriefDescription (const std::string &description)
 Sets a brief description of the application to be automatically added to the documentation. More...
 
const std::string & GetBriefDescription ()
 Returns the brief description of the application to be automatically added to the documentation. More...
 
void RegisterDescription (const std::string &parameter, const std::string &description)
 Willl register a short description for a parameter. More...
 
const std::string & GetDescription (const std::string &parameter) const
 Will return a short description for a parameter, if it exists. More...
 
bool HasDescription (const std::string &parameter) const
 Returns whether or not a given parameter has a registered description. More...
 
void ClearDescription (const std::string &parameter)
 Will delete the description of a parameter if it exists. More...
 
void ClearDescriptions ()
 Will delete all parameter descriptions. More...
 
std::string GenerateDocumentation () const
 Will generate a text-based documentation suited to show the user, for example on –help. More...
 
-

Detailed Description

-

The main class to interface with.

- -

Definition at line 13 of file CmdArgsInterface.h.

-

Constructor & Destructor Documentation

- -

◆ CmdArgsInterface() [1/2]

- -
-
- - - - - - - -
CmdArgsInterface::CmdArgsInterface ()
-
- -

Definition at line 15 of file CmdArgsInterface.cpp.

-
16 {
-
17  return;
-
18 }
-
-
-
- -

◆ CmdArgsInterface() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
CmdArgsInterface::CmdArgsInterface (const int argc,
const char *const * argv 
)
-
- -

Definition at line 20 of file CmdArgsInterface.cpp.

-
21 {
-
22  Parse(argc, argv);
-
23  return;
-
24 }
-
-
-
- -

◆ ~CmdArgsInterface()

- -
-
- - - - - - - -
CmdArgsInterface::~CmdArgsInterface ()
-
- -

Definition at line 26 of file CmdArgsInterface.cpp.

-
27 {
-
28  for (auto& it : parameters)
-
29  delete it.second;
-
30 
-
31  parameters.clear();
-
32 
-
33  return;
-
34 }
-
-
-
-

Member Function Documentation

- -

◆ ClearAbbreviation()

- -
-
- - - - - - - - -
void CmdArgsInterface::ClearAbbreviation (const std::string & abbrevation)
-
- -

Will delete the abbreviation for a given parameter.

-


- IMPORTANT: This parameter is the abbreviation! Not the long form!

- -

Definition at line 651 of file CmdArgsInterface.cpp.

-
652 {
-
653  parameterAbreviations.erase(abbrevation);
-
654  return;
-
655 }
-
-
-
- -

◆ ClearAbbreviations()

- -
-
- - - - - - - -
void CmdArgsInterface::ClearAbbreviations ()
-
- -

Will delete all abbreviations.

- -

Definition at line 657 of file CmdArgsInterface.cpp.

-
658 {
-
659  parameterAbreviations.clear();
-
660  return;
-
661 }
-
-
-
- -

◆ ClearConstraint()

- -
-
- - - - - - - - -
void CmdArgsInterface::ClearConstraint (const std::string & parameter)
-
- -

Will the constraint of a specific parameter.

- -

Definition at line 612 of file CmdArgsInterface.cpp.

-
613 {
-
614  parameterConstraints.erase(parameter);
-
615  return;
-
616 }
-
-
-
- -

◆ ClearConstraints()

- -
-
- - - - - - - -
void CmdArgsInterface::ClearConstraints ()
-
- -

Will delete all constraints.

- -

Definition at line 670 of file CmdArgsInterface.cpp.

-
671 {
-
672  parameterConstraints.clear();
-
673  return;
-
674 }
-
-
-
- -

◆ ClearDescription()

- -
-
- - - - - - - - -
void CmdArgsInterface::ClearDescription (const std::string & parameter)
-
- -

Will delete the description of a parameter if it exists.

- -

Definition at line 412 of file CmdArgsInterface.cpp.

-
413 {
-
414  // This will just do nothing if the entry does not exist
-
415  parameterDescriptions.erase(parameter);
-
416  return;
-
417 }
-
-
-
- -

◆ ClearDescriptions()

- -
-
- - - - - - - -
void Hazelnp::CmdArgsInterface::ClearDescriptions ()
-
- -

Will delete all parameter descriptions.

- -

Definition at line 419 of file CmdArgsInterface.cpp.

-
420 {
-
421  parameterDescriptions.clear();
-
422  return;
-
423 }
-
-
-
- -

◆ GenerateDocumentation()

- -
-
- - - - - - - -
std::string CmdArgsInterface::GenerateDocumentation () const
-
- -

Will generate a text-based documentation suited to show the user, for example on –help.

- -

Definition at line 425 of file CmdArgsInterface.cpp.

-
426 {
-
427  std::stringstream ss;
-
428 
-
429  // Add brief, if available
-
430  if (briefDescription.length() > 0)
-
431  ss << briefDescription << std::endl;
-
432 
-
433  // Collect parameter information
-
434  struct ParamDocEntry
-
435  {
-
436  std::string abbreviation;
-
437  std::string description;
-
438  std::string type;
-
439  bool required = false;
-
440  bool typeIsForced = false;
-
441  std::string defaultVal;
-
442  std::string incompatibilities;
-
443  };
-
444  std::unordered_map<std::string, ParamDocEntry> paramInfos;
-
445 
-
446  // Collect descriptions
-
447  for (const auto& it : parameterDescriptions)
-
448  {
-
449  // Do we already have that param in the paramInfo set?
-
450  if (paramInfos.find(it.first) == paramInfos.end())
-
451  // No? Create it.
-
452  paramInfos[it.first] = ParamDocEntry();
-
453 
-
454  paramInfos[it.first].description = it.second;
-
455  }
-
456 
-
457  // Collect abbreviations
-
458  // first value is abbreviation, second is long form
-
459  for (const auto& it : parameterAbreviations)
-
460  {
-
461  // Do we already have that param in the paramInfo set?
-
462  if (paramInfos.find(it.second) == paramInfos.end())
-
463  // No? Create it.
-
464  paramInfos[it.second] = ParamDocEntry();
-
465 
-
466  paramInfos[it.second].abbreviation = it.first;
-
467  }
-
468 
-
469  // Collect constraints
-
470  for (const auto& it : parameterConstraints)
-
471  {
-
472  // Do we already have that param in the paramInfo set?
-
473  if (paramInfos.find(it.first) == paramInfos.end())
-
474  // No? Create it.
-
475  paramInfos[it.first] = ParamDocEntry();
-
476 
-
477  ParamDocEntry& cached = paramInfos[it.first];
-
478  cached.required = it.second.required;
-
479  cached.typeIsForced = it.second.constrainType;
-
480  cached.type = DataTypeToString(it.second.requiredType);
-
481 
-
482  // Build default-value string
-
483  std::stringstream vec2str_ss;
-
484  for (const std::string& s : it.second.defaultValue)
-
485  {
-
486  vec2str_ss << '\'' << s << '\'';
-
487 
-
488  // Add a space if we are not at the last entry
-
489  if ((void*)&s != (void*)&it.second.defaultValue.back())
-
490  vec2str_ss << " ";
-
491  }
-
492  cached.defaultVal = vec2str_ss.str();
-
493 
-
494 
-
495  // Build incompatibilities string
-
496  vec2str_ss.str("");
-
497  for (const std::string& s : it.second.incompatibleParameters)
-
498  {
-
499  vec2str_ss << s;
-
500 
-
501  // Add a comma-space if we are not at the last entry
-
502  if ((void*)&s != (void*)&it.second.incompatibleParameters.back())
-
503  vec2str_ss << ", ";
-
504  }
-
505  cached.incompatibilities = vec2str_ss.str();
-
506  }
-
507 
-
508  // Now generate the documentation body
-
509  if (paramInfos.size() > 0)
-
510  {
-
511  ss << std::endl
-
512  << "==== AVAILABLE PARAMETERS ===="
-
513  << std::endl << std::endl;
-
514 
-
515  std::size_t counter = 0;
-
516  for (const auto& it : paramInfos)
-
517  {
-
518  const ParamDocEntry& pde = it.second;
-
519 
-
520  // Put name
-
521  ss << it.first << " ";
-
522 
-
523  // Put abbreviation
-
524  if (pde.abbreviation.length() > 0)
-
525  ss << pde.abbreviation << " ";
-
526 
-
527  // Put type
-
528  if (pde.typeIsForced)
-
529  ss << pde.type << " ";
-
530 
-
531  // Put default value
-
532  if (pde.defaultVal.length() > 0)
-
533  ss << "default=[" << pde.defaultVal << "] ";
-
534 
-
535  // Put incompatibilities
-
536  if (pde.incompatibilities.length() > 0)
-
537  ss << "incompatibilities=[" << pde.incompatibilities << "] ";
-
538 
-
539  // Put required tag, but only if no default value
-
540  if ((pde.required) && (pde.defaultVal.length() == 0))
-
541  ss << "[[REQUIRED]] ";
-
542 
-
543  // Put brief description
-
544  if (pde.description.length() > 0)
-
545  ss << pde.description;
-
546 
-
547  // Omit linebreaks when we're on the last element
-
548  if (counter < paramInfos.size()-1)
-
549  ss << std::endl << std::endl;
-
550 
-
551  counter++;
-
552  }
-
553  }
-
554 
-
555  return ss.str();
-
556 }
-
-
-
- -

◆ GetAbbreviation()

- -
-
- - - - - - - - -
const std::string & CmdArgsInterface::GetAbbreviation (const std::string & abbrev) const
-
- -

Will return the long form of an abbreviation (like –force for -f)
- Returns "" if no match is found.

- -

Definition at line 638 of file CmdArgsInterface.cpp.

-
639 {
-
640  if (!HasAbbreviation(abbrev))
- -
642 
-
643  return parameterAbreviations.find(abbrev)->second;
-
644 }
-
-
-
- -

◆ GetBriefDescription()

- -
-
- - - - - - - -
const std::string & CmdArgsInterface::GetBriefDescription ()
-
- -

Returns the brief description of the application to be automatically added to the documentation.

- -

Definition at line 385 of file CmdArgsInterface.cpp.

-
386 {
-
387  return briefDescription;
-
388 }
-
-
-
- -

◆ GetCatchHelp()

- -
-
- - - - - - - -
bool CmdArgsInterface::GetCatchHelp () const
-
- -

Retruns whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not.

- -

Definition at line 374 of file CmdArgsInterface.cpp.

-
375 {
-
376  return catchHelp;
-
377 }
-
-
-
- -

◆ GetConstraint()

- -
-
- - - - - - - - -
ParamConstraint CmdArgsInterface::GetConstraint (const std::string & parameter) const
-
- -

Will return the constraint information for a specific parameter.

- -

Definition at line 607 of file CmdArgsInterface.cpp.

-
608 {
-
609  return parameterConstraints.find(parameter)->second;
-
610 }
-
-
-
- -

◆ GetCrashOnFail()

- -
-
- - - - - - - -
bool CmdArgsInterface::GetCrashOnFail () const
-
- -

Gets whether the application crashes on an exception whilst parsing, and prints to stderr.

- -

Definition at line 363 of file CmdArgsInterface.cpp.

-
364 {
-
365  return crashOnFail;
-
366 }
-
-
-
- -

◆ GetDescription()

- -
-
- - - - - - - - -
const std::string & Hazelnp::CmdArgsInterface::GetDescription (const std::string & parameter) const
-
- -

Will return a short description for a parameter, if it exists.

-


- Empty string if it does not exist.

- -

Definition at line 396 of file CmdArgsInterface.cpp.

-
397 {
-
398  // Do we already have a description for this parameter?
-
399  if (!HasDescription(parameter))
-
400  // No? Then return ""
- -
402 
-
403  // We do? Then return it
-
404  return parameterDescriptions.find(parameter)->second;
-
405 }
-
-
-
- -

◆ GetExecutableName()

- -
-
- - - - - - - -
const std::string & CmdArgsInterface::GetExecutableName () const
-
- -

Will return argv[0], the name of the executable.

- -

Definition at line 618 of file CmdArgsInterface.cpp.

-
619 {
-
620  return executableName;
-
621 }
-
-
-
- -

◆ HasAbbreviation()

- -
-
- - - - - - - - -
bool CmdArgsInterface::HasAbbreviation (const std::string & abbrev) const
-
- -

Will check wether or not an abbreviation is registered.

- -

Definition at line 646 of file CmdArgsInterface.cpp.

-
647 {
-
648  return parameterAbreviations.find(abbrev) != parameterAbreviations.end();
-
649 }
-
-
-
- -

◆ HasDescription()

- -
-
- - - - - - - - -
bool CmdArgsInterface::HasDescription (const std::string & parameter) const
-
- -

Returns whether or not a given parameter has a registered description.

- -

Definition at line 407 of file CmdArgsInterface.cpp.

-
408 {
-
409  return parameterDescriptions.find(parameter) != parameterDescriptions.end();
-
410 }
-
-
-
- -

◆ HasParam()

- -
-
- - - - - - - - -
bool CmdArgsInterface::HasParam (const std::string & key) const
-
- -

Will check wether a parameter exists given a key, or not.

- -

Definition at line 199 of file CmdArgsInterface.cpp.

-
200 {
-
201  return parameters.find(key) != parameters.end();
-
202 }
-
-
-
- -

◆ operator[]()

- -
-
- - - - - - - - -
const Value & CmdArgsInterface::operator[] (const std::string & key) const
-
- -

Will return the value given a key.

- -

Definition at line 623 of file CmdArgsInterface.cpp.

-
624 {
-
625  // Throw exception if param is unknown
-
626  if (!HasParam(key))
- -
628 
-
629  return *parameters.find(key)->second->GetValue();
-
630 }
-
-
-
- -

◆ Parse()

- -
-
- - - - - - - - - - - - - - - - - - -
void CmdArgsInterface::Parse (const int argc,
const char *const * argv 
)
-
- -

Will parse command line arguments.

- -

Definition at line 36 of file CmdArgsInterface.cpp.

-
37 {
-
38  try
-
39  {
-
40  // Populate raw arguments
-
41  PopulateRawArgs(argc, argv);
-
42 
-
43  // Expand abbreviations
-
44  ExpandAbbreviations();
-
45 
-
46  executableName = std::string(rawArgs[0]);
-
47 
-
48  // Read and parse all parameters
-
49  std::size_t i = 1;
-
50  while (i < rawArgs.size())
-
51  {
-
52  if ((rawArgs[i].length() > 2) && (rawArgs[i].substr(0, 2) == "--"))
-
53  {
-
54  Parameter* param = nullptr;
-
55  i = ParseNextParameter(i, param);
-
56 
-
57  parameters.insert(std::pair<std::string, Parameter*>(param->Key(), param));
-
58  }
-
59  else
-
60  i++;
-
61  }
-
62 
-
63  // Apply constraints such as default values, and required parameters.
-
64  // Types have already been enforced.
-
65  // Dont apply constraints when we are just printind the param docs
-
66  if ((!catchHelp) || (!HasParam("--help")))
-
67  ApplyConstraints();
-
68  }
- -
70  {
-
71  if (crashOnFail)
-
72  {
-
73  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
74  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
75  quick_exit(-1000);
-
76  }
-
77  else
-
78  throw exc; // yeet
-
79  }
-
80  catch (const HazelnuppConstraintMissingValue& exc)
-
81  {
-
82  if (crashOnFail)
-
83  {
-
84  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
85  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
86  quick_exit(-1001);
-
87  }
-
88  else
-
89  throw exc; // yeet
-
90  }
-
91  catch (const HazelnuppConstraintTypeMissmatch& exc)
-
92  {
-
93  if (crashOnFail)
-
94  {
-
95  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
96  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
97  quick_exit(-1002);
-
98  }
-
99  else
-
100  throw exc; // yeet
-
101  }
-
102  catch (const HazelnuppConstraintException& exc)
-
103  {
-
104  if (crashOnFail)
-
105  {
-
106  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
107  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
108  quick_exit(-1003);
-
109  }
-
110  else
-
111  throw exc; // yeet
-
112  }
-
113  catch (const HazelnuppException& exc)
-
114  {
-
115  if (crashOnFail)
-
116  {
-
117  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
118  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
119  quick_exit(-1004);
-
120  }
-
121  else
-
122  throw exc; // yeet
-
123  }
-
124 
-
125  // Catch --help parameter
-
126  if ((catchHelp) && (HasParam("--help")))
-
127  {
-
128  std::cout << GenerateDocumentation() << std::endl;
-
129  quick_exit(0);
-
130  }
-
131 
-
132  return;
-
133 }
-
-
-
- -

◆ RegisterAbbreviation()

- -
-
- - - - - - - - - - - - - - - - - - -
void CmdArgsInterface::RegisterAbbreviation (const std::string & abbrev,
const std::string & target 
)
-
- -

Will register an abbreviation (like -f for –force)

- -

Definition at line 632 of file CmdArgsInterface.cpp.

-
633 {
-
634  parameterAbreviations.insert(std::pair<std::string, std::string>(abbrev, target));
-
635  return;
-
636 }
-
-
-
- -

◆ RegisterConstraint()

- -
-
- - - - - - - - - - - - - - - - - - -
void CmdArgsInterface::RegisterConstraint (const std::string & key,
const ParamConstraintconstraint 
)
-
- -

Will register a constraint for a parameter.

-

IMPORTANT: Any parameter can only have ONE constraint. Applying a new one will overwrite the old one! Construct the ParamConstraint struct yourself to combine Require, TypeSafety and Incompatibilities! You can also use the ParamConstraint constructor!

- -

Definition at line 663 of file CmdArgsInterface.cpp.

-
664 {
-
665  // Magic syntax, wooo
-
666  (parameterConstraints[key] = constraint).key = key;
-
667  return;
-
668 }
-
-
-
- -

◆ RegisterDescription()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnp::CmdArgsInterface::RegisterDescription (const std::string & parameter,
const std::string & description 
)
-
- -

Willl register a short description for a parameter.

-


- Will overwrite existing descriptions for that parameter.

- -

Definition at line 390 of file CmdArgsInterface.cpp.

-
391 {
-
392  parameterDescriptions[parameter] = description;
-
393  return;
-
394 }
-
-
-
- -

◆ SetBriefDescription()

- -
-
- - - - - - - - -
void CmdArgsInterface::SetBriefDescription (const std::string & description)
-
- -

Sets a brief description of the application to be automatically added to the documentation.

- -

Definition at line 379 of file CmdArgsInterface.cpp.

-
380 {
-
381  briefDescription = description;
-
382  return;
-
383 }
-
-
-
- -

◆ SetCatchHelp()

- -
-
- - - - - - - - -
void CmdArgsInterface::SetCatchHelp (bool catchHelp)
-
- -

Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not.

- -

Definition at line 368 of file CmdArgsInterface.cpp.

-
369 {
-
370  this->catchHelp = catchHelp;
-
371  return;
-
372 }
-
-
-
- -

◆ SetCrashOnFail()

- -
-
- - - - - - - - -
void CmdArgsInterface::SetCrashOnFail (bool crashOnFail)
-
- -

Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not.

- -

Definition at line 676 of file CmdArgsInterface.cpp.

-
677 {
-
678  this->crashOnFail = crashOnFail;
-
679  return;
-
680 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied along...
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
-
Gets thrown when an non-existent key gets dereferenced.
-
const std::string & What() const
Will return an error message.
-
Gets thrown something bad happens because of parameter constraints.
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
- -
static const std::string g_emptyString
The only purpose of this is to provide the ability to return an empty string as an error for std::str...
Definition: Placeholders.h:9
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
-
Generic hazelnupp exception.
-
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
-
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
-
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
- - - - diff --git a/docs/classHazelnp_1_1FloatValue-members.html b/docs/classHazelnp_1_1FloatValue-members.html deleted file mode 100644 index 38460b1..0000000 --- a/docs/classHazelnp_1_1FloatValue-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::FloatValue Member List
-
-
- -

This is the complete list of members for Hazelnp::FloatValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
Deepcopy() const overrideHazelnp::FloatValuevirtual
FloatValue(const long double &value)Hazelnp::FloatValue
GetAsOsString() const overrideHazelnp::FloatValuevirtual
GetDataType() constHazelnp::Value
GetFloat32() const overrideHazelnp::FloatValuevirtual
GetFloat64() const overrideHazelnp::FloatValuevirtual
GetInt32() const overrideHazelnp::FloatValuevirtual
GetInt64() const overrideHazelnp::FloatValuevirtual
GetList() const overrideHazelnp::FloatValuevirtual
GetString() const overrideHazelnp::FloatValuevirtual
GetValue() constHazelnp::FloatValue
operator double() constHazelnp::FloatValue
operator long double() constHazelnp::FloatValue
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
~FloatValue() overrideHazelnp::FloatValueinline
~Value()Hazelnp::Valueinlinevirtual
- - - - diff --git a/docs/classHazelnp_1_1FloatValue.html b/docs/classHazelnp_1_1FloatValue.html deleted file mode 100644 index b1a445d..0000000 --- a/docs/classHazelnp_1_1FloatValue.html +++ /dev/null @@ -1,582 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::FloatValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::FloatValue Class Reference
-
-
- -

Specializations for floating point values (uses long double) - More...

- -

#include <FloatValue.h>

-
-Inheritance diagram for Hazelnp::FloatValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for Hazelnp::FloatValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 FloatValue (const long double &value)
 
 ~FloatValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const long double & GetValue () const
 Will return the raw value. More...
 
 operator long double () const
 
 operator double () const
 
long long int GetInt64 () const override
 Will return the data as a long long int. More...
 
int GetInt32 () const override
 Will return the data as an int. More...
 
long double GetFloat64 () const override
 Will return the data as a long double. More...
 
double GetFloat32 () const override
 Will return the data as a double. More...
 
std::string GetString () const override
 Will return the data as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Hazelnp::Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Hazelnp::Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Hazelnp::Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for floating point values (uses long double)

- -

Definition at line 9 of file FloatValue.h.

-

Constructor & Destructor Documentation

- -

◆ FloatValue()

- -
-
- - - - - - - - -
FloatValue::FloatValue (const long double & value)
-
- -

Definition at line 7 of file FloatValue.cpp.

-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
-
-
- -

◆ ~FloatValue()

- -
-
- - - - - -
- - - - - - - -
Hazelnp::FloatValue::~FloatValue ()
-
-inlineoverride
-
- -

Definition at line 13 of file FloatValue.h.

-
13 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * FloatValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Hazelnp::Value.

- -

Definition at line 15 of file FloatValue.cpp.

-
16 {
-
17  return new FloatValue(value);
-
18 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string FloatValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Hazelnp::Value.

- -

Definition at line 20 of file FloatValue.cpp.

-
21 {
-
22  std::stringstream ss;
-
23  ss << "FloatValue: " << value;
-
24  return ss.str();
-
25 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double FloatValue::GetFloat32 () const
-
-overridevirtual
-
- -

Will return the data as a double.

- -

Implements Hazelnp::Value.

- -

Definition at line 59 of file FloatValue.cpp.

-
60 {
-
61  return (double)value;
-
62 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double FloatValue::GetFloat64 () const
-
-overridevirtual
-
- -

Will return the data as a long double.

- -

Implements Hazelnp::Value.

- -

Definition at line 54 of file FloatValue.cpp.

-
55 {
-
56  return value;
-
57 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int FloatValue::GetInt32 () const
-
-overridevirtual
-
- -

Will return the data as an int.

- -

Implements Hazelnp::Value.

- -

Definition at line 49 of file FloatValue.cpp.

-
50 {
-
51  return (int)value;
-
52 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int FloatValue::GetInt64 () const
-
-overridevirtual
-
- -

Will return the data as a long long int.

- -

Implements Hazelnp::Value.

- -

Definition at line 44 of file FloatValue.cpp.

-
45 {
-
46  return (long long int)value;
-
47 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & FloatValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 72 of file FloatValue.cpp.

-
73 {
- -
75 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string FloatValue::GetString () const
-
-overridevirtual
-
- -

Will return the data as a string.

- -

Implements Hazelnp::Value.

- -

Definition at line 64 of file FloatValue.cpp.

-
65 {
-
66  std::stringstream ss;
-
67  ss << value;
-
68 
-
69  return ss.str();
-
70 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const long double & FloatValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 27 of file FloatValue.cpp.

-
28 {
-
29  return value;
-
30 }
-
-
-
- -

◆ operator double()

- -
-
- - - - - - - -
FloatValue::operator double () const
-
- -

Definition at line 37 of file FloatValue.cpp.

-
38 {
-
39  return (double)value;
-
40 }
-
-
-
- -

◆ operator long double()

- -
-
- - - - - - - -
FloatValue::operator long double () const
-
- -

Definition at line 32 of file FloatValue.cpp.

-
33 {
-
34  return value;
-
35 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Value(DATA_TYPE type)
Definition: Value.cpp:5
- -
FloatValue(const long double &value)
Definition: FloatValue.cpp:7
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/classHazelnp_1_1FloatValue__coll__graph.map b/docs/classHazelnp_1_1FloatValue__coll__graph.map deleted file mode 100644 index e7551d3..0000000 --- a/docs/classHazelnp_1_1FloatValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1FloatValue__coll__graph.md5 b/docs/classHazelnp_1_1FloatValue__coll__graph.md5 deleted file mode 100644 index 0638943..0000000 --- a/docs/classHazelnp_1_1FloatValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -e607f145b9f1053a2906e15f99f0542b \ No newline at end of file diff --git a/docs/classHazelnp_1_1FloatValue__coll__graph.png b/docs/classHazelnp_1_1FloatValue__coll__graph.png deleted file mode 100644 index 7f0b564a2ab1975a2bb0866496981abbe4a00277..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3631 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 I)^Uyd7r - - - diff --git a/docs/classHazelnp_1_1FloatValue__inherit__graph.md5 b/docs/classHazelnp_1_1FloatValue__inherit__graph.md5 deleted file mode 100644 index 0638943..0000000 --- a/docs/classHazelnp_1_1FloatValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -e607f145b9f1053a2906e15f99f0542b \ No newline at end of file diff --git a/docs/classHazelnp_1_1FloatValue__inherit__graph.png b/docs/classHazelnp_1_1FloatValue__inherit__graph.png deleted file mode 100644 index 7f0b564a2ab1975a2bb0866496981abbe4a00277..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3631 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 I)^Uyd7r - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::Hazelnupp Member List
-
-
- -

This is the complete list of members for Hazelnp::Hazelnupp, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClearAbbreviation(const std::string &abbrevation)Hazelnp::Hazelnupp
ClearAbbreviations()Hazelnp::Hazelnupp
ClearConstraint(const std::string &parameter)Hazelnp::Hazelnupp
ClearConstraints()Hazelnp::Hazelnupp
ClearDescription(const std::string &parameter)Hazelnp::Hazelnupp
ClearDescriptions()Hazelnp::Hazelnupp
GenerateDocumentation() constHazelnp::Hazelnupp
GetAbbreviation(const std::string &abbrev) constHazelnp::Hazelnupp
GetBriefDescription()Hazelnp::Hazelnupp
GetCatchHelp() constHazelnp::Hazelnupp
GetConstraint(const std::string &parameter) constHazelnp::Hazelnupp
GetCrashOnFail() constHazelnp::Hazelnupp
GetDescription(const std::string &parameter) constHazelnp::Hazelnupp
GetExecutableName() constHazelnp::Hazelnupp
HasAbbreviation(const std::string &abbrev) constHazelnp::Hazelnupp
HasDescription(const std::string &parameter) constHazelnp::Hazelnupp
HasParam(const std::string &key) constHazelnp::Hazelnupp
Hazelnupp()Hazelnp::Hazelnupp
Hazelnupp(const int argc, const char *const *argv)Hazelnp::Hazelnupp
operator[](const std::string &key) constHazelnp::Hazelnupp
Parse(const int argc, const char *const *argv)Hazelnp::Hazelnupp
RegisterAbbreviation(const std::string &abbrev, const std::string &target)Hazelnp::Hazelnupp
RegisterConstraint(const std::string &key, const ParamConstraint &constraint)Hazelnp::Hazelnupp
RegisterDescription(const std::string &parameter, const std::string &description)Hazelnp::Hazelnupp
SetBriefDescription(const std::string &description)Hazelnp::Hazelnupp
SetCatchHelp(bool catchHelp)Hazelnp::Hazelnupp
SetCrashOnFail(bool crashOnFail)Hazelnp::Hazelnupp
~Hazelnupp()Hazelnp::Hazelnupp
- - - - diff --git a/docs/classHazelnp_1_1Hazelnupp.html b/docs/classHazelnp_1_1Hazelnupp.html deleted file mode 100644 index 52ee004..0000000 --- a/docs/classHazelnp_1_1Hazelnupp.html +++ /dev/null @@ -1,1150 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Hazelnupp Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::Hazelnupp Class Reference
-
-
- -

The main class to interface with. - More...

- -

#include <Hazelnupp.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 Hazelnupp ()
 
 Hazelnupp (const int argc, const char *const *argv)
 
 ~Hazelnupp ()
 
void Parse (const int argc, const char *const *argv)
 Will parse command line arguments. More...
 
const std::string & GetExecutableName () const
 Will return argv[0], the name of the executable. More...
 
const Valueoperator[] (const std::string &key) const
 Will return the value given a key. More...
 
bool HasParam (const std::string &key) const
 Will check wether a parameter exists given a key, or not. More...
 
void RegisterAbbreviation (const std::string &abbrev, const std::string &target)
 Will register an abbreviation (like -f for –force) More...
 
const std::string & GetAbbreviation (const std::string &abbrev) const
 Will return the long form of an abbreviation (like –force for -f)
- Returns "" if no match is found. More...
 
bool HasAbbreviation (const std::string &abbrev) const
 Will check wether or not an abbreviation is registered. More...
 
void ClearAbbreviation (const std::string &abbrevation)
 Will delete the abbreviation for a given parameter. More...
 
void ClearAbbreviations ()
 Will delete all abbreviations. More...
 
void RegisterConstraint (const std::string &key, const ParamConstraint &constraint)
 Will register a constraint for a parameter. More...
 
ParamConstraint GetConstraint (const std::string &parameter) const
 Will return the constraint information for a specific parameter. More...
 
void ClearConstraint (const std::string &parameter)
 Will the constraint of a specific parameter. More...
 
void ClearConstraints ()
 Will delete all constraints. More...
 
void SetCrashOnFail (bool crashOnFail)
 Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not. More...
 
bool GetCrashOnFail () const
 Gets whether the application crashes on an exception whilst parsing, and prints to stderr. More...
 
void SetCatchHelp (bool catchHelp)
 Sets whether the Hazelnupp should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not. More...
 
bool GetCatchHelp () const
 Retruns whether the Hazelnupp should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not. More...
 
void SetBriefDescription (const std::string &description)
 Sets a brief description of the application to be automatically added to the documentation. More...
 
const std::string & GetBriefDescription ()
 Returns the brief description of the application to be automatically added to the documentation. More...
 
void RegisterDescription (const std::string &parameter, const std::string &description)
 Willl register a short description for a parameter. More...
 
const std::string & GetDescription (const std::string &parameter) const
 Will return a short description for a parameter, if it exists. More...
 
bool HasDescription (const std::string &parameter) const
 Returns whether or not a given parameter has a registered description. More...
 
void ClearDescription (const std::string &parameter)
 Will delete the description of a parameter if it exists. More...
 
void ClearDescriptions ()
 Will delete all parameter descriptions. More...
 
std::string GenerateDocumentation () const
 Will generate a text-based documentation suited to show the user, for example on –help. More...
 
-

Detailed Description

-

The main class to interface with.

- -

Definition at line 11 of file Hazelnupp.h.

-

Constructor & Destructor Documentation

- -

◆ Hazelnupp() [1/2]

- -
-
- - - - - - - -
Hazelnupp::Hazelnupp ()
-
- -

Definition at line 15 of file Hazelnupp.cpp.

-
16 {
-
17  return;
-
18 }
-
-
-
- -

◆ Hazelnupp() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
Hazelnupp::Hazelnupp (const int argc,
const char *const * argv 
)
-
- -

Definition at line 20 of file Hazelnupp.cpp.

-
21 {
-
22  Parse(argc, argv);
-
23  return;
-
24 }
-
-
-
- -

◆ ~Hazelnupp()

- -
-
- - - - - - - -
Hazelnupp::~Hazelnupp ()
-
- -

Definition at line 26 of file Hazelnupp.cpp.

-
27 {
-
28  for (auto& it : parameters)
-
29  delete it.second;
-
30 
-
31  parameters.clear();
-
32 
-
33  return;
-
34 }
-
-
-
-

Member Function Documentation

- -

◆ ClearAbbreviation()

- -
-
- - - - - - - - -
void Hazelnupp::ClearAbbreviation (const std::string & abbrevation)
-
- -

Will delete the abbreviation for a given parameter.

-


- IMPORTANT: This parameter is the abbreviation! Not the long form!

- -

Definition at line 586 of file Hazelnupp.cpp.

-
587 {
-
588  parameterAbreviations.erase(abbrevation);
-
589  return;
-
590 }
-
-
-
- -

◆ ClearAbbreviations()

- -
-
- - - - - - - -
void Hazelnupp::ClearAbbreviations ()
-
- -

Will delete all abbreviations.

- -

Definition at line 592 of file Hazelnupp.cpp.

-
593 {
-
594  parameterAbreviations.clear();
-
595  return;
-
596 }
-
-
-
- -

◆ ClearConstraint()

- -
-
- - - - - - - - -
void Hazelnupp::ClearConstraint (const std::string & parameter)
-
- -

Will the constraint of a specific parameter.

- -

Definition at line 547 of file Hazelnupp.cpp.

-
548 {
-
549  parameterConstraints.erase(parameter);
-
550  return;
-
551 }
-
-
-
- -

◆ ClearConstraints()

- -
-
- - - - - - - -
void Hazelnupp::ClearConstraints ()
-
- -

Will delete all constraints.

- -

Definition at line 605 of file Hazelnupp.cpp.

-
606 {
-
607  parameterConstraints.clear();
-
608  return;
-
609 }
-
-
-
- -

◆ ClearDescription()

- -
-
- - - - - - - - -
void Hazelnupp::ClearDescription (const std::string & parameter)
-
- -

Will delete the description of a parameter if it exists.

- -

Definition at line 378 of file Hazelnupp.cpp.

-
379 {
-
380  // This will just do nothing if the entry does not exist
-
381  parameterDescriptions.erase(parameter);
-
382  return;
-
383 }
-
-
-
- -

◆ ClearDescriptions()

- -
-
- - - - - - - -
void Hazelnp::Hazelnupp::ClearDescriptions ()
-
- -

Will delete all parameter descriptions.

- -

Definition at line 385 of file Hazelnupp.cpp.

-
386 {
-
387  parameterDescriptions.clear();
-
388  return;
-
389 }
-
-
-
- -

◆ GenerateDocumentation()

- -
-
- - - - - - - -
std::string Hazelnupp::GenerateDocumentation () const
-
- -

Will generate a text-based documentation suited to show the user, for example on –help.

- -

Definition at line 391 of file Hazelnupp.cpp.

-
392 {
-
393  std::stringstream ss;
-
394 
-
395  // Add brief, if available
-
396  if (briefDescription.length() > 0)
-
397  ss << briefDescription << std::endl;
-
398 
-
399  // Collect parameter information
-
400  struct ParamDocEntry
-
401  {
-
402  std::string abbreviation;
-
403  std::string description;
-
404  std::string type;
-
405  bool required = false;
-
406  bool typeIsForced = false;
-
407  std::string defaultVal;
-
408  };
-
409  std::unordered_map<std::string, ParamDocEntry> paramInfos;
-
410 
-
411  // Collect descriptions
-
412  for (const auto& it : parameterDescriptions)
-
413  {
-
414  // Do we already have that param in the paramInfo set?
-
415  if (paramInfos.find(it.first) == paramInfos.end())
-
416  // No? Create it.
-
417  paramInfos[it.first] = ParamDocEntry();
-
418 
-
419  paramInfos[it.first].description = it.second;
-
420  }
-
421 
-
422  // Collect abbreviations
-
423  // first value is abbreviation, second is long form
-
424  for (const auto& it : parameterAbreviations)
-
425  {
-
426  // Do we already have that param in the paramInfo set?
-
427  if (paramInfos.find(it.second) == paramInfos.end())
-
428  // No? Create it.
-
429  paramInfos[it.second] = ParamDocEntry();
-
430 
-
431  paramInfos[it.second].abbreviation = it.first;
-
432  }
-
433 
-
434  // Collect constraints
-
435  for (const auto& it : parameterConstraints)
-
436  {
-
437  // Do we already have that param in the paramInfo set?
-
438  if (paramInfos.find(it.first) == paramInfos.end())
-
439  // No? Create it.
-
440  paramInfos[it.first] = ParamDocEntry();
-
441 
-
442  ParamDocEntry& cached = paramInfos[it.first];
-
443  cached.required = it.second.required;
-
444  cached.typeIsForced = it.second.constrainType;
-
445  cached.type = DataTypeToString(it.second.requiredType);
-
446 
-
447  std::stringstream defaultValueSs;
-
448  for (const std::string& s : it.second.defaultValue)
-
449  {
-
450  defaultValueSs << '\'' << s << '\'';
-
451 
-
452  // Add a space if we are not at the last entry
-
453  if ((void*)&s != (void*)&it.second.defaultValue.back())
-
454  defaultValueSs << " ";
-
455  }
-
456  cached.defaultVal = defaultValueSs.str();
-
457  }
-
458 
-
459  // Now generate the documentatino body
-
460  if (paramInfos.size() > 0)
-
461  {
-
462  ss << std::endl
-
463  << "==== AVAILABLE PARAMETERS ===="
-
464  << std::endl << std::endl;
-
465 
-
466  std::size_t counter = 0;
-
467  for (const auto& it : paramInfos)
-
468  {
-
469  const ParamDocEntry& pde = it.second;
-
470 
-
471  // Put name
-
472  ss << it.first << " ";
-
473 
-
474  // Put abbreviation
-
475  if (pde.abbreviation.length() > 0)
-
476  ss << pde.abbreviation << " ";
-
477 
-
478  // Put type
-
479  if (pde.typeIsForced)
-
480  ss << pde.type << " ";
-
481 
-
482  // Put default value
-
483  if (pde.defaultVal.length() > 0)
-
484  ss << "default=[" << pde.defaultVal << "] ";
-
485 
-
486  // Put required tag, but only if no default value
-
487  if ((pde.required) && (pde.defaultVal.length() == 0))
-
488  ss << "[[REQUIRED]] ";
-
489 
-
490  // Put brief description
-
491  if (pde.description.length() > 0)
-
492  ss << pde.description;
-
493 
-
494  // Omit linebreaks when we're on the last element
-
495  if (counter < paramInfos.size()-1)
-
496  ss << std::endl << std::endl;
-
497 
-
498  counter++;
-
499  }
-
500  }
-
501 
-
502  return ss.str();
-
503 }
-
-
-
- -

◆ GetAbbreviation()

- -
-
- - - - - - - - -
const std::string & Hazelnupp::GetAbbreviation (const std::string & abbrev) const
-
- -

Will return the long form of an abbreviation (like –force for -f)
- Returns "" if no match is found.

- -

Definition at line 573 of file Hazelnupp.cpp.

-
574 {
-
575  if (!HasAbbreviation(abbrev))
- -
577 
-
578  return parameterAbreviations.find(abbrev)->second;
-
579 }
-
-
-
- -

◆ GetBriefDescription()

- -
-
- - - - - - - -
const std::string & Hazelnupp::GetBriefDescription ()
-
- -

Returns the brief description of the application to be automatically added to the documentation.

- -

Definition at line 351 of file Hazelnupp.cpp.

-
352 {
-
353  return briefDescription;
-
354 }
-
-
-
- -

◆ GetCatchHelp()

- -
-
- - - - - - - -
bool Hazelnupp::GetCatchHelp () const
-
- -

Retruns whether the Hazelnupp should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not.

- -

Definition at line 340 of file Hazelnupp.cpp.

-
341 {
-
342  return catchHelp;
-
343 }
-
-
-
- -

◆ GetConstraint()

- -
-
- - - - - - - - -
ParamConstraint Hazelnupp::GetConstraint (const std::string & parameter) const
-
- -

Will return the constraint information for a specific parameter.

- -

Definition at line 542 of file Hazelnupp.cpp.

-
543 {
-
544  return parameterConstraints.find(parameter)->second;
-
545 }
-
-
-
- -

◆ GetCrashOnFail()

- -
-
- - - - - - - -
bool Hazelnupp::GetCrashOnFail () const
-
- -

Gets whether the application crashes on an exception whilst parsing, and prints to stderr.

- -

Definition at line 329 of file Hazelnupp.cpp.

-
330 {
-
331  return crashOnFail;
-
332 }
-
-
-
- -

◆ GetDescription()

- -
-
- - - - - - - - -
const std::string & Hazelnp::Hazelnupp::GetDescription (const std::string & parameter) const
-
- -

Will return a short description for a parameter, if it exists.

-


- Empty string if it does not exist.

- -

Definition at line 362 of file Hazelnupp.cpp.

-
363 {
-
364  // Do we already have a description for this parameter?
-
365  if (!HasDescription(parameter))
-
366  // No? Then return ""
- -
368 
-
369  // We do? Then return it
-
370  return parameterDescriptions.find(parameter)->second;
-
371 }
-
-
-
- -

◆ GetExecutableName()

- -
-
- - - - - - - -
const std::string & Hazelnupp::GetExecutableName () const
-
- -

Will return argv[0], the name of the executable.

- -

Definition at line 553 of file Hazelnupp.cpp.

-
554 {
-
555  return executableName;
-
556 }
-
-
-
- -

◆ HasAbbreviation()

- -
-
- - - - - - - - -
bool Hazelnupp::HasAbbreviation (const std::string & abbrev) const
-
- -

Will check wether or not an abbreviation is registered.

- -

Definition at line 581 of file Hazelnupp.cpp.

-
582 {
-
583  return parameterAbreviations.find(abbrev) != parameterAbreviations.end();
-
584 }
-
-
-
- -

◆ HasDescription()

- -
-
- - - - - - - - -
bool Hazelnupp::HasDescription (const std::string & parameter) const
-
- -

Returns whether or not a given parameter has a registered description.

- -

Definition at line 373 of file Hazelnupp.cpp.

-
374 {
-
375  return parameterDescriptions.find(parameter) != parameterDescriptions.end();
-
376 }
-
-
-
- -

◆ HasParam()

- -
-
- - - - - - - - -
bool Hazelnupp::HasParam (const std::string & key) const
-
- -

Will check wether a parameter exists given a key, or not.

- -

Definition at line 165 of file Hazelnupp.cpp.

-
166 {
-
167  return parameters.find(key) != parameters.end();
-
168 }
-
-
-
- -

◆ operator[]()

- -
-
- - - - - - - - -
const Value & Hazelnupp::operator[] (const std::string & key) const
-
- -

Will return the value given a key.

- -

Definition at line 558 of file Hazelnupp.cpp.

-
559 {
-
560  // Throw exception if param is unknown
-
561  if (!HasParam(key))
- -
563 
-
564  return *parameters.find(key)->second->GetValue();
-
565 }
-
-
-
- -

◆ Parse()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnupp::Parse (const int argc,
const char *const * argv 
)
-
- -

Will parse command line arguments.

- -

Definition at line 36 of file Hazelnupp.cpp.

-
37 {
-
38  try
-
39  {
-
40  // Populate raw arguments
-
41  PopulateRawArgs(argc, argv);
-
42 
-
43  // Expand abbreviations
-
44  ExpandAbbreviations();
-
45 
-
46  executableName = std::string(rawArgs[0]);
-
47 
-
48  std::size_t i = 1;
-
49  while (i < rawArgs.size())
-
50  {
-
51  if ((rawArgs[i].length() > 2) && (rawArgs[i].substr(0, 2) == "--"))
-
52  {
-
53  Parameter* param = nullptr;
-
54  i = ParseNextParameter(i, param);
-
55 
-
56  parameters.insert(std::pair<std::string, Parameter*>(param->Key(), param));
-
57  }
-
58  else
-
59  i++;
-
60  }
-
61 
-
62  // Apply constraints such as default values, and required parameters.
-
63  // Types have already been enforced.
-
64  // Dont apply constraints when we are just printind the param docs
-
65  if ((!catchHelp) || (!HasParam("--help")))
-
66  ApplyConstraints();
-
67  }
-
68  catch (const HazelnuppConstraintTypeMissmatch& exc)
-
69  {
-
70  if (crashOnFail)
-
71  {
-
72  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
73  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
74  quick_exit(-1009);
-
75  }
-
76  else
-
77  throw exc; // yeet
-
78  }
-
79  catch (const HazelnuppConstraintMissingValue& exc)
-
80  {
-
81  if (crashOnFail)
-
82  {
-
83  std::cout << GenerateDocumentation() << std::endl << std::endl;
-
84  std::cerr << "Parameter error: " << exc.What() << std::endl;
-
85  quick_exit(-1010);
-
86  }
-
87  else
-
88  throw exc; // yeet
-
89  }
-
90 
-
91  // Catch --help parameter
-
92  if ((catchHelp) && (HasParam("--help")))
-
93  {
-
94  std::cout << GenerateDocumentation() << std::endl;
-
95  quick_exit(0);
-
96  }
-
97 
-
98  return;
-
99 }
-
-
-
- -

◆ RegisterAbbreviation()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnupp::RegisterAbbreviation (const std::string & abbrev,
const std::string & target 
)
-
- -

Will register an abbreviation (like -f for –force)

- -

Definition at line 567 of file Hazelnupp.cpp.

-
568 {
-
569  parameterAbreviations.insert(std::pair<std::string, std::string>(abbrev, target));
-
570  return;
-
571 }
-
-
-
- -

◆ RegisterConstraint()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnupp::RegisterConstraint (const std::string & key,
const ParamConstraintconstraint 
)
-
- -

Will register a constraint for a parameter.

-

IMPORTANT: Any parameter can only have ONE constraint. Applying a new one will overwrite the old one! Construct the ParamConstraint struct yourself to combine Require and TypeSafety! You can also use the ParamConstraint constructor!

- -

Definition at line 598 of file Hazelnupp.cpp.

-
599 {
-
600  // Magic syntax, wooo
-
601  (parameterConstraints[key] = constraint).key = key;
-
602  return;
-
603 }
-
-
-
- -

◆ RegisterDescription()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnp::Hazelnupp::RegisterDescription (const std::string & parameter,
const std::string & description 
)
-
- -

Willl register a short description for a parameter.

-


- Will overwrite existing descriptions for that parameter.

- -

Definition at line 356 of file Hazelnupp.cpp.

-
357 {
-
358  parameterDescriptions[parameter] = description;
-
359  return;
-
360 }
-
-
-
- -

◆ SetBriefDescription()

- -
-
- - - - - - - - -
void Hazelnupp::SetBriefDescription (const std::string & description)
-
- -

Sets a brief description of the application to be automatically added to the documentation.

- -

Definition at line 345 of file Hazelnupp.cpp.

-
346 {
-
347  briefDescription = description;
-
348  return;
-
349 }
-
-
-
- -

◆ SetCatchHelp()

- -
-
- - - - - - - - -
void Hazelnupp::SetCatchHelp (bool catchHelp)
-
- -

Sets whether the Hazelnupp should automatically catch the –help parameter, print the parameter documentation to stdout, and exit or not.

- -

Definition at line 334 of file Hazelnupp.cpp.

-
335 {
-
336  this->catchHelp = catchHelp;
-
337  return;
-
338 }
-
-
-
- -

◆ SetCrashOnFail()

- -
-
- - - - - - - - -
void Hazelnupp::SetCrashOnFail (bool crashOnFail)
-
- -

Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not.

- -

Definition at line 611 of file Hazelnupp.cpp.

-
612 {
-
613  this->crashOnFail = crashOnFail;
-
614  return;
-
615 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Gets thrown when an non-existent key gets dereferenced.
-
std::string GenerateDocumentation() const
Will generate a text-based documentation suited to show the user, for example on –help.
Definition: Hazelnupp.cpp:391
-
const std::string & What() const
Will return an error message.
-
bool HasDescription(const std::string &parameter) const
Returns whether or not a given parameter has a registered description.
Definition: Hazelnupp.cpp:373
- -
static const std::string g_emptyString
The only purpose of this is to provide the ability to return an empty string as an error for std::str...
Definition: Placeholders.h:9
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
Definition: Hazelnupp.cpp:165
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:36
-
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:21
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
-
bool HasAbbreviation(const std::string &abbrev) const
Will check wether or not an abbreviation is registered.
Definition: Hazelnupp.cpp:581
-
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
- - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException-members.html b/docs/classHazelnp_1_1HazelnuppConstraintException-members.html deleted file mode 100644 index b3417c1..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintException-members.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppConstraintException Member List
-
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException.html b/docs/classHazelnp_1_1HazelnuppConstraintException.html deleted file mode 100644 index 4928ef9..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintException.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppConstraintException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppConstraintException Class Reference
-
-
- -

Gets thrown something bad happens because of parameter constraints. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppConstraintException:
-
-
Inheritance graph
- - - - - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppConstraintException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown something bad happens because of parameter constraints.

- -

Definition at line 47 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintException() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException ()
-
-inline
-
- -

Definition at line 50 of file HazelnuppException.h.

-
50 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppConstraintException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException (const std::string & msg)
-
-inline
-
- -

Definition at line 51 of file HazelnuppException.h.

-
51 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.map b/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.map deleted file mode 100644 index 18f00b3..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.md5 deleted file mode 100644 index e3422d4..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -96b8a2e382311cb88b3e8d75cff008e2 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintException__coll__graph.png deleted file mode 100644 index 9d7f56c982860dc5d2ae6f72841f15e9ae3c08b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11768 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 - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.md5 deleted file mode 100644 index abdf318..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -17838dc81928478a02ebb9e9c8a70244 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintException__inherit__graph.png deleted file mode 100644 index ec7bde40f102005f924fe6736d333555c6f1f919..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18728 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 diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters-members.html b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters-members.html deleted file mode 100644 index e436cd9..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters-members.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppConstraintIncompatibleParameters Member List
-
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html deleted file mode 100644 index f02af89..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html +++ /dev/null @@ -1,232 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppConstraintIncompatibleParameters Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppConstraintIncompatibleParameters Class Reference
-
-
- -

Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppConstraintIncompatibleParameters:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppConstraintIncompatibleParameters:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintIncompatibleParameters ()
 
 HazelnuppConstraintIncompatibleParameters (const std::string &key1, const std::string &key2)
 
- Public Member Functions inherited from Hazelnp::HazelnuppConstraintException
 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones.

- -

Definition at line 101 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintIncompatibleParameters() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters ()
-
-inline
-
- -

Definition at line 104 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintIncompatibleParameters() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters (const std::string & key1,
const std::string & key2 
)
-
-inline
-
- -

Definition at line 105 of file HazelnuppException.h.

-
106  {
-
107  // Generate descriptive error message
-
108  std::stringstream ss;
-
109  ss << "Parameter \"" << key1 << "\" is NOT compatible with parameter \"" << key2 << "\"!";
-
110 
-
111  message = ss.str();
-
112  return;
-
113  };
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.map b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.map deleted file mode 100644 index 4595aa7..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.md5 deleted file mode 100644 index d63b369..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -ff792383829de5757a3c68b58f7a2cf3 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__coll__graph.png deleted file mode 100644 index 464b7759096a266ecbd748cc5260c2f7feb59044..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16236 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 - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.md5 deleted file mode 100644 index e5f1c0e..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -dc39f190a0e77f6af97e4154d9f9a859 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintIncompatibleParameters__inherit__graph.png deleted file mode 100644 index defcd6e88653c582b558875c0b2f0c12cc5bcb46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10430 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 R2L}=n52O{P3MGtQ{10*T)z|<4 diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue-members.html b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue-members.html deleted file mode 100644 index fb9bc0c..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue-members.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppConstraintMissingValue Member List
-
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue.html b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue.html deleted file mode 100644 index 67b4eeb..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue.html +++ /dev/null @@ -1,236 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppConstraintMissingValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppConstraintMissingValue Class Reference
-
-
- -

Gets thrown when a parameter constrained to be required is not provided, and has no default value set. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppConstraintMissingValue:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppConstraintMissingValue:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintMissingValue ()
 
 HazelnuppConstraintMissingValue (const std::string &key, const std::string &paramDescription="")
 
- Public Member Functions inherited from Hazelnp::HazelnuppConstraintException
 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when a parameter constrained to be required is not provided, and has no default value set.

- -

Definition at line 80 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintMissingValue() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue ()
-
-inline
-
- -

Definition at line 83 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintMissingValue() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue (const std::string & key,
const std::string & paramDescription = "" 
)
-
-inline
-
- -

Definition at line 84 of file HazelnuppException.h.

-
85  {
-
86  // Generate descriptive error message
-
87  std::stringstream ss;
-
88  ss << "Missing required parameter " << key << ".";
-
89 
-
90  // Add the parameter description, if provided
-
91  if (paramDescription.length() > 0)
-
92  ss << std::endl << key << " => " << paramDescription;
-
93 
-
94  message = ss.str();
-
95  return;
-
96  };
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.map b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.map deleted file mode 100644 index e1c0d27..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.md5 deleted file mode 100644 index 22698a5..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -14fd73384f3d4b5bc6a4c29d9bd57dbd \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__coll__graph.png deleted file mode 100644 index 984f95791ed86de92ce80d326e984dcf636a70d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16361 zcmdVBby!vF+Alm2q+6szK#)=z5h(#B1nKTl0qO286)*?|0qO2;5ClQ#6r>f9Mg(cj zJ=Tu1-*@l#obS)`EiW!zlR3v6QuD=2xHI~pGEHl{rdF1epcY>zuUH6i;!tZLU^9MsD3 zSnR#sWrCx2>$tIkv6A}gr&U@7#d_Bb%Z#sAO;4{{7i1X)=xllU4Hgx9NXB_NW50@^ zbzHeR2s zy1&9#8UNx%z%A#c$`z5yjZ3~GL!@l6*o;cq8XS(B-)?NNBz14&jy*RhLjD`Bt*B7S25h}xUr^WA-n1Ujw zyfGpI+rz^n*B2k z#TyZ`;9zIJqoYG?w`PrV$l;L- zjhd(f0|Q^kU0s=OxcMMeytn4_52xpJx8t|Q?ORT@HtOo9YU~$>l_f$eD)^VayhWFl zm2EuTpQ5h0&-t8~uBW@(bZ2KruiyXt%=e+Sb#!nm^91}l2Cwv{sx_{`#z`#)L zy!;?;8J|YzdDGsQKG(Ht;aS<)d@!1r0Y85H;O(TGDm6uSc6VQ1E;*eT9)7K>uU~O+ z;Gtz;@P&zq>5UANX;;ktP`pLd-tV>7*OYZEEUwZBJ6u`&R>z-o)1Ll# zyyfhpL`#|7bp1#8(R?HlN;;U=8K&mtB~npYY0=%?y;nVchRTM=L?O?c>bAeG8%Gqw znv#<8=FcSFdGYpbH>xx?maJ$se{4eBbbVAP zG(5bZD9bCQH|geX3?42nC5rWRw~m5>LbAB1`{uiz%D4QF_)t&A3Uv!BD=Sr}G#Fgd zWWw!bRA6OH)YvnKAAY}daCBt0zy7t>b2oeP(2|de>-u%mM~}LcVa)A+drg1)wkjIm zZGj4yn9%X?_HOU#!KLkDQ2|e% z;(q$!q@%0b*4Y_mUotHVi@rnK*f$jZZvFa|%KvOP)p2LxZk)8f;d>RPAUs0C&hFRO z9QRf=F)%UB4z}k#_SdOUt)Jxfu1_|3yT>LZFvG~F#;2srthkE%9H{(ogaNI0-->?s zjy5DL%&a$25ZNedc``5|`T6;k`8BK*6clV^xS3g5g7wXvzvTs^7pa?4tfQl&**H1X zZ~1F97;kKB>%-78NwTI$Sz&7G>UDc?qtDEQcKg8qX<4bHjOJs|Uc;EN#R&X4r zHj|*><+!*w6*jWm+}r@QJPeeuu<(^zx84$6ba!{hrxPJ#@H=4q_3PJ*l$7YpoLaeD z>PeTT^=s@t!qrvu^qwju3Eg3R&3N@{h_O4A5YvYb!$LwZWbWOwHndlQA$*~b^+wEF zXmh6N*}{U^li6lEc-OF1>Pk>}IM&JOX_>>kRMn~8FvHn4){}3wBr)`2ANDtL*lwhd(HEbab|71@6kq zW)v3UZ*FcP-^y!#FJt_+`=&vmUKQ?iy=!}ln76~pf#byFvH5A(9ttUN3&-s;!=#-Hpv}b-^#0WpNF0t+Fp& zdtfqIX~o9I_W0!wZ6ZT8?>98mP^T}UwpD6DYcex)^ZE64{5*}Pt*w$zW*T+3TnAD}8NHSk7SeZ123^yj zWKOjBw+vV!FDu=ZeqV|IFHNS8orKAZ!T*F8>K2dhk;}pHF`i+x5%OMw0fFD2PLKbL z5?)NV!j3%(qsg;{jl^^FW>-h#rNN3v%7w-)&GI#)l(7$ISMSRaMA5NGu2WNc$qcJp z8C|8hkacue6;7j?lb`=IS=95DQmS~e>&if2)7jD56R1*!rKKu=Xo{{0xZn&v8zWOl z45PPt%=Y4Fg!b>B9K2^_L=PM1A!;IDvw-^4r|f;&eQc|%wqf+DH_5OEwu#wBE2-=- zP-M6lp?XI_G57$Jbn)WFiF#Mg_#1|k6TPHjB7;g1)Pmvkd15^QtfSKJX@wn7_KiE3 zg@uKsmY?HAmZJm+ZaOXZ(XCIEp&##W1jof)&Q?kaL%JB%TCN~;Oqr-e=@__W0$4TD zii-HOw6s^^6li>k>lszx-_)Aze`ft-pd@sB{Al{=1!M15+Tc5BGIHo{TQgCxsmy+_ z46<=^cYW`ET~*IexJ1kr8XCI2zuyVt=m-;hugEyUyFcWfbOLd5dfNSn>Jb7%scZE( zjOno2u}Lof%Y6L>3jWc_WrzqF&XiV2@i7fW<@IFt1lhjFaW@O&GiUJC*13|`lMS-5 zvj@sB)cT1@PXytkLP;5~voSIf93Ez& zQ0nUDv?8%r9qum3!lUDfxUk`5XLq6kdK4}a(ksen#;MKacSK1=z93iA&1;=+Z%Hdx zYg6XD;TLV}?|a2W^KT!!<$p%6aNjsrkzeq~_HKXV1x*V|z!z4Gj*gK$ysD=Wnpzx= zCkINR{zmL7fB#Hwu1Dl>j(u9bf@;pj$7dYx#Jpt#^6}A;+nf8|t?zMIo}@pQ8v6=fzH{ePGrPv#zR!3^$tZ0HF320%kv{WtV=5`bylda9xO018 zo`z9I0|8Y3m#O~?#Qi_>Rx>6SG{Na+Um8zOPpO1EE}6zHex(%^HZLugmzEa#l5bxx zUymoITzQ_O%*fm?@Nq9)WoO^L zIMWdv6yICLfxTxpV!!nE>aQDXr%N2+vUruOqzuS%x;*%=$W|eVDC?SXO2DG<_vK|g zLtK(u@J3m9ajdVupXj#RI&nSzkc{olp3P|5_qDZWh7E2whG8=!HBC4;IB)nLMe|&w zBKB?3t~4~(_c_&b1t5+e(-uB-bJho4TU%R4PtR!VG1COnyKdp|m zCnqN;6o4scGzgv?FJV|%SkQ>4AR$2`A|k4a`P|b(OiqsZ=+PsjaRGvT`}Qp=peu%< zeP)Kf!F_9K+5i0X4+$|bDpU#$1>5%Df$U;ATI=V}c%0hB9sdOo3)VJOxt}{bJMZ+} z-fHdZBi!HLe{;*36&Dv*W30?;&l&)S6w}N1?prg$P~p{$=~V~+cxRQZ?f&}p0SYUR z(|0+Sl>xNlKU*ccM^;|G-<@uCM$>&BKiR06rJnKRVP&eZn>K@=A+Ixd6TiB;x*I?n zEmhUF8^+CFpwRZz93LE%Cf|0?7kvcdvtCp)V|MG-EiOU9xWl6(fPviHF}$4e+2|_*u{MBxrupKw53zsJD^Yz7cnqO%gnoeZ2&I)(%l_tSmzWPmyl4g zz3uQ20Aj2{)>sLi`SXumT@~-%y}Kut!|UYaq~qh$IJUcX+%y!s=jr8DUToM<4jr~E zKcAyhXL?+Dc#Yp>MMVfOR(w*@=b@pYiT8JcHLS<(nM;J%KO9JlO-bnk1gZ;{YTBqW zJ{TF%z?A&a?gS9I$hfkwkP9=Q`-hWXqEwm*X{1b67}V@?z$xW~bRwnB%Y8e;05Ygh z@vmMDWmC#9yDv@s z149e!D=V4dvA{~FZV>M@+Vl1BsO_mdl9HcZd;RK_T23>37nK1U)$jSFf&xw$y>Mmm zLyYF;W(2$0%{1n@`Mp)dynp|Goc^V6)6-Q(v+dzTXedCQbHao`&L$=(fsB6o^l5H6 zNy1;8kDs5{VNMbj;;&(TK0cEtPYkw1stl`>l9GCMzkT~w*{sdZ$%)6x%Ie_gIG>}* zUV0~;RDo+mT=Ohvl%cWUwQJX+c5}UvWePpq#N52SX56oZ@5DD+q(9)7hQ-MdjppZq1 znwy&o`2O7jE{5i@$2~oeCcOh+&BV=3^z-LWoiek~9zGfo&!6AFhwLnNnFHVP*q%d! zbrEJWUJO_pgWISPg$fA|XNFN!RaKp6aOWoHHhK=Ye5XI*KO%1Huc%VjH7$c$2Q;92 z6O~q%EcmFTq@-4-XC`4rczg~Ve74)LfO6c^(jq6nt{3wD{T1K>D+??n*Z;O|47azp z16o=n$Zr_rRzH+B8AucO{|3w*Wd049k5OH|94hX6bcKx#+s(~Qr`Cb-VQ=C^sA?Tu zUFO5tN)b^}p;=ih_o8Vd0kt83`{d>mD4h4s&rW&0em@3E!^q1^f`*1honUASNL#1M z`f|PNT9}yk{v6be(yA)WhNdc@1PH}L$HWhai6Nq;qa(R|d9*hArsR=diGZbVJuw|! zRC+p7Z9{|kw_3+HqMm%H)-PWaAFVyM0;LAWP^Jnb0rUWq;QNuu2?-QX`<_}2XX6+? zy|>(-I{x{JJ+o}|lb1hg$ge$k*IH>cta0ObKxU;sZKYG4DMY{!Sc9UX;`UOKJ(HLi z-RA`Eu8}ID+_($7O#Oc-}xvI#6!oti{W50loUgo*`FzvH7*`zw(m78|oi0d(! zoPf@^ot++s-pJ5>{BOd}tAO%y-1jPM&`F6^Nv0z=K{`4Ui5%M;$-`p1?i(oo`UubP zY1`1UcPM+nha?5ES=A4g`8dLZzFsaFAR$4~DcyUPuOGUO%}7Qj+P*n`lgA>0zuwix zaLUfc=9$~ZWYxs4sVbW;>Bnsf_zH@{`GVsb(P;3**!z0Y~rRPTG1e{k9F|F|XXGC^Chh?$4Zu{pX`6ol*0Ly9$K{RNAxZ5z(G~ zm9ix}LUYeY{MWiEc`S7GkF|7k$P_MgceCfYds${(xc1=cVn?KfnD&TJQ*$|1q1a?w zZc0VLJyzNy^;N5#j>o3rYMp@p7^@VHAKT7U%nhL3$k&(2wf~02L1uQ~?u28%`d)gW_s)ve! z!wfl#V>6-{h3;+dL!(#L2MGiHT`z`fC!i+0b=!OelE0B(2z@2#Tg=`Gdb_WbN`L%jkm4*$S*{w?P7K7Nd?6`Yu|z(xFTy`=g zQ$*Rrq|!oOl3+126KZNIP}0z}O-)f{+}jIIO}*XN`0gNpsaKoBKT>*lDk<`DJAJaZUh8CX@i%hZzun1Ta}yONkz4yfn%Ml}Vi3D}bNlVB1Jj<^J5mYb z9Ih)5F}LanS5D9CTQif7fFTuNy2d>sHhO%S5|)X@#DvJ5S1RHV-Z^5 zh6YWy_@};2Oe}v!!Cel@gWKUR%W9XOYMqoerA66*M&n~+J48iACjcZI`~)yN)@FQhZaXsRuBc(8X|R25xoKJEe{{8cZC31| zVxFIova<62sJ8J=%;MrARhMI7;d)Ep*=EC5xw6D*EN`a{Uo8(avv{I^GP_)_#2a#a-ppv(XDAx?ktB#fG;l?PuxZ+ zk$0fQGB-Dmjg7qm3fX^De_2ri6PT#7vN8}}!eCtpM-O%=8lqkEIt)owt+9BRMy?0?0EVxidE>4Ye2}gcW0IVG;7}n}N&Ep{yCt zpx|H{*zyx2B5 zN&WKW%ZSLxz_>WgVA~rvZXEpj%uPZ~jTey}`jj9$wzIB>U#b-@jeBjGJj;;a{%jQcY{W`EnO3W|6*A zY^*3nJy|+>#=R)1Cr`LwHW}j-NGK^Iz-PcSjL#jIPx|y@IiYRXnZWPpr#~^}g!YOP zwv}Tge36ilmVl5 zKrgRxiE>iR3g0%JB=i+pX-z`w$B&(JeVjknaBYX`2V4~}KMZUJd+TPm=6$qspuO4_ z;o2u)aea_F^i|;YANQ_6^l=r{9a3`gh4Zw#{G8?({l1;O?0(d!uUQC4MBnvI%u~eFcw{DA9HJ;qRv3L6!%goJyehbs6UArd7TzM=bNo<7E_CJivNAN~*i{;J9J&Xb)dQi{p2*-5IW} zdc9OqB`q!sI?{ojK24B&&^NT^#bC_&v8;~0q;udb?MK%Dt1SgQv7>WEXp^sO6T^qE z-g;&$zvw-fKg8KlFdA7NvMwaVFO?c8wQ)i_K+1?82Ht%!}KuS*PV=hTIQX#j4~tkEP96{Ewp)Ash~}% zyd&I=;H{b91r|DT(s>vRHrO}@b+0f((+||iiw)GO!Yw^HW**FMwS$-Y`tGiLtNYoKA++6X@rJW-JLwdyktZ!x zd?*KYP3!Ee@d}@etSy@(EtZ6Ygv-{9;jAEu7@vA&_=j9l++ui|$yjI*S42dp!NIH^ z$clInZ0_R!dr)@7Dx?w>ol&4Nn&$kkMlfiIdYWwiG^YHa7v;T+9L@G+4VeTV5~>(mrY!VSZPDP|_7x%v6D z{W3;7XAl%M_w}H{L#bC)eW~S}p4Y?}!ypmX)FcMVe6O(G|oz$Hv18E+`PO zw1D2i@CwNSa26I7@!HRbf<0$5N9RIS>M$*89aRQ3Oz^qRB{_Jsw7m znVlU6q{lAMYyheTgWX(oEM;g5T`3$$vD@Z1oK8xZ#MPo5fHn6V9ickc1_EF~)P><3 z<#DTXQi3a`&Azv1H-G-@7P6oDB5{L_%>?yEk#%uOyHF>se5Tp=xZHNC zx@ywa&Bet6`rG_e!MLi9POfI^V{7g4YtXw+PCx{)1e$L_C*oqV+?TwV^XTD25FJ@q zvL4Jn9;QgN-rd)`qt4|3@XGtLwX~#_lQLG_oA`M3lG4WBUSw1h z!K}FdnGfJjv$@tlY<&FhIgczXT0uSo)6&&?sG2)**XyCBWm`uF1~k!=%GLJ0!ou@2 zFGc6$1Odg8aC?whu?Yx1CJNfTNKPgI1oG*V9LPvJyC7engKi>iU_g8H`)9kdyPI3s z%aBFG<1b}3^_9Y`vIdS+A=u-TT`a(1~ z?kXtY`W?(;HTQx|iW_>t%E}e1WVo7}I=}Z*?tG0mShOmdnxV2WXU7#Qd3kw0G=oG< zVQP2pUW`>>0lbY3n&s82SFiB#y|VBB@&&H=(S6o8JWV=0Uv#{?8)vaArmIl5VtcL) zUDSIYA8LrSoE)}MqsQR)#A>_gr+5@M-d9$VB?;LEDY7EJLQTJ0fjjp0^fZO(X5-+H zdianvp4-^yQA*g6OwxYXe^$b#IO7y}z4xDdYx1T5G(7MZR2+x3VDrk91O2+skYE z4d9Vt8wRbwa_0T>_KgkmWQN#(%P)~B6v>#H)=g-16jmFTm)y7EWG%%k1)ND>)39HKYRMrTPi`iQbyvQu0&Ou48E-57eOwgMvA~d z-!kt%25FxeGj&(qsc|}N&$*&nK{@#O4I)j@**AX<^BL5~evlA%Th9&{B_8rYUi|cO z7S$+no}kd9VBkVgy71 z(Im1;KmOD3UcW}oWn~*+ksLE58_c_3u^{fZ>wau`dAY+}D;lFUWA8x2A9dWT=&vEx z27)Y}Vc5!>TpLhfM<3CJRNjK!MP84gn*MK~N$KA})3`Ob^M+}q6!8zFtiHVA)oJu_ zO#bQT=XbDP(eF}*J81Q6sxYcRyTt562oBKAJHQZmVH+Ybm&=zgUvIYiTga~9>t}g6 zxz=~LoPReP{lW$JJ^7aBud8814AH>m7iQ1TZbB6=bKf!|qo7z^8O)GMki`!%l9uO) z113yKMb$PsdU<|+KDYV(2}BO&gp2!Tzg9d#Ls?o{A`l1EWf9j^42X_?sYv0tk;6%-Cvxt6m9pcGDtD8ymd} z_wQ4gKMxHFDFuH6(pP;?pFR5ursEe(LfTIdENLl*T-|Q}A1I2DURnosT?oP;1k?C$ z-@Xl@$3r(88yj*4hJN^*u8a)EYq_gPgzkU4oh^-%F$9iDbaZrI;b9LBE6U3$QJ~HO zf)N<;JKnd&3@~i=shhDa5CZo^2+$mB!so9UvN1Z6k|>(nZiQM?4*x^GaQW!(u4`fc ze~tQC?Ij9S8?Wh?2(c<9cEHcb%5s&P2p$V+?`-rBT2Zy-XL2FSo>-A#_l?PqAa?1x zxe1xCw=mGx8T9pM{8PetUUoDqhZu(p6l7#PC`H!SI~$x@g(|vWIQk;)tKNo?%_Rkb zJ$dO3@IM}*Cg8qD?7a2#sL@*i8GTYd{-*;OH3g9|#QQwlC{Z$G`zzWPSyo>nZ+;vn zC12y>b^yUT%zcjU2QB{t{Cb`D#rf#B6~gJkU6BNwfc8%b=vTNfpj*T@zjrTeG7(nS z!Ff$-DGC*Lso2iWj$^l>u5L6hr^>d1HStKsu%W2vI!f|JLV=+hC|6*~%q=W@P%aR^ z+Sk)FR7>z51*GgwTX1dFJPUhm)byQ?;~p#9FUP_w#MIPJ1#QNz+`df%kO^du-2D87 zXAuS+05K9=x2?V>3bzI}LtppZa^d^K)Jw2-;ZIiBZacPLl z0akQf8XUQ{Itldw4QIBm@e~MT;IMBqTq(KziMgn!&2=(|7ipO^S`bT)UE3doZR~IC2UaS9D z-D_lIG*Rb#4N`HCRLHzQd*lh$;eaFl`M$+uqp;1REGwSY^I{M+C{r zNZutxI)i{RAa&&F!Hz_gKKaUb0t#6vWa5smzsVlYWUtiawhEcN_BPQeeTo=~8l?Ii z$pibptDdTo`jb3)rI>*Z|I$Bl;?}Y$Pd0$2F}mQS1ANczj}S*Pd`OmPl7~7yI0BR; z!YC^K>^7Pwp&GN>)KPTl!Nk7rRffur?8K-9tz!o)Nz8cIVt;=JK2%y$qg_X^2zyr+ ziV##m6cR579`E4l8d_B)xYU~z4purUF`U=xu?~rAyUmEWkIiN&Q^*SVGASCyXiX+< z7Z98c*izWLkTh(3!#DD2DF*bspHi?Ci{aPIi{h@wpXBLzOWPTpFeFDZV0;{3^i zPw_3^MG)NYLM9Lr+(Zzq2Ko5Xb6#K;Bl?R|_AOBmBtb~ec!{wrZ0c;~)M7qm4Gl7g zQEz|mz61>!9muOT)w75f4-0$+E%oct8(4B_`mRDaCG`>bnuX99{>q&ovh;80jhF#h znVBQH#X{|G9#gwzHqQ%M6Ali3GrcRfICyz_55O*6!PdK1{}&b)pSQuo+Dr8`tFHYi zaXKfNf>)*n2O<=J;gFe`ITz00H#cQqU;vo%MSQ&0vgahB`OrWqb7I)|z{kH2DLs_S zfA{v$JOni&flaM{tpLr~5YT`*lni0F^*3YfZv+I^BeLfO6K@w{GuBI`Wtv0QI?p+I z2v{pI149htbQy(&$U#h}yybK?{{s3m+(sfc2S=Xrjvq?axQv#Vzh+~mOQgk%!rU_OH79daY|u@w@CH6rN0 zfA(zupJBE*q1!I8!uAr8C}>jNg#(cx3$IXLY1z* z{M63O!)>EJB#x8FWZ;T6tw^ODBIA;a?4C$-q} z@-ZkLFaqbnNDR3V2_RX8&jFA>HXwf#qR~EC7YyY5%WTFs09L|AHac6&`>k%5^5;*_ zpfMRaXV3vlM@9@XGrzxI(!LBC$b-Y>tMgBpGT#D}pJ)q)93!vRTP@wZ_tL^<1ITNj z*Q#n}QRa^eQaK8(-EdC|9&A&%0_o^WaNqotf zK!L@O;yykRFc&orD#%(&Sz1m@*H|m3#?P;gx`=7rjj)4zdVfDbO+`gzY)+Jw_4jpJ zUPT~AQ1fR|4sbt9=OA8a(!=7Uz2%hA*2FH=5z)CKB*}d5_lMTN2OPuk*PpdDY#p@^ ztM83J`P`GzJ~^qD`h#SMOF%)AbFgSi79zK-oiTq%>&c`NLkVa9e->c;i%3vt-3M-r zF6ocC|Hy8$Mmi!mSrBKLxA#BR zPyUHV&eaOr^Pf}!Ft+JvzUCVq(+f}_gCS(h0QlM@3aNknXnI+``9a5M!2w#7&vU zjv0JryrCFQ0+~SMxz=@!d~>!X1|oaRTwM5&6!U2Szz&+q%lLRqI5)$kSBZ@<0Tc?J z>Lc`+G6aS*&@2eSK_n{ZZS3$xC=}><9>*Isj=xt_p@CYhzYd$EG6%z|W1`G_2gt?S zl5QY3&P!kB87MAaM#hZ>st_6~7?a=w6w(N=QXf|lz~LAf5J?~+I0z&J@wh-9>;NZt z2Q(&xZXpdFAnZZ_*f?JxcWrgES6uP76+JL_|ciBG&@7IBM!j!e<21 zG4k<|HhJwySzB|!w1fk9L=KUFK!uHi(*~lx#@OL!?iQ2NqrH`>8g59!5mQp;?hC5Q z8Y&SKB?v_I5za!0m6(|L{V#XW(vP&QEkclsfOl65R&(+`IBWAjFyXrcAg2dBavQ># z3$K;M0|A~**4W2@qz%Xm>Gak%i2_!nAVi`=q)YJ)4;rXr9!I~~XT|+aJUl!-(|nKj z0X~HSE{9W8*eH+XWOt4Ir`8feBer9i2#jpX&BaDR+AqTmv{mFd4=a*zyJ1+5L|#E6 z?0}%XhP6fw0q_8*Xb8DR4xjj)9+{q<98%Y?Lre|=$JEcCYs_vY8of?ToGOv=7MW7_ zS}UsAhO}M2qJF7KV9z4#WAm+OV% zuQPW8ro+M6xu7OH(OYzBX$ke->BDGS+Z{_kEG#S#<@07g>ESyj3H}Yu|Jfo!!Fjvz z7~88VNRX7kE*Q|FR*6v*K<)I}T0{r-fE$E^CNpzF zqs6jG*vLq^0WI#%o1~=iub1+*b_X=! zM$1N!Wi;cp`|%lt$@4Zi1(=}vExnKVn?4AlZKlC6)G_t&$ z@B8=fCJ={pU9!proW3kf$l&{%1X1jfQ&~Q}aH2Wc z8Tdf;p#)o^C1K_^zZbg*N9(gmsIb-=bx)8IfuLDKmioX#S{4V|=n?4^__m9$5? z@zYj05446ia7GS+tg-R&=}?F%#eIY!u1tVBfLnfli1U~VoOqTj+< z5P;Pm;Ysk+)rVQf$!KZe45Hii>{Z)|(mOfV>R^7L*h_=B08Bmv&fJ-Tesoe}GAe-Z zZlv-7eA|X&il$)scpUy>0iLpxBXNpzc6J6JEOPfx%Q@Xv%egp|c82olsuyqY}J6y4S*5SB8m zlFFr1iUO<4W#yh8?FReLH^rMgIk!jU_3x%-wv}6chRUOI?FvM7Nr;I9K%I&E8P(Ko zKxcRz3#C=0_i=VpZAzBGH{`m0^@@eqU(ACXlB-DdjI)xBrd9RUteSYvAVE)Y!$4A3 z_ic~MTg5OCGnj;hb>8=2=RK2>$Ab}KyK$ov97Plgn4z%yCM~2Zj33QRh8rSJ4G#o<23_%h`&?4G_&^SVMXchzA9_eD8Q8eL5I0I7Wa8yhZ%ri^^ z>JXsa3y7*#MSt539|~@8QW6ca1Oft35Q;_;BA~cmvNpV)ZU)GiV_XijqS}11NiDaQDLCf>ziyLDC-`B0tS%M>YtL1t$lzO*@_yY&5pm zO4c|98#&29JM9_KC? zJs@6wWWlf{FT)MM7^=K2;dSpT7#<-Z#73LkW5@1jfm{oL zco)>(4Z{tBDnSkDszmqv<>lq}4<9bTZqm?oSAyVdAYhVcda-Wk zc3A8rKoExH@a8-F#~p$3)T4ow1TF_-*bp+71a=FVr}WVig6YxXpV5Ch!7A*qDQOC` zZ$89?9tc69PKoowevw_x)NP{%x9b2>upnfHQfhE+P9wq6v(~^G5*kQR!?Ru~c2jb1 zyg3F|Un#_b8;>^|KtyhXQsxN7GLGaTXrw>}k)voZiNA)EoR%B2;RWMGWM?8oXwf&&bcr+s{!0t)d293YmE6lV+zk;;n$hTb-A>>mYm zF%29jN}(q@$)7J^^J0Lp6C%UZ1~(IOBlyL`4Ez5X@>{p~7Wn=VW|aA}+F(^zRN#EK z28w*k`Kf){Dr2V7&%q3=bLr&oaUyWojZx~~ly*hbKrK!P@!-L^w%d~IfNy9UoZUys N-+drcEM*e(zW~4fQpo@S diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.map b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.map deleted file mode 100644 index 35b990d..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.md5 deleted file mode 100644 index 799a788..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -ac239fb6436ae22f9572ebde6d1fe1f3 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintMissingValue__inherit__graph.png deleted file mode 100644 index dd3350458f7f8c6965abcbe9986fb3a4ce71478a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10561 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 T`u0SbQDU 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppConstraintTypeMissmatch Member List
-
-
- -

This is the complete list of members for Hazelnp::HazelnuppConstraintTypeMissmatch, including all inherited members.

- - - - - - - - - - -
HazelnuppConstraintException()Hazelnp::HazelnuppConstraintExceptioninline
HazelnuppConstraintException(const std::string &msg)Hazelnp::HazelnuppConstraintExceptioninline
HazelnuppConstraintTypeMissmatch()Hazelnp::HazelnuppConstraintTypeMissmatchinline
HazelnuppConstraintTypeMissmatch(const std::string &msg)Hazelnp::HazelnuppConstraintTypeMissmatchinline
HazelnuppConstraintTypeMissmatch(const std::string &key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string &paramDescription="")Hazelnp::HazelnuppConstraintTypeMissmatchinline
HazelnuppException()Hazelnp::HazelnuppExceptioninline
HazelnuppException(const std::string &msg)Hazelnp::HazelnuppExceptioninline
messageHazelnp::HazelnuppExceptionprotected
What() constHazelnp::HazelnuppExceptioninline
- - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html deleted file mode 100644 index 29d50fd..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppConstraintTypeMissmatch Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppConstraintTypeMissmatch Class Reference
-
-
- -

Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppConstraintTypeMissmatch:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppConstraintTypeMissmatch:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintTypeMissmatch ()
 
 HazelnuppConstraintTypeMissmatch (const std::string &msg)
 
 HazelnuppConstraintTypeMissmatch (const std::string &key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string &paramDescription="")
 
- Public Member Functions inherited from Hazelnp::HazelnuppConstraintException
 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it.

- -

Definition at line 56 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintTypeMissmatch() [1/3]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch ()
-
-inline
-
- -

Definition at line 59 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintTypeMissmatch() [2/3]

- -
-
- - - - - -
- - - - - - - - -
Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch (const std::string & msg)
-
-inline
-
- -

Definition at line 60 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintTypeMissmatch() [3/3]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch (const std::string & key,
const DATA_TYPE requiredType,
const DATA_TYPE actualType,
const std::string & paramDescription = "" 
)
-
-inline
-
- -

Definition at line 62 of file HazelnuppException.h.

-
63  {
-
64  // Generate descriptive error message
-
65  std::stringstream ss;
-
66  ss << "Cannot convert parameter " << key << " to type " << DataTypeToString(requiredType)
-
67  << ". You supplied type: " << DataTypeToString(actualType) << ".";
-
68 
-
69  // Add the parameter description, if provided
-
70  if (paramDescription.length() > 0)
-
71  ss << std::endl << key << " => " << paramDescription;
-
72 
-
73  message = ss.str();
-
74  return;
-
75  };
-
-
-
-
The documentation for this class was generated from the following file: -
- - -
static std::string DataTypeToString(DATA_TYPE type)
Definition: DataType.h:17
- - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.map b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.map deleted file mode 100644 index 46ef196..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.md5 deleted file mode 100644 index 4b128bd..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -1f1eaf8f767f1aa9bb72dbd4a84338b9 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__coll__graph.png deleted file mode 100644 index 72419d4d8791617547f7c87e98c8e11f88c46236..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16543 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 - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.md5 deleted file mode 100644 index 6666277..0000000 --- a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6e5f5d5345e3073deeee322acf58c7e9 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppConstraintTypeMissmatch__inherit__graph.png deleted file mode 100644 index dfea60477e097bf81a4498937eb1998e82a7297c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10733 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 btCxszYZ9`(-yEQbArOxxpGXvly?FZ{y-~ho diff --git a/docs/classHazelnp_1_1HazelnuppException-members.html b/docs/classHazelnp_1_1HazelnuppException-members.html deleted file mode 100644 index 12cc340..0000000 --- a/docs/classHazelnp_1_1HazelnuppException-members.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - - -
-
-
Hazelnp::HazelnuppException Member List
-
-
- -

This is the complete list of members for Hazelnp::HazelnuppException, including all inherited members.

- - - - - -
HazelnuppException()Hazelnp::HazelnuppExceptioninline
HazelnuppException(const std::string &msg)Hazelnp::HazelnuppExceptioninline
messageHazelnp::HazelnuppExceptionprotected
What() constHazelnp::HazelnuppExceptioninline
- - - - diff --git a/docs/classHazelnp_1_1HazelnuppException.html b/docs/classHazelnp_1_1HazelnuppException.html deleted file mode 100644 index 4a1c962..0000000 --- a/docs/classHazelnp_1_1HazelnuppException.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppException Class Reference
-
-
- -

Generic hazelnupp exception. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppException:
-
-
Inheritance graph
- - - - - - - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppException:
-
-
Collaboration graph
- - - - - - -
[legend]
- - - - - - - - - -

-Public Member Functions

 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - -

-Protected Attributes

std::string message
 
-

Detailed Description

-

Generic hazelnupp exception.

- -

Definition at line 11 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppException() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppException::HazelnuppException ()
-
-inline
-
- -

Definition at line 14 of file HazelnuppException.h.

-
14 {};
-
-
-
- -

◆ HazelnuppException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
Hazelnp::HazelnuppException::HazelnuppException (const std::string & msg)
-
-inline
-
- -

Definition at line 15 of file HazelnuppException.h.

-
15 : message{ msg } {};
-
-
-
-

Member Function Documentation

- -

◆ What()

- -
-
- - - - - -
- - - - - - - -
const std::string& Hazelnp::HazelnuppException::What () const
-
-inline
-
- -

Will return an error message.

- -

Definition at line 18 of file HazelnuppException.h.

-
19  {
-
20  return message;
-
21  }
-
-
-
-

Member Data Documentation

- -

◆ message

- -
-
- - - - - -
- - - - -
std::string Hazelnp::HazelnuppException::message
-
-protected
-
- -

Definition at line 24 of file HazelnuppException.h.

- -
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppException__coll__graph.map b/docs/classHazelnp_1_1HazelnuppException__coll__graph.map deleted file mode 100644 index 029a14c..0000000 --- a/docs/classHazelnp_1_1HazelnuppException__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppException__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppException__coll__graph.md5 deleted file mode 100644 index e7d6faf..0000000 --- a/docs/classHazelnp_1_1HazelnuppException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -2c5462b81c42480e2dc96be21e93b854 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppException__coll__graph.png b/docs/classHazelnp_1_1HazelnuppException__coll__graph.png deleted file mode 100644 index ad6d2638d00d5058ab3ba68393bd936018de2611..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8845 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 kIQf6m`dja!_Xhg`+hTKZt11)td - - - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppException__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppException__inherit__graph.md5 deleted file mode 100644 index f8cb4b9..0000000 --- a/docs/classHazelnp_1_1HazelnuppException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -c69be8783237f5d99a8ac4955ca40a9d \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppException__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppException__inherit__graph.png deleted file mode 100644 index 765dcfd1f3de655b1f1a03471598949b2e2eb61e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24773 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 diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException-members.html b/docs/classHazelnp_1_1HazelnuppInvalidKeyException-members.html deleted file mode 100644 index d90b4a1..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException-members.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppInvalidKeyException Member List
-
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException.html b/docs/classHazelnp_1_1HazelnuppInvalidKeyException.html deleted file mode 100644 index 757345b..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppInvalidKeyException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppInvalidKeyException Class Reference
-
-
- -

Gets thrown when an non-existent key gets dereferenced. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppInvalidKeyException:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppInvalidKeyException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppInvalidKeyException ()
 
 HazelnuppInvalidKeyException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when an non-existent key gets dereferenced.

- -

Definition at line 29 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppInvalidKeyException() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException ()
-
-inline
-
- -

Definition at line 32 of file HazelnuppException.h.

-
32 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppInvalidKeyException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException (const std::string & msg)
-
-inline
-
- -

Definition at line 33 of file HazelnuppException.h.

-
33 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.map b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.map deleted file mode 100644 index 94b2ad3..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.md5 deleted file mode 100644 index 7de0395..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -16ffa3b5ee2be4c5c1c81b7d6b31ef6e \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.png b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__coll__graph.png deleted file mode 100644 index 1005044fed892aacb602fa1fed35d257f0c30a34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11844 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 diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.map b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.map deleted file mode 100644 index ac469e9..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.md5 deleted file mode 100644 index 7beb2ba..0000000 --- a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -ec76222368f87411cfe04b269a65aae9 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppInvalidKeyException__inherit__graph.png deleted file mode 100644 index bbeb20c04a08012b8ac2d2e562882832e99f52d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7363 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 DF*x&* diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException-members.html b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException-members.html deleted file mode 100644 index c29c64d..0000000 --- a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException-members.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::HazelnuppValueNotConvertibleException Member List
-
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException.html b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException.html deleted file mode 100644 index 431639f..0000000 --- a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::HazelnuppValueNotConvertibleException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::HazelnuppValueNotConvertibleException Class Reference
-
-
- -

Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for Hazelnp::HazelnuppValueNotConvertibleException:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for Hazelnp::HazelnuppValueNotConvertibleException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppValueNotConvertibleException ()
 
 HazelnuppValueNotConvertibleException (const std::string &msg)
 
- Public Member Functions inherited from Hazelnp::HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from Hazelnp::HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible.

- -

Definition at line 38 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppValueNotConvertibleException() [1/2]

- -
-
- - - - - -
- - - - - - - -
Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException ()
-
-inline
-
- -

Definition at line 41 of file HazelnuppException.h.

-
41 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppValueNotConvertibleException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException (const std::string & msg)
-
-inline
-
- -

Definition at line 42 of file HazelnuppException.h.

-
42 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.map b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.map deleted file mode 100644 index 45a6978..0000000 --- a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.md5 b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.md5 deleted file mode 100644 index 3b39ca0..0000000 --- a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6a4d9f244c4f2ea667c5f6cb28e730f4 \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.png b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__coll__graph.png deleted file mode 100644 index 44df348846f3383836417e8cc983e8a81cb9d870..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11958 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 QAUc}7w2D-* - - - - diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.md5 b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.md5 deleted file mode 100644 index 04e6bea..0000000 --- a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -2c8552ee30b1bf6307565ce38078f9be \ No newline at end of file diff --git a/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.png b/docs/classHazelnp_1_1HazelnuppValueNotConvertibleException__inherit__graph.png deleted file mode 100644 index 951d4d38c7c25b0ac1e18c6e8bb7e83031da51e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7494 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::IntValue Member List
-
-
- -

This is the complete list of members for Hazelnp::IntValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
Deepcopy() const overrideHazelnp::IntValuevirtual
GetAsOsString() const overrideHazelnp::IntValuevirtual
GetDataType() constHazelnp::Value
GetFloat32() const overrideHazelnp::IntValuevirtual
GetFloat64() const overrideHazelnp::IntValuevirtual
GetInt32() const overrideHazelnp::IntValuevirtual
GetInt64() const overrideHazelnp::IntValuevirtual
GetList() const overrideHazelnp::IntValuevirtual
GetString() const overrideHazelnp::IntValuevirtual
GetValue() constHazelnp::IntValue
IntValue(const long long int &value)Hazelnp::IntValue
operator int() constHazelnp::IntValue
operator long long int() constHazelnp::IntValue
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
~IntValue() overrideHazelnp::IntValueinline
~Value()Hazelnp::Valueinlinevirtual
- - - - diff --git a/docs/classHazelnp_1_1IntValue.html b/docs/classHazelnp_1_1IntValue.html deleted file mode 100644 index 5dc7eff..0000000 --- a/docs/classHazelnp_1_1IntValue.html +++ /dev/null @@ -1,582 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::IntValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::IntValue Class Reference
-
-
- -

Specializations for integer values (uses long long int) - More...

- -

#include <IntValue.h>

-
-Inheritance diagram for Hazelnp::IntValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for Hazelnp::IntValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 IntValue (const long long int &value)
 
 ~IntValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const long long int & GetValue () const
 Will return the raw value. More...
 
 operator long long int () const
 
 operator int () const
 
long long int GetInt64 () const override
 Will return the data as a long long int. More...
 
int GetInt32 () const override
 Will return the data as an int. More...
 
long double GetFloat64 () const override
 Will return the data as a long double. More...
 
double GetFloat32 () const override
 Will return the data as a double. More...
 
std::string GetString () const override
 Will return the data as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Hazelnp::Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Hazelnp::Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Hazelnp::Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for integer values (uses long long int)

- -

Definition at line 8 of file IntValue.h.

-

Constructor & Destructor Documentation

- -

◆ IntValue()

- -
-
- - - - - - - - -
IntValue::IntValue (const long long int & value)
-
- -

Definition at line 7 of file IntValue.cpp.

-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
-
-
- -

◆ ~IntValue()

- -
-
- - - - - -
- - - - - - - -
Hazelnp::IntValue::~IntValue ()
-
-inlineoverride
-
- -

Definition at line 12 of file IntValue.h.

-
12 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * IntValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Hazelnp::Value.

- -

Definition at line 15 of file IntValue.cpp.

-
16 {
-
17  return new IntValue(value);
-
18 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string IntValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Hazelnp::Value.

- -

Definition at line 20 of file IntValue.cpp.

-
21 {
-
22  std::stringstream ss;
-
23  ss << "IntValue: " << value;
-
24  return ss.str();
-
25 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double IntValue::GetFloat32 () const
-
-overridevirtual
-
- -

Will return the data as a double.

- -

Implements Hazelnp::Value.

- -

Definition at line 59 of file IntValue.cpp.

-
60 {
-
61  return (double)value;
-
62 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double IntValue::GetFloat64 () const
-
-overridevirtual
-
- -

Will return the data as a long double.

- -

Implements Hazelnp::Value.

- -

Definition at line 54 of file IntValue.cpp.

-
55 {
-
56  return (long double)value;
-
57 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int IntValue::GetInt32 () const
-
-overridevirtual
-
- -

Will return the data as an int.

- -

Implements Hazelnp::Value.

- -

Definition at line 49 of file IntValue.cpp.

-
50 {
-
51  return (int)value;
-
52 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int IntValue::GetInt64 () const
-
-overridevirtual
-
- -

Will return the data as a long long int.

- -

Implements Hazelnp::Value.

- -

Definition at line 44 of file IntValue.cpp.

-
45 {
-
46  return value;
-
47 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & IntValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 72 of file IntValue.cpp.

-
73 {
- -
75 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string IntValue::GetString () const
-
-overridevirtual
-
- -

Will return the data as a string.

- -

Implements Hazelnp::Value.

- -

Definition at line 64 of file IntValue.cpp.

-
65 {
-
66  std::stringstream ss;
-
67  ss << value;
-
68 
-
69  return ss.str();
-
70 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const long long int & IntValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 27 of file IntValue.cpp.

-
28 {
-
29  return value;
-
30 }
-
-
-
- -

◆ operator int()

- -
-
- - - - - - - -
IntValue::operator int () const
-
- -

Definition at line 37 of file IntValue.cpp.

-
38 {
-
39  return (int)value;
-
40 }
-
-
-
- -

◆ operator long long int()

- -
-
- - - - - - - -
IntValue::operator long long int () const
-
- -

Definition at line 32 of file IntValue.cpp.

-
33 {
-
34  return value;
-
35 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
IntValue(const long long int &value)
Definition: IntValue.cpp:7
-
Value(DATA_TYPE type)
Definition: Value.cpp:5
- -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/classHazelnp_1_1IntValue__coll__graph.map b/docs/classHazelnp_1_1IntValue__coll__graph.map deleted file mode 100644 index 346ceea..0000000 --- a/docs/classHazelnp_1_1IntValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1IntValue__coll__graph.md5 b/docs/classHazelnp_1_1IntValue__coll__graph.md5 deleted file mode 100644 index 8f77434..0000000 --- a/docs/classHazelnp_1_1IntValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -d1c122153bd42fb55af0f1031cd38231 \ No newline at end of file diff --git a/docs/classHazelnp_1_1IntValue__coll__graph.png b/docs/classHazelnp_1_1IntValue__coll__graph.png deleted file mode 100644 index 1577bd42a24f645536bb177b82338a9737b5247b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3366 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 - - - diff --git a/docs/classHazelnp_1_1IntValue__inherit__graph.md5 b/docs/classHazelnp_1_1IntValue__inherit__graph.md5 deleted file mode 100644 index 8f77434..0000000 --- a/docs/classHazelnp_1_1IntValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -d1c122153bd42fb55af0f1031cd38231 \ No newline at end of file diff --git a/docs/classHazelnp_1_1IntValue__inherit__graph.png b/docs/classHazelnp_1_1IntValue__inherit__graph.png deleted file mode 100644 index 1577bd42a24f645536bb177b82338a9737b5247b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3366 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::Internal::StringTools Member List
-
-
- -

This is the complete list of members for Hazelnp::Internal::StringTools, including all inherited members.

- - - - - - - - - -
Contains(const std::string &str, const char c)Hazelnp::Internal::StringToolsstatic
IsNumeric(const std::string &str, const bool allowDecimalPoint=false)Hazelnp::Internal::StringToolsstatic
ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)Hazelnp::Internal::StringToolsstatic
Replace(const std::string &str, const char find, const std::string &subst)Hazelnp::Internal::StringToolsstatic
Replace(const std::string &str, const std::string &find, const std::string &subst)Hazelnp::Internal::StringToolsstatic
SplitString(const std::string &str, const char delimiter)Hazelnp::Internal::StringToolsstatic
SplitString(const std::string &str, const std::string &delimiter)Hazelnp::Internal::StringToolsstatic
ToLower(const std::string &str)Hazelnp::Internal::StringToolsstatic
- - - - diff --git a/docs/classHazelnp_1_1Internal_1_1StringTools.html b/docs/classHazelnp_1_1Internal_1_1StringTools.html deleted file mode 100644 index 5033cad..0000000 --- a/docs/classHazelnp_1_1Internal_1_1StringTools.html +++ /dev/null @@ -1,634 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Internal::StringTools Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::Internal::StringTools Class Reference
-
-
- -

Internal helper class. - More...

- -

#include <StringTools.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - -

-Static Public Member Functions

static bool Contains (const std::string &str, const char c)
 Will return wether or not a given char is in a string. More...
 
static std::string Replace (const std::string &str, const char find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static std::string Replace (const std::string &str, const std::string &find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static bool IsNumeric (const std::string &str, const bool allowDecimalPoint=false)
 Will return true if the given string consists only of digits (including signage) More...
 
static bool ParseNumber (const std::string &str, bool &out_isInt, long double &out_number)
 Will convert the number in str to a number. More...
 
static std::vector< std::string > SplitString (const std::string &str, const char delimiter)
 Will split a string by a delimiter char. The delimiter will be excluded! More...
 
static std::vector< std::string > SplitString (const std::string &str, const std::string &delimiter)
 Will split a string by a delimiter string. The delimiter will be excluded! More...
 
static std::string ToLower (const std::string &str)
 Will make a string all lower-case. More...
 
-

Detailed Description

-

Internal helper class.

-

Feel free to use it tho.

- -

Definition at line 13 of file StringTools.h.

-

Member Function Documentation

- -

◆ Contains()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool Internal::StringTools::Contains (const std::string & str,
const char c 
)
-
-static
-
- -

Will return wether or not a given char is in a string.

- -

Definition at line 5 of file StringTools.cpp.

-
6 {
-
7  for (const char& i : str)
-
8  if (i == c)
-
9  return true;
-
10 
-
11  return false;
-
12 }
-
-
-
- -

◆ IsNumeric()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool Internal::StringTools::IsNumeric (const std::string & str,
const bool allowDecimalPoint = false 
)
-
-static
-
- -

Will return true if the given string consists only of digits (including signage)

- -

Definition at line 56 of file StringTools.cpp.

-
57 {
-
58  if (str.length() == 0) return false;
-
59 
-
60  bool alreadyParsedDecimalPoint = false;
-
61  std::size_t digitCount = 0;
-
62 
-
63  for (std::size_t i = 0; i < str.length(); i++)
-
64  {
-
65  if (!(
-
66  ((str[i] >= '0') && (str[i] <= '9')) ||
-
67  ((str[i] == '-') && (i == 0)) ||
-
68  ((str[i] == '.') && (allowDecimalPoint) && (!alreadyParsedDecimalPoint) && (digitCount > 0))
-
69  )) return false;
-
70 
-
71 
-
72  // Here we just have to check for the character. Not for any other conditions.
-
73  // Why? Because if these conditions failed, the function would have already returned false.
-
74  if (((str[i] >= '0') && (str[i] <= '9'))) digitCount++;
-
75  if (str[i] == '.') alreadyParsedDecimalPoint = true;
-
76  }
-
77 
-
78  // Even if we did not find any invalid chars, we should still return false, if we found no digits at all.
-
79  return digitCount > 0;
-
80 }
-
-
-
- -

◆ ParseNumber()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
bool Internal::StringTools::ParseNumber (const std::string & str,
bool & out_isInt,
long double & out_number 
)
-
-static
-
- -

Will convert the number in str to a number.

-


- Returns wether or not the operation was successful.
- Also returns wether the number is an integer, or floating point. If int, cast out_number to int.

- -

Definition at line 82 of file StringTools.cpp.

-
83 {
-
84  bool isDecimal = false;
-
85 
-
86  if (str.length() == 0) return false;
-
87  if (Contains(str, '.')) isDecimal = true;
-
88 
-
89  if (isDecimal)
-
90  {
-
91  try
-
92  {
-
93  out_number = std::stold(str);
-
94  out_isInt = false;
-
95  }
-
96  catch (std::invalid_argument&)
-
97  {
-
98  return false;
-
99  }
-
100  catch (std::out_of_range&)
-
101  {
-
102  return false;
-
103  }
-
104  }
-
105  else
-
106  {
-
107  try
-
108  {
-
109  out_number = (long double)std::stoll(str);
-
110  out_isInt = true;
-
111  }
-
112  catch (std::invalid_argument&)
-
113  {
-
114  return false;
-
115  }
-
116  catch (std::out_of_range&)
-
117  {
-
118  return false;
-
119  }
-
120  }
-
121 
-
122  return true;
-
123 }
-
-
-
- -

◆ Replace() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string Internal::StringTools::Replace (const std::string & str,
const char find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 14 of file StringTools.cpp.

-
15 {
-
16  std::stringstream ss;
-
17 
-
18  for (std::size_t i = 0; i < str.length(); i++)
-
19  {
-
20  if (str[i] != find) ss << str[i];
-
21  else ss << subst;
-
22  }
-
23 
-
24  return ss.str();
-
25 }
-
-
-
- -

◆ Replace() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string Internal::StringTools::Replace (const std::string & str,
const std::string & find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 27 of file StringTools.cpp.

-
28 {
-
29  if (find.length() == 0) return str;
-
30 
-
31  std::stringstream ss;
-
32 
-
33  std::size_t posFound = 0;
-
34  std::size_t lastFound = 0;
-
35 
-
36  while (posFound != std::string::npos)
-
37  {
-
38  lastFound = posFound;
-
39  posFound = str.find(find, posFound);
-
40 
-
41  if (posFound != std::string::npos)
-
42  {
-
43  ss << str.substr(lastFound, posFound - lastFound) << subst;
-
44  posFound += find.length();
-
45  }
-
46  else
-
47  {
-
48  ss << str.substr(lastFound, (str.length()) - lastFound);
-
49  }
-
50  }
-
51 
-
52  return ss.str();
-
53 }
-
-
-
- -

◆ SplitString() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > Internal::StringTools::SplitString (const std::string & str,
const char delimiter 
)
-
-static
-
- -

Will split a string by a delimiter char. The delimiter will be excluded!

- -

Definition at line 125 of file StringTools.cpp.

-
126 {
-
127  if (str.length() == 0) return std::vector<std::string>();
-
128 
-
129  return SplitString(str, delimiter);
-
130 }
-
-
-
- -

◆ SplitString() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > Internal::StringTools::SplitString (const std::string & str,
const std::string & delimiter 
)
-
-static
-
- -

Will split a string by a delimiter string. The delimiter will be excluded!

- -

Definition at line 132 of file StringTools.cpp.

-
133 {
-
134  if (str.length() == 0) return std::vector<std::string>();
-
135 
-
136  std::vector<std::string> parts;
-
137 
-
138  if (delimiter.length() == 0) // If the delimiter is "" (empty), just split between every single char. Not useful, but logical
-
139  {
-
140  for (std::size_t i = 0; i < str.length(); i++)
-
141  {
-
142  parts.push_back(std::string({ str[i] }));
-
143  }
-
144  return parts;
-
145  }
-
146 
-
147  std::size_t posFound = 0;
-
148  std::size_t lastFound = 0;
-
149 
-
150  while (posFound != std::string::npos)
-
151  {
-
152  lastFound = posFound;
-
153  posFound = str.find(delimiter, posFound);
-
154 
-
155  std::string found;
-
156 
-
157  if (posFound != std::string::npos)
-
158  {
-
159  found = str.substr(lastFound, posFound - lastFound);
-
160  posFound += delimiter.length();
-
161  }
-
162  else
-
163  {
-
164  found = str.substr(lastFound, str.length() - lastFound);
-
165  }
-
166 
-
167  parts.push_back(found);
-
168  }
-
169 
-
170  return parts;
-
171 }
-
-
-
- -

◆ ToLower()

- -
-
- - - - - -
- - - - - - - - -
std::string Internal::StringTools::ToLower (const std::string & str)
-
-static
-
- -

Will make a string all lower-case.

- -

Definition at line 173 of file StringTools.cpp.

-
174 {
-
175  std::stringstream ss;
-
176  for (std::size_t i = 0; i < str.length(); i++)
-
177  {
-
178  if ((str[i] >= 'A') && (str[i] <= 'Z')) ss << (char)(((int)str[i]) + 32);
-
179  else if (str[i] == -60) ss << (char)-28; // AE => ae
-
180  else if (str[i] == -42) ss << (char)-10; // OE => oe
-
181  else if (str[i] == -36) ss << (char)-4; // UE => ue
-
182  else ss << str[i];
-
183  }
-
184 
-
185  return ss.str();
-
186 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
static bool Contains(const std::string &str, const char c)
Will return wether or not a given char is in a string.
Definition: StringTools.cpp:5
-
static std::vector< std::string > SplitString(const std::string &str, const char delimiter)
Will split a string by a delimiter char. The delimiter will be excluded!
- - - - diff --git a/docs/classHazelnp_1_1ListValue-members.html b/docs/classHazelnp_1_1ListValue-members.html deleted file mode 100644 index b157050..0000000 --- a/docs/classHazelnp_1_1ListValue-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::ListValue Member List
-
-
- -

This is the complete list of members for Hazelnp::ListValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
AddValue(const Value *value)Hazelnp::ListValue
Deepcopy() const overrideHazelnp::ListValuevirtual
GetAsOsString() const overrideHazelnp::ListValuevirtual
GetDataType() constHazelnp::Value
GetFloat32() const overrideHazelnp::ListValuevirtual
GetFloat64() const overrideHazelnp::ListValuevirtual
GetInt32() const overrideHazelnp::ListValuevirtual
GetInt64() const overrideHazelnp::ListValuevirtual
GetList() const overrideHazelnp::ListValuevirtual
GetString() const overrideHazelnp::ListValuevirtual
GetValue() constHazelnp::ListValue
ListValue()Hazelnp::ListValue
operator std::vector< Value * >() constHazelnp::ListValue
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
~ListValue() overrideHazelnp::ListValue
~Value()Hazelnp::Valueinlinevirtual
- - - - diff --git a/docs/classHazelnp_1_1ListValue.html b/docs/classHazelnp_1_1ListValue.html deleted file mode 100644 index ebc116e..0000000 --- a/docs/classHazelnp_1_1ListValue.html +++ /dev/null @@ -1,609 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::ListValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::ListValue Class Reference
-
-
- -

Specializations for list values (uses std::vector<Value*>) - More...

- -

#include <ListValue.h>

-
-Inheritance diagram for Hazelnp::ListValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for Hazelnp::ListValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 ListValue ()
 
 ~ListValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
void AddValue (const Value *value)
 Will add this value to the list. More...
 
const std::vector< Value * > & GetValue () const
 Will return the raw value. More...
 
 operator std::vector< Value * > () const
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
const std::vector< Value * > & GetList () const override
 Will return this values list. More...
 
- Public Member Functions inherited from Hazelnp::Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Hazelnp::Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Hazelnp::Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for list values (uses std::vector<Value*>)

- -

Definition at line 9 of file ListValue.h.

-

Constructor & Destructor Documentation

- -

◆ ListValue()

- -
-
- - - - - - - -
ListValue::ListValue ()
-
- -

Definition at line 7 of file ListValue.cpp.

-
7  :
- -
9 {
-
10  return;
-
11 }
-
-
-
- -

◆ ~ListValue()

- -
-
- - - - - -
- - - - - - - -
ListValue::~ListValue ()
-
-override
-
- -

Definition at line 13 of file ListValue.cpp.

-
14 {
-
15  for (Value* val : value)
-
16  delete val;
-
17 
-
18  value.clear();
-
19 
-
20  return;
-
21 }
-
-
-
-

Member Function Documentation

- -

◆ AddValue()

- -
-
- - - - - - - - -
void ListValue::AddValue (const Valuevalue)
-
- -

Will add this value to the list.

- -

Definition at line 33 of file ListValue.cpp.

-
34 {
-
35  this->value.emplace_back(value->Deepcopy());
-
36  return;
-
37 }
-
-
-
- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * ListValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Hazelnp::Value.

- -

Definition at line 23 of file ListValue.cpp.

-
24 {
-
25  ListValue* newList = new ListValue();
-
26 
-
27  for (const Value* val : value)
-
28  newList->AddValue(val);
-
29 
-
30  return newList;
-
31 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string ListValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Hazelnp::Value.

- -

Definition at line 44 of file ListValue.cpp.

-
45 {
-
46  std::stringstream ss;
-
47 
-
48  ss << "ListValue: [";
-
49 
-
50  for (const Value* val : value)
-
51  {
-
52  ss << *val;
-
53  if (val != value.back())
-
54  ss << ", ";
-
55  }
-
56 
-
57  ss << "]";
-
58 
-
59  return ss.str();
-
60 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double ListValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 84 of file ListValue.cpp.

-
85 {
- -
87 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double ListValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 79 of file ListValue.cpp.

-
80 {
- -
82 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int ListValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 74 of file ListValue.cpp.

-
75 {
- -
77 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int ListValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 69 of file ListValue.cpp.

-
70 {
- -
72 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & ListValue::GetList () const
-
-overridevirtual
-
- -

Will return this values list.

- -

Implements Hazelnp::Value.

- -

Definition at line 94 of file ListValue.cpp.

-
95 {
-
96  return value;
-
97 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string ListValue::GetString () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 89 of file ListValue.cpp.

-
90 {
- -
92 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const std::vector< Value * > & ListValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 39 of file ListValue.cpp.

-
40 {
-
41  return value;
-
42 }
-
-
-
- -

◆ operator std::vector< Value * >()

- -
-
- - - - - - - -
ListValue::operator std::vector< Value * > () const
-
- -

Definition at line 62 of file ListValue.cpp.

-
63 {
-
64  return value;
-
65 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Abstract class for values.
Definition: Value.h:10
- -
Value(DATA_TYPE type)
Definition: Value.cpp:5
-
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:33
- -
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:9
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/classHazelnp_1_1ListValue__coll__graph.map b/docs/classHazelnp_1_1ListValue__coll__graph.map deleted file mode 100644 index 058621e..0000000 --- a/docs/classHazelnp_1_1ListValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1ListValue__coll__graph.md5 b/docs/classHazelnp_1_1ListValue__coll__graph.md5 deleted file mode 100644 index 92755e4..0000000 --- a/docs/classHazelnp_1_1ListValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6921e127b70abed544fbb3e125f3d3b2 \ No newline at end of file diff --git a/docs/classHazelnp_1_1ListValue__coll__graph.png b/docs/classHazelnp_1_1ListValue__coll__graph.png deleted file mode 100644 index 108f96b1ae35707d55bbfe072693c84839ee7d77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3226 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 - - - diff --git a/docs/classHazelnp_1_1ListValue__inherit__graph.md5 b/docs/classHazelnp_1_1ListValue__inherit__graph.md5 deleted file mode 100644 index 92755e4..0000000 --- a/docs/classHazelnp_1_1ListValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6921e127b70abed544fbb3e125f3d3b2 \ No newline at end of file diff --git a/docs/classHazelnp_1_1ListValue__inherit__graph.png b/docs/classHazelnp_1_1ListValue__inherit__graph.png deleted file mode 100644 index 108f96b1ae35707d55bbfe072693c84839ee7d77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3226 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::Parameter Member List
-
-
- -

This is the complete list of members for Hazelnp::Parameter, including all inherited members.

- - - - - - -
GetValue() constHazelnp::Parameter
Key() constHazelnp::Parameter
operator<<(std::ostream &os, const Parameter &p)Hazelnp::Parameterfriend
Parameter(const std::string &key, const Value *value)Hazelnp::Parameterexplicit
~Parameter()Hazelnp::Parameter
- - - - diff --git a/docs/classHazelnp_1_1Parameter.html b/docs/classHazelnp_1_1Parameter.html deleted file mode 100644 index b5a6920..0000000 --- a/docs/classHazelnp_1_1Parameter.html +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Parameter Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::Parameter Class Reference
-
-
- -

#include <Parameter.h>

- - - - - - - - - - - - -

-Public Member Functions

 Parameter (const std::string &key, const Value *value)
 
 ~Parameter ()
 
const std::string & Key () const
 Will return the key of this parameter. More...
 
const ValueGetValue () const
 Will return the value of this parameter. More...
 
- - - -

-Friends

std::ostream & operator<< (std::ostream &os, const Parameter &p)
 
-

Detailed Description

-
-

Definition at line 8 of file Parameter.h.

-

Constructor & Destructor Documentation

- -

◆ Parameter()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
Parameter::Parameter (const std::string & key,
const Valuevalue 
)
-
-explicit
-
- -

Definition at line 5 of file Parameter.cpp.

-
6  :
-
7  key{ key }
-
8 {
-
9  this->value = value->Deepcopy();
-
10  return;
-
11 }
-
-
-
- -

◆ ~Parameter()

- -
-
- - - - - - - -
Parameter::~Parameter ()
-
- -

Definition at line 13 of file Parameter.cpp.

-
14 {
-
15  delete value;
-
16  value = nullptr;
-
17 
-
18  return;
-
19 }
-
-
-
-

Member Function Documentation

- -

◆ GetValue()

- -
-
- - - - - - - -
const ::Value * Parameter::GetValue () const
-
- -

Will return the value of this parameter.

- -

Definition at line 26 of file Parameter.cpp.

-
27 {
-
28  return value;
-
29 }
-
-
-
- -

◆ Key()

- -
-
- - - - - - - -
const std::string & Parameter::Key () const
-
- -

Will return the key of this parameter.

- -

Definition at line 21 of file Parameter.cpp.

-
22 {
-
23  return key;
-
24 }
-
-
-
-

Friends And Related Function Documentation

- -

◆ operator<<

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::ostream& operator<< (std::ostream & os,
const Parameterp 
)
-
-friend
-
- -

Definition at line 20 of file Parameter.h.

-
21  {
-
22  return os << "{ Key: \"" << p.key << "\" -> " << *p.value << " }";
-
23  }
-
-
-
-
The documentation for this class was generated from the following files: -
-
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
- - - - diff --git a/docs/classHazelnp_1_1StringTools-members.html b/docs/classHazelnp_1_1StringTools-members.html deleted file mode 100644 index 1e3559d..0000000 --- a/docs/classHazelnp_1_1StringTools-members.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::StringTools Member List
-
-
- -

This is the complete list of members for Hazelnp::StringTools, including all inherited members.

- - - - - - - - - -
Contains(const std::string &str, const char c)Hazelnp::StringToolsstatic
IsNumeric(const std::string &str, const bool allowDecimalPoint=false)Hazelnp::StringToolsstatic
ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)Hazelnp::StringToolsstatic
Replace(const std::string &str, const char find, const std::string &subst)Hazelnp::StringToolsstatic
Replace(const std::string &str, const std::string &find, const std::string &subst)Hazelnp::StringToolsstatic
SplitString(const std::string &str, const char delimiter)Hazelnp::StringToolsstatic
SplitString(const std::string &str, const std::string &delimiter)Hazelnp::StringToolsstatic
ToLower(const std::string &str)Hazelnp::StringToolsstatic
- - - - diff --git a/docs/classHazelnp_1_1StringTools.html b/docs/classHazelnp_1_1StringTools.html deleted file mode 100644 index 0847128..0000000 --- a/docs/classHazelnp_1_1StringTools.html +++ /dev/null @@ -1,634 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::StringTools Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::StringTools Class Reference
-
-
- -

Internal helper class. - More...

- -

#include <StringTools.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - -

-Static Public Member Functions

static bool Contains (const std::string &str, const char c)
 Will return wether or not a given char is in a string. More...
 
static std::string Replace (const std::string &str, const char find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static std::string Replace (const std::string &str, const std::string &find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static bool IsNumeric (const std::string &str, const bool allowDecimalPoint=false)
 Will return true if the given string consists only of digits (including signage) More...
 
static bool ParseNumber (const std::string &str, bool &out_isInt, long double &out_number)
 Will convert the number in str to a number. More...
 
static std::vector< std::string > SplitString (const std::string &str, const char delimiter)
 Will split a string by a delimiter char. The delimiter will be excluded! More...
 
static std::vector< std::string > SplitString (const std::string &str, const std::string &delimiter)
 Will split a string by a delimiter string. The delimiter will be excluded! More...
 
static std::string ToLower (const std::string &str)
 Will make a string all lower-case. More...
 
-

Detailed Description

-

Internal helper class.

-

Feel free to use it tho.

- -

Definition at line 11 of file StringTools.h.

-

Member Function Documentation

- -

◆ Contains()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool StringTools::Contains (const std::string & str,
const char c 
)
-
-static
-
- -

Will return wether or not a given char is in a string.

- -

Definition at line 5 of file StringTools.cpp.

-
6 {
-
7  for (const char& i : str)
-
8  if (i == c)
-
9  return true;
-
10 
-
11  return false;
-
12 }
-
-
-
- -

◆ IsNumeric()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool StringTools::IsNumeric (const std::string & str,
const bool allowDecimalPoint = false 
)
-
-static
-
- -

Will return true if the given string consists only of digits (including signage)

- -

Definition at line 56 of file StringTools.cpp.

-
57 {
-
58  if (str.length() == 0) return false;
-
59 
-
60  bool alreadyParsedDecimalPoint = false;
-
61  std::size_t digitCount = 0;
-
62 
-
63  for (std::size_t i = 0; i < str.length(); i++)
-
64  {
-
65  if (!(
-
66  ((str[i] >= '0') && (str[i] <= '9')) ||
-
67  ((str[i] == '-') && (i == 0)) ||
-
68  ((str[i] == '.') && (allowDecimalPoint) && (!alreadyParsedDecimalPoint) && (digitCount > 0))
-
69  )) return false;
-
70 
-
71 
-
72  // Here we just have to check for the character. Not for any other conditions.
-
73  // Why? Because if these conditions failed, the function would have already returned false.
-
74  if (((str[i] >= '0') && (str[i] <= '9'))) digitCount++;
-
75  if (str[i] == '.') alreadyParsedDecimalPoint = true;
-
76  }
-
77 
-
78  // Even if we did not find any invalid chars, we should still return false, if we found no digits at all.
-
79  return digitCount > 0;
-
80 }
-
-
-
- -

◆ ParseNumber()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
bool StringTools::ParseNumber (const std::string & str,
bool & out_isInt,
long double & out_number 
)
-
-static
-
- -

Will convert the number in str to a number.

-


- Returns wether or not the operation was successful.
- Also returns wether the number is an integer, or floating point. If int, cast out_number to int.

- -

Definition at line 82 of file StringTools.cpp.

-
83 {
-
84  bool isDecimal = false;
-
85 
-
86  if (str.length() == 0) return false;
-
87  if (Contains(str, '.')) isDecimal = true;
-
88 
-
89  if (isDecimal)
-
90  {
-
91  try
-
92  {
-
93  out_number = std::stold(str);
-
94  out_isInt = false;
-
95  }
-
96  catch (std::invalid_argument&)
-
97  {
-
98  return false;
-
99  }
-
100  catch (std::out_of_range&)
-
101  {
-
102  return false;
-
103  }
-
104  }
-
105  else
-
106  {
-
107  try
-
108  {
-
109  out_number = (long double)std::stoll(str);
-
110  out_isInt = true;
-
111  }
-
112  catch (std::invalid_argument&)
-
113  {
-
114  return false;
-
115  }
-
116  catch (std::out_of_range&)
-
117  {
-
118  return false;
-
119  }
-
120  }
-
121 
-
122  return true;
-
123 }
-
-
-
- -

◆ Replace() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string StringTools::Replace (const std::string & str,
const char find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 14 of file StringTools.cpp.

-
15 {
-
16  std::stringstream ss;
-
17 
-
18  for (std::size_t i = 0; i < str.length(); i++)
-
19  {
-
20  if (str[i] != find) ss << str[i];
-
21  else ss << subst;
-
22  }
-
23 
-
24  return ss.str();
-
25 }
-
-
-
- -

◆ Replace() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string StringTools::Replace (const std::string & str,
const std::string & find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 27 of file StringTools.cpp.

-
28 {
-
29  if (find.length() == 0) return str;
-
30 
-
31  std::stringstream ss;
-
32 
-
33  std::size_t posFound = 0;
-
34  std::size_t lastFound = 0;
-
35 
-
36  while (posFound != std::string::npos)
-
37  {
-
38  lastFound = posFound;
-
39  posFound = str.find(find, posFound);
-
40 
-
41  if (posFound != std::string::npos)
-
42  {
-
43  ss << str.substr(lastFound, posFound - lastFound) << subst;
-
44  posFound += find.length();
-
45  }
-
46  else
-
47  {
-
48  ss << str.substr(lastFound, (str.length()) - lastFound);
-
49  }
-
50  }
-
51 
-
52  return ss.str();
-
53 }
-
-
-
- -

◆ SplitString() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > StringTools::SplitString (const std::string & str,
const char delimiter 
)
-
-static
-
- -

Will split a string by a delimiter char. The delimiter will be excluded!

- -

Definition at line 125 of file StringTools.cpp.

-
126 {
-
127  if (str.length() == 0) return std::vector<std::string>();
-
128 
-
129  return SplitString(str, delimiter);
-
130 }
-
-
-
- -

◆ SplitString() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > StringTools::SplitString (const std::string & str,
const std::string & delimiter 
)
-
-static
-
- -

Will split a string by a delimiter string. The delimiter will be excluded!

- -

Definition at line 132 of file StringTools.cpp.

-
133 {
-
134  if (str.length() == 0) return std::vector<std::string>();
-
135 
-
136  std::vector<std::string> parts;
-
137 
-
138  if (delimiter.length() == 0) // If the delimiter is "" (empty), just split between every single char. Not useful, but logical
-
139  {
-
140  for (std::size_t i = 0; i < str.length(); i++)
-
141  {
-
142  parts.push_back(std::string({ str[i] }));
-
143  }
-
144  return parts;
-
145  }
-
146 
-
147  std::size_t posFound = 0;
-
148  std::size_t lastFound = 0;
-
149 
-
150  while (posFound != std::string::npos)
-
151  {
-
152  lastFound = posFound;
-
153  posFound = str.find(delimiter, posFound);
-
154 
-
155  std::string found;
-
156 
-
157  if (posFound != std::string::npos)
-
158  {
-
159  found = str.substr(lastFound, posFound - lastFound);
-
160  posFound += delimiter.length();
-
161  }
-
162  else
-
163  {
-
164  found = str.substr(lastFound, str.length() - lastFound);
-
165  }
-
166 
-
167  parts.push_back(found);
-
168  }
-
169 
-
170  return parts;
-
171 }
-
-
-
- -

◆ ToLower()

- -
-
- - - - - -
- - - - - - - - -
std::string StringTools::ToLower (const std::string & str)
-
-static
-
- -

Will make a string all lower-case.

- -

Definition at line 173 of file StringTools.cpp.

-
174 {
-
175  std::stringstream ss;
-
176  for (std::size_t i = 0; i < str.length(); i++)
-
177  {
-
178  if ((str[i] >= 'A') && (str[i] <= 'Z')) ss << (char)(((int)str[i]) + 32);
-
179  else if (str[i] == -60) ss << (char)-28; // AE => ae
-
180  else if (str[i] == -42) ss << (char)-10; // OE => oe
-
181  else if (str[i] == -36) ss << (char)-4; // UE => ue
-
182  else ss << str[i];
-
183  }
-
184 
-
185  return ss.str();
-
186 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
static bool Contains(const std::string &str, const char c)
Will return wether or not a given char is in a string.
Definition: StringTools.cpp:5
-
static std::vector< std::string > SplitString(const std::string &str, const char delimiter)
Will split a string by a delimiter char. The delimiter will be excluded!
- - - - diff --git a/docs/classHazelnp_1_1StringValue-members.html b/docs/classHazelnp_1_1StringValue-members.html deleted file mode 100644 index f1e3500..0000000 --- a/docs/classHazelnp_1_1StringValue-members.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::StringValue Member List
-
-
- -

This is the complete list of members for Hazelnp::StringValue, including all inherited members.

- - - - - - - - - - - - - - - - - -
Deepcopy() const overrideHazelnp::StringValuevirtual
GetAsOsString() const overrideHazelnp::StringValuevirtual
GetDataType() constHazelnp::Value
GetFloat32() const overrideHazelnp::StringValuevirtual
GetFloat64() const overrideHazelnp::StringValuevirtual
GetInt32() const overrideHazelnp::StringValuevirtual
GetInt64() const overrideHazelnp::StringValuevirtual
GetList() const overrideHazelnp::StringValuevirtual
GetString() const overrideHazelnp::StringValuevirtual
GetValue() constHazelnp::StringValue
operator std::string() constHazelnp::StringValue
StringValue(const std::string &value)Hazelnp::StringValue
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
~StringValue() overrideHazelnp::StringValueinline
~Value()Hazelnp::Valueinlinevirtual
- - - - diff --git a/docs/classHazelnp_1_1StringValue.html b/docs/classHazelnp_1_1StringValue.html deleted file mode 100644 index 071170c..0000000 --- a/docs/classHazelnp_1_1StringValue.html +++ /dev/null @@ -1,555 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::StringValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::StringValue Class Reference
-
-
- -

Specializations for string values (uses std::string) - More...

- -

#include <StringValue.h>

-
-Inheritance diagram for Hazelnp::StringValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for Hazelnp::StringValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 StringValue (const std::string &value)
 
 ~StringValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const std::string & GetValue () const
 Will return the raw value. More...
 
 operator std::string () const
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Will return this value as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Hazelnp::Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Hazelnp::Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Hazelnp::Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for string values (uses std::string)

- -

Definition at line 9 of file StringValue.h.

-

Constructor & Destructor Documentation

- -

◆ StringValue()

- -
-
- - - - - - - - -
StringValue::StringValue (const std::string & value)
-
- -

Definition at line 7 of file StringValue.cpp.

-
8  :
- -
10  value { value }
-
11 {
-
12  return;
-
13 }
-
-
-
- -

◆ ~StringValue()

- -
-
- - - - - -
- - - - - - - -
Hazelnp::StringValue::~StringValue ()
-
-inlineoverride
-
- -

Definition at line 13 of file StringValue.h.

-
13 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * StringValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Hazelnp::Value.

- -

Definition at line 15 of file StringValue.cpp.

-
16 {
-
17  return new StringValue(value);
-
18 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string StringValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Hazelnp::Value.

- -

Definition at line 20 of file StringValue.cpp.

-
21 {
-
22  std::stringstream ss;
-
23  ss << "StringValue: " << value;
-
24  return ss.str();
-
25 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double StringValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 54 of file StringValue.cpp.

-
55 {
- -
57 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double StringValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 49 of file StringValue.cpp.

-
50 {
- -
52 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int StringValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 44 of file StringValue.cpp.

-
45 {
- -
47 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int StringValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 39 of file StringValue.cpp.

-
40 {
- -
42 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & StringValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 64 of file StringValue.cpp.

-
65 {
- -
67 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string StringValue::GetString () const
-
-overridevirtual
-
- -

Will return this value as a string.

- -

Implements Hazelnp::Value.

- -

Definition at line 59 of file StringValue.cpp.

-
60 {
-
61  return value;
-
62 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const std::string & StringValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 27 of file StringValue.cpp.

-
28 {
-
29  return value;
-
30 }
-
-
-
- -

◆ operator std::string()

- -
-
- - - - - - - -
StringValue::operator std::string () const
-
- -

Definition at line 32 of file StringValue.cpp.

-
33 {
-
34  return value;
-
35 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
StringValue(const std::string &value)
Definition: StringValue.cpp:7
-
Value(DATA_TYPE type)
Definition: Value.cpp:5
- -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/classHazelnp_1_1StringValue__coll__graph.map b/docs/classHazelnp_1_1StringValue__coll__graph.map deleted file mode 100644 index 3296184..0000000 --- a/docs/classHazelnp_1_1StringValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1StringValue__coll__graph.md5 b/docs/classHazelnp_1_1StringValue__coll__graph.md5 deleted file mode 100644 index 09c0ce8..0000000 --- a/docs/classHazelnp_1_1StringValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -4997cc0c07834e05bdfd8f7c9c787db0 \ No newline at end of file diff --git a/docs/classHazelnp_1_1StringValue__coll__graph.png b/docs/classHazelnp_1_1StringValue__coll__graph.png deleted file mode 100644 index d04958c7a69964777b46ad0ba41d87e02d6f7abe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3473 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 HUBrI?aTvZ- diff --git a/docs/classHazelnp_1_1StringValue__inherit__graph.map b/docs/classHazelnp_1_1StringValue__inherit__graph.map deleted file mode 100644 index 3296184..0000000 --- a/docs/classHazelnp_1_1StringValue__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1StringValue__inherit__graph.md5 b/docs/classHazelnp_1_1StringValue__inherit__graph.md5 deleted file mode 100644 index 09c0ce8..0000000 --- a/docs/classHazelnp_1_1StringValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -4997cc0c07834e05bdfd8f7c9c787db0 \ No newline at end of file diff --git a/docs/classHazelnp_1_1StringValue__inherit__graph.png b/docs/classHazelnp_1_1StringValue__inherit__graph.png deleted file mode 100644 index d04958c7a69964777b46ad0ba41d87e02d6f7abe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3473 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 HUBrI?aTvZ- diff --git a/docs/classHazelnp_1_1Value-members.html b/docs/classHazelnp_1_1Value-members.html deleted file mode 100644 index 42ae4ab..0000000 --- a/docs/classHazelnp_1_1Value-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::Value Member List
-
-
- -

This is the complete list of members for Hazelnp::Value, including all inherited members.

- - - - - - - - - - - - - - -
Deepcopy() const =0Hazelnp::Valuepure virtual
GetAsOsString() const =0Hazelnp::Valuepure virtual
GetDataType() constHazelnp::Value
GetFloat32() const =0Hazelnp::Valuepure virtual
GetFloat64() const =0Hazelnp::Valuepure virtual
GetInt32() const =0Hazelnp::Valuepure virtual
GetInt64() const =0Hazelnp::Valuepure virtual
GetList() const =0Hazelnp::Valuepure virtual
GetString() const =0Hazelnp::Valuepure virtual
operator<<(std::ostream &os, const Value &v)Hazelnp::Valuefriend
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
~Value()Hazelnp::Valueinlinevirtual
- - - - diff --git a/docs/classHazelnp_1_1Value.html b/docs/classHazelnp_1_1Value.html deleted file mode 100644 index 4b8a091..0000000 --- a/docs/classHazelnp_1_1Value.html +++ /dev/null @@ -1,556 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Value Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::Value Class Referenceabstract
-
-
- -

Abstract class for values. - More...

- -

#include <Value.h>

-
-Inheritance diagram for Hazelnp::Value:
-
-
Inheritance graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

virtual ~Value ()
 
virtual ValueDeepcopy () const =0
 Will return a deeopopy of this object. More...
 
virtual std::string GetAsOsString () const =0
 Will return a string suitable for an std::ostream. More...
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
virtual long long int GetInt64 () const =0
 Will attempt to return the integer data (long long) More...
 
virtual int GetInt32 () const =0
 Will attempt to return the integer data (int) More...
 
virtual long double GetFloat64 () const =0
 Will attempt to return the floating-point data (long double) More...
 
virtual double GetFloat32 () const =0
 Will attempt to return the floating-point data (double) More...
 
virtual std::string GetString () const =0
 Will attempt to return the string-data. More...
 
virtual const std::vector< Value * > & GetList () const =0
 Will attempt to return the list-data. More...
 
- - - -

-Protected Member Functions

 Value (DATA_TYPE type)
 
- - - -

-Protected Attributes

DATA_TYPE type
 
- - - -

-Friends

std::ostream & operator<< (std::ostream &os, const Value &v)
 
-

Detailed Description

-

Abstract class for values.

- -

Definition at line 10 of file Value.h.

-

Constructor & Destructor Documentation

- -

◆ ~Value()

- -
-
- - - - - -
- - - - - - - -
virtual Hazelnp::Value::~Value ()
-
-inlinevirtual
-
- -

Definition at line 13 of file Value.h.

-
13 {};
-
-
-
- -

◆ Value()

- -
-
- - - - - -
- - - - - - - - -
Value::Value (DATA_TYPE type)
-
-protected
-
- -

Definition at line 5 of file Value.cpp.

-
6  :
-
7  type{ type }
-
8 {
-
9  return;
-
10 }
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
virtual Value* Hazelnp::Value::Deepcopy () const
-
-pure virtual
-
- -

Will return a deeopopy of this object.

- -

Implemented in Hazelnp::FloatValue, Hazelnp::ListValue, Hazelnp::StringValue, Hazelnp::IntValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
virtual std::string Hazelnp::Value::GetAsOsString () const
-
-pure virtual
-
- -

Will return a string suitable for an std::ostream.

- -

Implemented in Hazelnp::FloatValue, Hazelnp::ListValue, Hazelnp::StringValue, Hazelnp::IntValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetDataType()

- -
-
- - - - - - - -
DATA_TYPE Value::GetDataType () const
-
- -

Will return the data type of this value.

- -

Definition at line 12 of file Value.cpp.

-
13 {
-
14  return type;
-
15 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
virtual double Hazelnp::Value::GetFloat32 () const
-
-pure virtual
-
- -

Will attempt to return the floating-point data (double)

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
virtual long double Hazelnp::Value::GetFloat64 () const
-
-pure virtual
-
- -

Will attempt to return the floating-point data (long double)

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
virtual int Hazelnp::Value::GetInt32 () const
-
-pure virtual
-
- -

Will attempt to return the integer data (int)

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
virtual long long int Hazelnp::Value::GetInt64 () const
-
-pure virtual
-
- -

Will attempt to return the integer data (long long)

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
virtual const std::vector<Value*>& Hazelnp::Value::GetList () const
-
-pure virtual
-
- -

Will attempt to return the list-data.

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
virtual std::string Hazelnp::Value::GetString () const
-
-pure virtual
-
- -

Will attempt to return the string-data.

- -

Implemented in Hazelnp::ListValue, Hazelnp::FloatValue, Hazelnp::IntValue, Hazelnp::StringValue, and Hazelnp::VoidValue.

- -
-
-

Friends And Related Function Documentation

- -

◆ operator<<

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::ostream& operator<< (std::ostream & os,
const Valuev 
)
-
-friend
-
- -

Definition at line 24 of file Value.h.

-
25  {
-
26  return os << v.GetAsOsString();
-
27  }
-
-
-
-

Member Data Documentation

- -

◆ type

- -
-
- - - - - -
- - - - -
DATA_TYPE Hazelnp::Value::type
-
-protected
-
- -

Definition at line 48 of file Value.h.

- -
-
-
The documentation for this class was generated from the following files: -
-
DATA_TYPE type
Definition: Value.h:48
- - - - diff --git a/docs/classHazelnp_1_1Value__inherit__graph.map b/docs/classHazelnp_1_1Value__inherit__graph.map deleted file mode 100644 index d1f45d5..0000000 --- a/docs/classHazelnp_1_1Value__inherit__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnp_1_1Value__inherit__graph.md5 b/docs/classHazelnp_1_1Value__inherit__graph.md5 deleted file mode 100644 index 806245e..0000000 --- a/docs/classHazelnp_1_1Value__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -8c449cea971b5762dc13a0d94fcc64bd \ No newline at end of file diff --git a/docs/classHazelnp_1_1Value__inherit__graph.png b/docs/classHazelnp_1_1Value__inherit__graph.png deleted file mode 100644 index fe2031aaced5de121cc932c451bb583fa6105c75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16263 zcmcJ$1yoh-)<3$XQ5vMX4N6kFLrD=tK`9YwP`XP(5TrwCq*J=P1VQPL20^+7ssG%k z&-uPH{&(DQFYg$aYYS&-oe6v@7}CG zf5QJTjP5JQA}*2tr8Zv4c zRE%Comy%+>;u|1oDOGAaVi7{AVf=0Bf+Rw*)F+koCTTN$x*ajUk(#93^N5@24>C8; zF6jFm(9yJGKh>wKOsp8LD7&oS)PGF4`#PYF8wXVyi{UF_TZ|K$Kfxfa#vZdj!436) z`Of}D1RRZU?1_4h*EcYLkJDC?GL)@WHCgH5;Xz166|%5k6#NUm6jfCN z!o$__I~cD;i(O-*7HA4Ebz0_)6-c;zJ^lp+8(ZH^?kfc zOpS->E=~s*{B3Zsb*90MrIMJ42t_;vUsH3as;Erd)z#I~1JzrR86~jIkl6lpcuQUC zl2W&Y>PMj~0fy>YT5p&X!srmoPf}5Kqmwx_i9U3C0rKKh6VG>Q)Kqd&%Z@Y zO|7o3P9NowBJLraEanz4Jp53v<`w$m$B%b*c3wW1mX(uhX>CO@G&D3I$B<4V(BmYV znVA`Ha1*Qx`|{z{bL&7m@S3%=K^$BW|kE zLu7Gn?TM+Yv$K%#^XKhLOH151ZQO7a90aR~$cLottgL|fUFW`cRD$FIhVdF1@;r4; z+b?&d3u5dcRTDz-va~eH>A6;egvXz9rLNT6#GO-zpeMKYxxu*gH5(47s4Aql&K^7Hc}BwbwYihPBK%*fN&c=3hU(B)5Yue~0&!~VFK7<4#Ca!Sh2L(iU~I3I>O zX|DZL5f&DX=QAUcmX<~gCx3Qxc9wkl^y!*|fb66(J;%Ld|1%~oE_`ciYn=-7>#ttD zq9+X@Bq8x%TQhe|hWlAvSGTw`-^R_uW0*}vPVU{ioL*8=qU!5tZyzn3^$2@D2FglO zO-*g>kU!IAwlSxus1xdF-0b((v~h3Z13^9O^Iz>_V`SgIf3J4jq>PM=9M?R`D%e*s zH#aA`)PpBrBE`f3hf*4zQ?KZ_IGNj|8M;;0>e|`?>g=-W>IAyU2?^LflHN%oPDXw4 zJVd=~>+8mQOFcV#d(uyyP=5LH#r9;+MCk6_wDff8wRm4Yzle_?L&>u22^5detrmi2IAcq zF5>pnT9RzlB;UkDN;hKM9IFV=ljXSX?(X-i$-~hOjb=kxD(ts!`xg~)qM=A7otW6+ zP_~||EU+_dUJY!Mf&&H8M)pI)3L)bPsH>~1m-%H66)R^m08QWQuTB4(;+}uGMs9BI z9-dDuizA~3*tb0{g#+p_}?4qgjv-D{Gy`JT#-z3u0);?)KX=ax?Q0j&Nsx?X(+VG+nroogO`HEpD3e2?)5E zr9$O%c`-&K6R_GXB08uFJ0;EN{t6f2^+S=?HZFSJeeBLq3U4~kW1OR-EOm`EeUCls zRly*8Aqoog@v;?^^mI>5gwWjtxEbJAYVb$#w}#GAdG^lCe3`)H-BC6_G2S_4i0m( z$V#6`HnZ0c9t@TkwqgIMWogY+YO|a3=EA{o?H0K$%?t%-)p@x7c)VmDjZ;t2FJ?sY zGEy9CRO=w5Q>$jER|sm&~l<)l3k?9Es>_MNcGzk=xpi{Q|O zH~9|K&C<*0y#hk~4;cd;M@y2{pD1xR)mb8ltWTXs=f$4Yq!S zr{?7`BhQL3T2v{dx6j>oB;QNk{fq+(t*z9n3E$qKt{1NO2?^XXqrChMEc_<#=4PRT zUm3yYryhn@R*Z2vs}3!hJkThRFl)G1bB~#0VX{I&r(TE>%1x)dn^at!?#uaM!!^>| z-k&~w(le&FiptMl7b*6OWOHF#UXD4wICVzDWSjTH4}Jf>g#7%E85|Pp$M$6;I-fQiV@2tMv6H)2Z4bH!?16{{9_@Nq%pila%{Ezq*YPOz}Zk-~||#KvlROd?zKj9>d6K&7fUC(A_Z0YNqS{zd^?E zkBk;H(W1d<5vw=!p8A!#yWFm??_4-A^Q!-yoLt{#&Wna}1$O#sJ(^6HavV#c&J4uCMH(dh>&C^@@bnd!LF@wV80Koef@a%p>q5V z&E9^>;y8~)fewTB=Q~eHy{3bS*_yd=^78U*m%0f7wL$0bLzt`iQ3M!DSd10Dsj0aO z_#M#f z0fywPw{C@8X?|{MTDCttJj^Xh8(w3#hyk34*L;}$1wa|g697R8h0qaZL*Bk6M}#Ue z8}-I<=(3hhxA*&O{3;#FF_+(pPwxC$>_v1&8;*=B> z4Vs$rs;(0RYh7+5zBj0 z(-D>|CqEzc;@6in9 z`|o}6!^BU`X8T|n7m1c;rJQ~t#ZRumMJ@jH)4(#qLg z92rMOj4Y>JDS2OPw4ZLTFK$e*kc&8`Lf;U?!No0g*?$2m=+m{>GCNDBnXPKl8%`_s zc4Na*NJM1JtxD|99U@j%){?5Kz{*O2p93lQTwGi^IXQ|nQQ_hE+66jSXlQ6QW}E2j z?CgL!x~_N>4h(*}Z?`slBPTbvRItT+lJr-czGrY~C{FN}(z}sI9s*XA{;jRjt7~i0 z^aR5R`lJr*9Q_hxYD$>ULd1XePlp^Fh~C!c^sf3XhD|sq4S!N6bnW7J85{ag)?v&NAS*w$wwl z^E=$vM+(2aiz^__P|YQ9I16sr{RT@FT(W`W+|+6v^o|a5cCJU>>5Qlm%kf-WbCPm%aytJUcI^(St;}y(2Oq9y55|AsnA>i89TD$LwK9+`#ap;Uqd?w%5BO!uFW$@G-b)ObnIiHpxWpB+;)UV36|Y|chGDQ;>T8e(%k ztqqKh=3{35A@yvA_h2LU%KhGplFyVu*u(*;kBY7L@S@6}9yq^nvpaLXNy_oIwb`d3 z0#Jdg>+~|sgSrP#IXY9k#AT&hX)-f2=YOgYM#o&|ewE2n-%w~^!cVZ>kd28K$h57l zBqGHzAW&5MBvj>tsu2Lu-3e27%W>{^s&pUN0U-nUdmkAYkeOM>ek0c#)=TFxu0LFf zjxK&cfc$!Rr;IR~u$4{ktJf(lV}dAxHg8MpGI;f#Dtr;i6euh&M`=2D#E1H^+xnqT z5S*NTpX_=l?KB-RE6$sW3T%6a+z!|E?({0d9XU8_*bvSRG_Q^pieONEXc=!j=iPD6+r!KM+CAXq zv$WLoKHeDDe%yww>d1RAU7Oo0qCB|!-ONpQZ=vJ<@u|XmU&03@ zjQ@C7An5`_-o=HbNY5o`f5oEs=}dJ5IyCiAa>F3IMf2jPiHVK6USiUjl09XG)vs4z zP1}G`U6+;??+PN6-@{X~zQdbB&oD1QL}b1AdzLQs^Jhv746&WvE*T!X1@%x$6J-zG z;ChWc%WIw&Cu+B!kl?<4?XmIWp1Yduj!XGgkLDZTCOBHdp-0%*nfxLxhx z_izbX-C%(V$A^=q zk!o<=gL5G1^cpnN=+)PEJ?pWj$(c5>D@08`0q5wA>tf{Ez8ioy66379oFo#?V=+qm zP-|pv_4^4o?@*j^=4TCU?cn@Jbd2H`0t<^a47c*J*4Dm&O4A<6a#T`56VT{!$+FFj z9YM*WMln&zLHp(n3&Oj?!mHE!N&~m&8U5K_FF)KE!{eRC@rw1=FU=fcUT1R1+u$KwDMWodMyg{7KEMEv2byY@Kc=fkQNMjA=Tm6LGj_{~yz9zQApKDOSJRU%8Z*ljC>GFx}Fl8Xw1zkK^R4#`xu)vpnH@@7_&r*8^8kmj`bH^0c7u zJ}xULaol7pBpOQKttzpdzXD`29XhXQ^3AOuCzUPMlF+}aoq1?(+%P*n9IJCat0teW zb7}!DitGUb0)A;3851{4i3bBTddpa>V2|tQSjJ^lO|7(9*_!Sl7p=yB(MQfwrUQpA zdGU2X$W{`IGY+-1S|Dp>Kz{+cN&x0EJ zrEqp)$_n-G@Fgai1U?g$qp%3JeP;2~P_8JlN-eDsgVQ5t%c)od9wsj9D-I6a=;()o zbCmvy;i^-*(#n0;^%_4i*hMKy`CJPy1jdKu=BBBfB2Hx7h4+3UX|?IHzhh&9P*H8b zRP8&}gNF~_4i7u5e$NO|He$%+OUc2M~}uxaSJk_k;?zxirU>Xq5RUj4W*JgQdyWYPCQ-f zfrgH*Vq5cN&UVf1i4sl#&>;+*wkyqsTvV&8FBiVVj1-a<7kuC5a3SmO?+*$NHtT1^ z)!$dXchB{AkZ`rH@13)CeRFm7_m{-{T3SZ1u;~Q_S3iByf?Y$_%xpv=2ST;1>03hlain3w9MJ{)agsti1P;*A#DIVPT0zKB}V1IoNXN#N9t2;EPD8Kw86y zT%c02|9hvQnaH^M3dKFWTKgLpr?Z!%3F4;x)c%2iRqd>k(bsQj8!UFdJB;Pft0n;Q zVY3|cJUev`{b)n!*L$bZ&5ex`gBD-mp%ZuU(SpZAf38&c1{_f!{G}P{8yY^8ClfNs zE1p^Xr?0^;GFln-B>6$SsLP$ms3@ptMxLk4MDu?R*KI+U)qKvec(NY{7#Nk4Q)K7j zG=Deck~)`H{02ku{^6kgE2w_8{8rZG$W-A(BUur6En@ojk6Uy@!D zbX>nFAlhwTVs0548>7;O2TJ*2D4l`OoM3pew_Ni1GfH@uAFx`^XZ78&m>3x8UY8fR zo?agW)uz0T=P}7CDAMl7al-3bL65{n0E56Nde-nZf!EZxZ63+9`}^^pJb5x+=TzJ- zEF&%5ys~d-ZvJP~wIDn>nN~Mk(rVHFZ_ImY5EkD0M>V06l9Hmba=YNHyB|>axiNh& zboCE_ks`+j`Vx3~44M%*6nFfe3W$hMO;uX8rO5=Q78i%d+x3$xCkmch zTf2&hiAh3IzAC; z`V6qp6ciM=ol6@VIG|+!w=(z=eFKPGXB3;-_+C#GTN`k@wY4?d*RTCzV@Wynsu76e zgCVt25b+&n1e?^L?4hJK#IrIpQ)_D};nDg!IhOU_@sjG*qCBZ~k?7m`wny_(YM!$8 z2XySW^3mE-XBZBJKW|P|jhXRZT%2wn_UEUjdjFpFqT62?=qfetT8mbYm8BOIrAE>^ zum%*FTfb*05K>ZJh2jUX$a1Eh;`jD!7kmU&Xb+SOcMYJL|!N2fm*_-vO}+R86?8r6#?x zRh;`BWcqXP8q0GUF;@~TEiI(#*zW#r#8^{Nw~8aTBbhr+Tj zGj7`ruEv9-qc6O)H8oMy-6np<2!>acmh#9lYP5;mK!+PbE$U2gKlZkip&^5^iVE_0 z^KF5G)uCZwc&sXk{_o!tgi`WfWnf?cNzA*}bu-FYCATXpveH`jLB3e>$-%D|G0Y|i z1RXar3!qt`TNNf&sG+IZ2A{&BYO+0D7l=zGU@%?l@NI0&G#hj(DsYP>F3)(KMW2Oq z9NfIoaM5rVbLjhbLW|J?A27l|ec|!Ca7U<2jR^wBRAfFHfPtZtDEO4n2ijWSTw5>y zR$fuT10WJqMWgkk9>MS9nHhD#EyH zw2}0<*#|W!B*a*4WcCd2Y`gRO+DJan^KJs@>ilN<>qAXmULVChD6_J%*f}^lik{Xz zvA;Y#bXlF)=fS`)YW)&3%f$NgY8Y+9+w}AY0OR>4|KQ*qS?+wYvuc5^yc63blNjqqaTlBf zvOz8_p`{*SXuz)OmUjWq=siV6Nm$1hUlZRndYq<1Co8;`dUSgeFf#bC0qF~ugF*kM zN=2UQS{Kl+8^3rF0E9{B@nhhyrdU{52EEUY^+;pgKc0Vs#u%HW+W zs)tl<^R}?dKp8N77t1a6C=4$y=7O{UhN-FPZ2%nF+S)|R95t6&Ssta=-OOd^aB(o30mgq?`;J=J!;Uz6YJeQ#$5Eb%}{{ag$IK4 zzOlLay}`{1;OhLhG#My=g!)v~>2R*5x~67SbzjT!tKH=|eMTlGnRK@Y#)mp7Djx*W zU`3#L0uXZe87DU_py0RY;&{OD3!vNl+S*%eV%BbvXzen%Jznx!c_P+^z`%%zZNN{@ zM-nvP)`ghA@t0eOwq=$gz zb^z;nH=y`L&fGk&UWWcMwGP#vfDs)c0RR5|jjCH)4oi8}Bm9-0l&PtbGu+k>HtI`Ua$j`N2>Hd9G7M2)to>qdz&cCQ*@reSLO=7e0JpV?xB%p0BOwX^NoBL|-49 zqLPw~bgR`ziA%woH}k+|MAgHd1?4;4i!=^jneER|DLTTc~1y#cij zV5eWK_M@GXbEL!qGN)Yevx7>tK?aSz=op(OF`p!nD0NMy0I0mvqZ1?0GLDzyERZ5Q zvaecvh_@@M3{$+J`afJ$rli^lJ9rZ|b@NB^Vx#Hd7~Nw1Lx1e6;wwNY@Dm)U;BM)9kt3;UyaF4-qMs zDDeC;@a*FCr>M1+nVNhX-FgdNr6KY%;X$i)(2R46&s+p!LmT_eZyq;C=HU@70!m?G zKg{0|PKs9j>wby#Yq~c{d5QcI)n^|tGQq(kblzZ_d_~e%Hm>QKTZzFA&XK0YY#7X`sVH1 zEuZfHzM!z)#@pLVPBT@*)p>GsX{sK@usV|ep}vjTiVTjI1!shZ$ zF|baU_cw=!ZFe^kuD%V?Qr9a8*n5S}e)A5wxF}g(-n%BFH}=Skp93pM@LjU$+3{i` zD9A&pe8_6+>Cu~E=!p&qxd!6SvAbu!bydCI6>x;oowf(Hr#T}ez*S6B*O|3&fGc)_ z_BURCLgFSU&ixG?^zA*o`>c9;dWhkvtMsz0cz@O2T%*_;h)R<*LD77B9mW66S81aK zn(-;G@H(g0OOTPEp#{&(XrbLOC|nko zNS|dOIi?2!C&JA4l4(LCBT+8)=@ew;zIH;~YWKT>F7hFPGR*E=*$2vbbDMjzp;9{> zthXEhiu5c04E;J2dN@d<1Js?8nCs2|1Z(7t?m8_zv2;vbM4=cFhb z0D;xiv@{Gl;(Mw#?g(W8xv5Sfh@s?#J_itCJPC zAWOXVu~LxK$#rp0AP)&K++41JU~iI>v|aV zUEiP}EF|@n+{~3|ZE$D^JiEJ)fx-ed2@boj&TVU3w}^-cEF2tJ zYimwO=FHE}GeodMlC#u$S{QQW)wQ*)EiG3d5c_Tm>2@O-U4_M%G&{)xgkp%6fiOWR zRZ>TXoIJoso&9+)Xpw$MCe_gaDJ^69vPDM+2RR4;*j`?Ed<3QO^k~yKZt+#k&e2gP zs2LMxF)=YgK|uz(Nj4%FgYSP<^Iek>{s@BKJY>u~F|Atxv3N;6z;rTfHZ6QU^^P&djTUc=r4v64 z>-d1KE0t4I1hnL6L}u)DwYN9__(4rcNeP9uv%e3q+sJ>2CoX%;e-Te0o{B&~xZrd4 z{?)5joiEPr(u%u}8z@5>c4NTYyka}&CKs1!HU-uFMzN9c@oH63-0veJ9bT8G`kC3; z89=sDJdP-!3ED!0w~8~nxOjH8mg+4qPbxU@Dll2U)6|R%q`t|(%#0?vd7~~c5Oa9M zV)pJxwDGrxgS2r!!PM`$E1bx1;|2oan}3Opaf zk_cHqK){BBCTG=!#HkYn){{q%$XHld;Hi6_E#|zF+V9@j*ccQR)(M6DK03NR`Lp0M zc|9CSWr0rB^WxGqvU{z%J}i>W2VmdE1n)Iie`K5zT*Yeu+u)fS`Ts2~T{X)MT{$2l zgQ-7RECj^#1z6ni3JWs0VcnILrw70Mpo;7HdH5e)UYr}6nFXKhuORgmqz(k)z*?WF zg+&N(e51*7vy$@icF1`m_&jme{w6$-kdZM#{sxpa%Y=fkUWnrojpl2wfxG&5Yn!eCx@td14afnwJl=KHDOtVyF0Zhzz1 z-hD{xE844>Z;%h0{*T19-ZKT6!3fumcD>HG*8|h?r)Z`sJwWh1g#?2tFLM%P{7AW; z;efK{61b z-q{DX9431D)D})Pnkx_wO$FQg&FbpJ@sX~n|C>+E{nodNo>|qXc4iu%K*J{l8vwqr z&``$5#|>bH0|3Pfl4Tl%*%UDHAJZH>K&Ea#b;U|?-$O;F7-ugXCF3{``d>d*{7e4k z!LRQbn6ROM8J3?G%VtIdj8(|~C7$EPPV@JSNAPxe7-Eotuq&e=gjvhL$cEXU<#=vG zEM$)1WF-w?H7hdf>VW*SnR%Y^{?A|IRRfq_=P`cx5$Kn)dyX^<1+230#q(FdV@e|vAz9_`W-fLrNO+kZeKEB z4VE{gv&o=~gBJJ1y}^HY1!7OQu^MbH|A^2+BqjY37cFe(XmlQYnH{6s3k$xmE~L72 z3@TdsY%UN6?SSl$A;eB0Fr_j+)fC8YAucuBco_*{qjEq;vW~zK%1$jR@-^vYZ2>^y5-8VQhYS%bcwSs{|2=(!T8JJk zWfp&ZRHb9C#RCc029bXrgXHt^fEV84pTpbk7biN%*fg!07Od=`9xUBDaR>#xQ`W$M znuMfU=W{zP?~71h7$Xp2MY1GD3BYiMy|F{%b-x9X*rn-m6M>02{jei`1DW zlY8TMA0>yM+zT6}vdWFZp(36vw z=aaqi^7z<2=vjmF9^N~9Rak)22f#QXwU129jXcyU-baOPxV}3Lf$$tfag_A$4Jex&!na9AtFv252_hcDA_%!(!2>$;)5Cqdul_`+X7c z_U%n5dc%Hds`&VC?5dd^$QO*kV1V7~H#)3qb>4ya*LYqidsWx$&d(WKy?))*gUp2u zPNj>DlvnXyZHUJy=RAlLtAldaHM5`04XG&@uByA9MJc|4bAd@2{kic{3n6FqAb|JW zwgxuU)uGMVDSH5s$y@>zCh=i;UmKBQc%4P~_+h>g@;nm;IFvN)X8Y<+7X%!-mnwQP zW#Arm!_)_u{bRPrJJ-*46)^btM|fO5Q+)i`x7&g#&)3MFix1Ox&)A5>ItC;zgP9bH z7K)o*rDl)OsH&323y=5;&qa+PXA!305d+umW|YINn@8S>lZc#LTzL}{fwv)xCZA~r z9U;@k#LAj=qpVZi3wMw~RzacHavBG<-u*Eye+Ad`N?b-S*ka)!gX<&6QcK~4!9tO- zc2c$w+6$Kdm_CHXl*Rk|l%RY_&)2W$Fv$YR%8-I$v0>y1D`rf}+_A8N1iomt8WC~9g0uD#$W^VrPP%a1XTT%F(CoHn1bz=w`A*mCmc52Jtp z5;PJG!554X;n2~gI5vp6z@jOl{%4rG-j#kEW`+RqIEV)a2P3>ABZ(k^+tS>ONK8xw zRk*va&(c;Gsp!_cVzIQeMB?w4-{{-By6#7F={Hh?@;$ffjMVo#LdYieVAc)*UenC> zzs~wm{C(C>6AYKdAvK9NfPY~w?hV`-YDh|N)Y~Lit}HD{0vqXCH0*xQfZQK+N250z z3a!^Ova`EJIS_y;L5>rU60B;}g^@~WO525YY;GLCyu6!8%b1XmP{?_Q-g^?Q<^PeB zTUy<+DfgdFuBN=HiW{=W>i!ZB)8k(LwOMKke78#hJ1HAw28LfyH8`Gz$IQZ_Od>xw_X^@mZ|{T|_^L$vFiKRL;tii29e8r&5MG90^xO{VA<8dPa(4P=YI|@_Kv)>MyxcIbZ58U z!pz%YcWS!Sq#JAzuW|5!n>Fa~QM>9BxNUt#1 z02PT&^%>B z-eB}U;p}jwLDxH~KnOW70$G5?JN~m?Y-nQ>F7C0`XjiV^FLdHL4%cC@3Tqi>_5oo6SY;4GtGzkWT}cyD*N>@qs1Jk4~fs!+l z9Dkea{_A}AKfh0NGt#u?i@W+O-e)KIoMFTdLx)OrqmVg+eWX_eXYdN-uaNOG7f;vL rAOh*c@MLbre~c?a3H)QnIFs1mcFZWkdW4dks%(+8f$#qT3eHdb diff --git a/docs/classHazelnp_1_1VoidValue-members.html b/docs/classHazelnp_1_1VoidValue-members.html deleted file mode 100644 index e0c3922..0000000 --- a/docs/classHazelnp_1_1VoidValue-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnp::VoidValue Member List
-
-
- -

This is the complete list of members for Hazelnp::VoidValue, including all inherited members.

- - - - - - - - - - - - - - - -
Deepcopy() const overrideHazelnp::VoidValuevirtual
GetAsOsString() const overrideHazelnp::VoidValuevirtual
GetDataType() constHazelnp::Value
GetFloat32() const overrideHazelnp::VoidValuevirtual
GetFloat64() const overrideHazelnp::VoidValuevirtual
GetInt32() const overrideHazelnp::VoidValuevirtual
GetInt64() const overrideHazelnp::VoidValuevirtual
GetList() constHazelnp::VoidValuevirtual
GetString() const overrideHazelnp::VoidValuevirtual
typeHazelnp::Valueprotected
Value(DATA_TYPE type)Hazelnp::Valueprotected
VoidValue()Hazelnp::VoidValue
~Value()Hazelnp::Valueinlinevirtual
~VoidValue() overrideHazelnp::VoidValueinline
- - - - diff --git a/docs/classHazelnp_1_1VoidValue.html b/docs/classHazelnp_1_1VoidValue.html deleted file mode 100644 index 7caf40d..0000000 --- a/docs/classHazelnp_1_1VoidValue.html +++ /dev/null @@ -1,502 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::VoidValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
Hazelnp::VoidValue Class Reference
-
-
- -

Specializations for void values. - More...

- -

#include <VoidValue.h>

-
-Inheritance diagram for Hazelnp::VoidValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for Hazelnp::VoidValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 VoidValue ()
 
 ~VoidValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Returns an empty string. More...
 
const std::vector< Value * > & GetList () const
 Returns an empty list. More...
 
- Public Member Functions inherited from Hazelnp::Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Hazelnp::Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Hazelnp::Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for void values.

-

These house no value whatsoever, but only communicate information by merely existing.

- -

Definition at line 8 of file VoidValue.h.

-

Constructor & Destructor Documentation

- -

◆ VoidValue()

- -
-
- - - - - - - -
VoidValue::VoidValue ()
-
- -

Definition at line 6 of file VoidValue.cpp.

-
7  :
- -
9 {
-
10  return;
-
11 }
-
-
-
- -

◆ ~VoidValue()

- -
-
- - - - - -
- - - - - - - -
Hazelnp::VoidValue::~VoidValue ()
-
-inlineoverride
-
- -

Definition at line 12 of file VoidValue.h.

-
12 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * VoidValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Hazelnp::Value.

- -

Definition at line 13 of file VoidValue.cpp.

-
14 {
-
15  return new VoidValue();
-
16 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string VoidValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Hazelnp::Value.

- -

Definition at line 18 of file VoidValue.cpp.

-
19 {
-
20  return "VoidValue";
-
21 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double VoidValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 40 of file VoidValue.cpp.

-
41 {
- -
43 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double VoidValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 35 of file VoidValue.cpp.

-
36 {
- -
38 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int VoidValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 30 of file VoidValue.cpp.

-
31 {
- -
33 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int VoidValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Hazelnp::Value.

- -

Definition at line 25 of file VoidValue.cpp.

-
26 {
- -
28 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & VoidValue::GetList () const
-
-virtual
-
- -

Returns an empty list.

- -

Implements Hazelnp::Value.

- -

Definition at line 50 of file VoidValue.cpp.

-
51 {
-
52  static const std::vector<Value*> empty;
-
53  return empty;
-
54 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string VoidValue::GetString () const
-
-overridevirtual
-
- -

Returns an empty string.

- -

Implements Hazelnp::Value.

- -

Definition at line 45 of file VoidValue.cpp.

-
46 {
-
47  return "";
-
48 }
-
-
-
-
The documentation for this class was generated from the following files: -
- -
Value(DATA_TYPE type)
Definition: Value.cpp:5
- -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- - - - diff --git a/docs/classHazelnp_1_1VoidValue__coll__graph.map b/docs/classHazelnp_1_1VoidValue__coll__graph.map deleted file mode 100644 index 684c89f..0000000 --- a/docs/classHazelnp_1_1VoidValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classHazelnp_1_1VoidValue__coll__graph.md5 b/docs/classHazelnp_1_1VoidValue__coll__graph.md5 deleted file mode 100644 index 8e50936..0000000 --- a/docs/classHazelnp_1_1VoidValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -906e2b64b26f1d1be0180b938b6a9e45 \ No newline at end of file diff --git a/docs/classHazelnp_1_1VoidValue__coll__graph.png b/docs/classHazelnp_1_1VoidValue__coll__graph.png deleted file mode 100644 index abca5b1d165d3ee39a5d3af77e4b7354ef1f4cdc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3293 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 - - - diff --git a/docs/classHazelnp_1_1VoidValue__inherit__graph.md5 b/docs/classHazelnp_1_1VoidValue__inherit__graph.md5 deleted file mode 100644 index 8e50936..0000000 --- a/docs/classHazelnp_1_1VoidValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -906e2b64b26f1d1be0180b938b6a9e45 \ No newline at end of file diff --git a/docs/classHazelnp_1_1VoidValue__inherit__graph.png b/docs/classHazelnp_1_1VoidValue__inherit__graph.png deleted file mode 100644 index abca5b1d165d3ee39a5d3af77e4b7354ef1f4cdc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3293 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Hazelnupp Member List
-
-
- -

This is the complete list of members for Hazelnupp, including all inherited members.

- - - - - - - - - - - - - - - - -
ClearAbbreviations()Hazelnupp
ClearConstraints()Hazelnupp
GetAbbreviation(const std::string &abbrev) constHazelnupp
GetCrashOnFail() constHazelnupp
GetExecutableName() constHazelnupp
HasAbbreviation(const std::string &abbrev) constHazelnupp
HasParam(const std::string &key) constHazelnupp
Hazelnupp()Hazelnupp
Hazelnupp(const int argc, const char *const *argv)Hazelnupp
operator[](const std::string &key) constHazelnupp
Parse(const int argc, const char *const *argv)Hazelnupp
RegisterAbbreviation(const std::string &abbrev, const std::string &target)Hazelnupp
RegisterConstraints(const std::vector< ParamConstraint > &constraints)Hazelnupp
SetCrashOnFail(bool crashOnFail)Hazelnupp
~Hazelnupp()Hazelnupp
- - - - diff --git a/docs/classHazelnupp.html b/docs/classHazelnupp.html deleted file mode 100644 index bcd6022..0000000 --- a/docs/classHazelnupp.html +++ /dev/null @@ -1,630 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
Hazelnupp Class Reference
-
-
- -

The main class to interface with. - More...

- -

#include <Hazelnupp.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 Hazelnupp ()
 
 Hazelnupp (const int argc, const char *const *argv)
 
 ~Hazelnupp ()
 
void Parse (const int argc, const char *const *argv)
 Will parse command line arguments. More...
 
const std::string & GetExecutableName () const
 Will return argv[0], the name of the executable. More...
 
const Valueoperator[] (const std::string &key) const
 Will return the value given a key. More...
 
bool HasParam (const std::string &key) const
 Will check wether a parameter exists given a key, or not. More...
 
void RegisterAbbreviation (const std::string &abbrev, const std::string &target)
 Will register an abbreviation (like -f for –force) More...
 
const std::string & GetAbbreviation (const std::string &abbrev) const
 Will return the long form of an abbreviation (like –force for -f) More...
 
bool HasAbbreviation (const std::string &abbrev) const
 Will check wether or not an abbreviation is registered. More...
 
void ClearAbbreviations ()
 Will delete all abbreviations. More...
 
void RegisterConstraints (const std::vector< ParamConstraint > &constraints)
 Will register parameter constraints. More...
 
void ClearConstraints ()
 Will delete all constraints. More...
 
void SetCrashOnFail (bool crashOnFail)
 Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not. More...
 
bool GetCrashOnFail () const
 Gets whether the application crashes on an exception whilst parsing, and prints to stderr. More...
 
-

Detailed Description

-

The main class to interface with.

- -

Definition at line 9 of file Hazelnupp.h.

-

Constructor & Destructor Documentation

- -

◆ Hazelnupp() [1/2]

- -
-
- - - - - - - -
Hazelnupp::Hazelnupp ()
-
- -

Definition at line 12 of file Hazelnupp.cpp.

-
13 {
-
14  return;
-
15 }
-
-
-
- -

◆ Hazelnupp() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
Hazelnupp::Hazelnupp (const int argc,
const char *const * argv 
)
-
- -

Definition at line 17 of file Hazelnupp.cpp.

-
18 {
-
19  Parse(argc, argv);
-
20  return;
-
21 }
-
-
-
- -

◆ ~Hazelnupp()

- -
-
- - - - - - - -
Hazelnupp::~Hazelnupp ()
-
- -

Definition at line 23 of file Hazelnupp.cpp.

-
24 {
-
25  for (auto& it : parameters)
-
26  delete it.second;
-
27 
-
28  parameters.clear();
-
29 
-
30  return;
-
31 }
-
-
-
-

Member Function Documentation

- -

◆ ClearAbbreviations()

- -
-
- - - - - - - -
void Hazelnupp::ClearAbbreviations ()
-
- -

Will delete all abbreviations.

- -

Definition at line 346 of file Hazelnupp.cpp.

-
347 {
-
348  abbreviations.clear();
-
349  return;
-
350 }
-
-
-
- -

◆ ClearConstraints()

- -
-
- - - - - - - -
void Hazelnupp::ClearConstraints ()
-
- -

Will delete all constraints.

- -

Definition at line 373 of file Hazelnupp.cpp.

-
374 {
-
375  constraints.clear();
-
376  return;
-
377 }
-
-
-
- -

◆ GetAbbreviation()

- -
-
- - - - - - - - -
const std::string & Hazelnupp::GetAbbreviation (const std::string & abbrev) const
-
- -

Will return the long form of an abbreviation (like –force for -f)

- -

Definition at line 336 of file Hazelnupp.cpp.

-
337 {
-
338  return abbreviations.find(abbrev)->second;
-
339 }
-
-
-
- -

◆ GetCrashOnFail()

- -
-
- - - - - - - -
bool Hazelnupp::GetCrashOnFail () const
-
- -

Gets whether the application crashes on an exception whilst parsing, and prints to stderr.

- -

Definition at line 277 of file Hazelnupp.cpp.

-
278 {
-
279  return crashOnFail;
-
280 }
-
-
-
- -

◆ GetExecutableName()

- -
-
- - - - - - - -
const std::string & Hazelnupp::GetExecutableName () const
-
- -

Will return argv[0], the name of the executable.

- -

Definition at line 316 of file Hazelnupp.cpp.

-
317 {
-
318  return executableName;
-
319 }
-
-
-
- -

◆ HasAbbreviation()

- -
-
- - - - - - - - -
bool Hazelnupp::HasAbbreviation (const std::string & abbrev) const
-
- -

Will check wether or not an abbreviation is registered.

- -

Definition at line 341 of file Hazelnupp.cpp.

-
342 {
-
343  return abbreviations.find(abbrev) != abbreviations.end();
-
344 }
-
-
-
- -

◆ HasParam()

- -
-
- - - - - - - - -
bool Hazelnupp::HasParam (const std::string & key) const
-
- -

Will check wether a parameter exists given a key, or not.

- -

Definition at line 151 of file Hazelnupp.cpp.

-
152 {
-
153  return parameters.find(key) != parameters.end();
-
154 }
-
-
-
- -

◆ operator[]()

- -
-
- - - - - - - - -
const Value & Hazelnupp::operator[] (const std::string & key) const
-
- -

Will return the value given a key.

- -

Definition at line 321 of file Hazelnupp.cpp.

-
322 {
-
323  // Throw exception if param is unknown
-
324  if (!HasParam(key))
- -
326 
-
327  return *parameters.find(key)->second->GetValue();
-
328 }
-
-
-
- -

◆ Parse()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnupp::Parse (const int argc,
const char *const * argv 
)
-
- -

Will parse command line arguments.

- -

Definition at line 33 of file Hazelnupp.cpp.

-
34 {
-
35  try
-
36  {
-
37  // Populate raw arguments
-
38  PopulateRawArgs(argc, argv);
-
39 
-
40  // Expand abbreviations
-
41  ExpandAbbreviations();
-
42 
-
43  executableName = std::string(rawArgs[0]);
-
44 
-
45  std::size_t i = 1;
-
46  while (i < rawArgs.size())
-
47  {
-
48  if ((rawArgs[i].length() > 2) && (rawArgs[i].substr(0, 2) == "--"))
-
49  {
-
50  Parameter* param = nullptr;
-
51  i = ParseNextParameter(i, param);
-
52 
-
53  parameters.insert(std::pair<std::string, Parameter*>(param->Key(), param));
-
54  }
-
55  else
-
56  i++;
-
57  }
-
58 
-
59  // Apply constraints such as default values, and required parameters.
-
60  // Types have already been enforced.
-
61  ApplyConstraints();
-
62  }
-
63  catch (const HazelnuppConstraintTypeMissmatch& hctm)
-
64  {
-
65  if (crashOnFail)
-
66  {
-
67  std::cerr << "Fatal error: Command-line parameter value-type mismatch at \"" << hctm.What() << "\"!";
-
68  quick_exit(-1009);
-
69  }
-
70  else
-
71  throw hctm; // yeet
-
72  }
-
73  catch (const HazelnuppConstraintMissingValue& hctm)
-
74  {
-
75  if (crashOnFail)
-
76  {
-
77  std::cerr << "Fatal error: Missing required command-line parameter \"" << hctm.What() << "\"!";
-
78  quick_exit(-1010);
-
79  }
-
80  else
-
81  throw hctm; // yeet
-
82  }
-
83 
-
84  return;
-
85 }
-
-
-
- -

◆ RegisterAbbreviation()

- -
-
- - - - - - - - - - - - - - - - - - -
void Hazelnupp::RegisterAbbreviation (const std::string & abbrev,
const std::string & target 
)
-
- -

Will register an abbreviation (like -f for –force)

- -

Definition at line 330 of file Hazelnupp.cpp.

-
331 {
-
332  abbreviations.insert(std::pair<std::string, std::string>(abbrev, target));
-
333  return;
-
334 }
-
-
-
- -

◆ RegisterConstraints()

- -
-
- - - - - - - - -
void Hazelnupp::RegisterConstraints (const std::vector< ParamConstraint > & constraints)
-
- -

Will register parameter constraints.

- -

Definition at line 352 of file Hazelnupp.cpp.

-
353 {
-
354  for (const ParamConstraint& pc : constraints)
-
355  {
-
356  // Does this constraint already exist?
-
357  const auto constraint = this->constraints.find(pc.key);
-
358  // If yes, replace it.
-
359  if (constraint != this->constraints.end())
-
360  constraint->second = pc;
-
361 
-
362  // Else, create a new pair
-
363  else
-
364  this->constraints.insert(std::pair<std::string, ParamConstraint>(
-
365  pc.key,
-
366  pc
-
367  ));
-
368  }
-
369 
-
370  return;
-
371 }
-
-
-
- -

◆ SetCrashOnFail()

- -
-
- - - - - - - - -
void Hazelnupp::SetCrashOnFail (bool crashOnFail)
-
- -

Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsing, or not.

- -

Definition at line 379 of file Hazelnupp.cpp.

-
380 {
-
381  this->crashOnFail = crashOnFail;
-
382  return;
-
383 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
const std::string & What() const
Will return an error message.
-
Gets thrown when a parameter is of a type that does not match the required type, and is not convertib...
-
Gets thrown when a parameter constrained to be required is not provided, and has no default value set...
- -
const std::string & Key() const
Will return the key of this parameter.
Definition: Parameter.cpp:19
-
Gets thrown when an non-existent key gets dereferenced.
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
Definition: Hazelnupp.cpp:151
- -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:33
- - - - diff --git a/docs/classHazelnuppConstraintException-members.html b/docs/classHazelnuppConstraintException-members.html deleted file mode 100644 index 7080787..0000000 --- a/docs/classHazelnuppConstraintException-members.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppConstraintException Member List
-
-
- -

This is the complete list of members for HazelnuppConstraintException, including all inherited members.

- - - - - - - -
HazelnuppConstraintException()HazelnuppConstraintExceptioninline
HazelnuppConstraintException(const std::string &msg)HazelnuppConstraintExceptioninline
HazelnuppException()HazelnuppExceptioninline
HazelnuppException(const std::string &msg)HazelnuppExceptioninline
messageHazelnuppExceptionprotected
What() constHazelnuppExceptioninline
- - - - diff --git a/docs/classHazelnuppConstraintException.html b/docs/classHazelnuppConstraintException.html deleted file mode 100644 index 0460eb3..0000000 --- a/docs/classHazelnuppConstraintException.html +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppConstraintException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppConstraintException Class Reference
-
-
- -

Gets thrown something bad happens because of parameter constraints. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppConstraintException:
-
-
Inheritance graph
- - - - - - - -
[legend]
-
-Collaboration diagram for HazelnuppConstraintException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown something bad happens because of parameter constraints.

- -

Definition at line 42 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintException() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppConstraintException::HazelnuppConstraintException ()
-
-inline
-
- -

Definition at line 45 of file HazelnuppException.h.

-
45 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppConstraintException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppConstraintException::HazelnuppConstraintException (const std::string & msg)
-
-inline
-
- -

Definition at line 46 of file HazelnuppException.h.

-
46 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppConstraintException__coll__graph.map b/docs/classHazelnuppConstraintException__coll__graph.map deleted file mode 100644 index 5fa5350..0000000 --- a/docs/classHazelnuppConstraintException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnuppConstraintException__coll__graph.md5 b/docs/classHazelnuppConstraintException__coll__graph.md5 deleted file mode 100644 index b5ab92d..0000000 --- a/docs/classHazelnuppConstraintException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -8780b5af48266ddbb9e3e39964ac24c9 \ No newline at end of file diff --git a/docs/classHazelnuppConstraintException__coll__graph.png b/docs/classHazelnuppConstraintException__coll__graph.png deleted file mode 100644 index 46cfddcc49e9d3f84e6cc598c2cd99d2a3715235..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11398 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 - - - - - - diff --git a/docs/classHazelnuppConstraintException__inherit__graph.md5 b/docs/classHazelnuppConstraintException__inherit__graph.md5 deleted file mode 100644 index e37e84a..0000000 --- a/docs/classHazelnuppConstraintException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -16bc78b0ae884e3cc8de0c87c60d24c5 \ No newline at end of file diff --git a/docs/classHazelnuppConstraintException__inherit__graph.png b/docs/classHazelnuppConstraintException__inherit__graph.png deleted file mode 100644 index 03b43552a5cc77801fe4f0378f7d6475dd2fdfb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12636 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 diff --git a/docs/classHazelnuppConstraintMissingValue-members.html b/docs/classHazelnuppConstraintMissingValue-members.html deleted file mode 100644 index e15abd6..0000000 --- a/docs/classHazelnuppConstraintMissingValue-members.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppConstraintMissingValue Member List
-
- - - - - diff --git a/docs/classHazelnuppConstraintMissingValue.html b/docs/classHazelnuppConstraintMissingValue.html deleted file mode 100644 index 8a44906..0000000 --- a/docs/classHazelnuppConstraintMissingValue.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppConstraintMissingValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppConstraintMissingValue Class Reference
-
-
- -

Gets thrown when a parameter constrained to be required is not provided, and has no default value set. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppConstraintMissingValue:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for HazelnuppConstraintMissingValue:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintMissingValue ()
 
 HazelnuppConstraintMissingValue (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppConstraintException
 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when a parameter constrained to be required is not provided, and has no default value set.

- -

Definition at line 60 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintMissingValue() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue ()
-
-inline
-
- -

Definition at line 63 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintMissingValue() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue (const std::string & msg)
-
-inline
-
- -

Definition at line 64 of file HazelnuppException.h.

- -
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppConstraintMissingValue__coll__graph.map b/docs/classHazelnuppConstraintMissingValue__coll__graph.map deleted file mode 100644 index a3c28ef..0000000 --- a/docs/classHazelnuppConstraintMissingValue__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnuppConstraintMissingValue__coll__graph.md5 b/docs/classHazelnuppConstraintMissingValue__coll__graph.md5 deleted file mode 100644 index a3e58d6..0000000 --- a/docs/classHazelnuppConstraintMissingValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -53168f4d3c07fb954273ae81459e9a52 \ No newline at end of file diff --git a/docs/classHazelnuppConstraintMissingValue__coll__graph.png b/docs/classHazelnuppConstraintMissingValue__coll__graph.png deleted file mode 100644 index 2efec37743e1e9eccd97fd9ff8d7420042956c81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14321 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 diff --git a/docs/classHazelnuppConstraintMissingValue__inherit__graph.map b/docs/classHazelnuppConstraintMissingValue__inherit__graph.map deleted file mode 100644 index 5659d69..0000000 --- a/docs/classHazelnuppConstraintMissingValue__inherit__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/classHazelnuppConstraintMissingValue__inherit__graph.md5 b/docs/classHazelnuppConstraintMissingValue__inherit__graph.md5 deleted file mode 100644 index f3f9de7..0000000 --- a/docs/classHazelnuppConstraintMissingValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -30c14b46f5309ee00f2ac553ceadf88a \ No newline at end of file diff --git a/docs/classHazelnuppConstraintMissingValue__inherit__graph.png b/docs/classHazelnuppConstraintMissingValue__inherit__graph.png deleted file mode 100644 index e9df92f6c2cf42be34dbd6a1749bd7def6ecd9c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9105 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppConstraintTypeMissmatch Member List
-
- - - - - diff --git a/docs/classHazelnuppConstraintTypeMissmatch.html b/docs/classHazelnuppConstraintTypeMissmatch.html deleted file mode 100644 index 818c3b5..0000000 --- a/docs/classHazelnuppConstraintTypeMissmatch.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppConstraintTypeMissmatch Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppConstraintTypeMissmatch Class Reference
-
-
- -

Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppConstraintTypeMissmatch:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for HazelnuppConstraintTypeMissmatch:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppConstraintTypeMissmatch ()
 
 HazelnuppConstraintTypeMissmatch (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppConstraintException
 HazelnuppConstraintException ()
 
 HazelnuppConstraintException (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it.

- -

Definition at line 51 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppConstraintTypeMissmatch() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch ()
-
-inline
-
- -

Definition at line 54 of file HazelnuppException.h.

- -
-
- -

◆ HazelnuppConstraintTypeMissmatch() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch (const std::string & msg)
-
-inline
-
- -

Definition at line 55 of file HazelnuppException.h.

- -
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.map b/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.map deleted file mode 100644 index 0c19bad..0000000 --- a/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.md5 b/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.md5 deleted file mode 100644 index afe2d90..0000000 --- a/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -16e304d64e326eb561ef8c13d477c677 \ No newline at end of file diff --git a/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.png b/docs/classHazelnuppConstraintTypeMissmatch__coll__graph.png deleted file mode 100644 index fb08f142cac2236113c3f30a559bb621c91fb01a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14346 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 - - - - - diff --git a/docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.md5 b/docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.md5 deleted file mode 100644 index d76519e..0000000 --- a/docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -099f62bbcdccec595c21e9510dc0dae9 \ No newline at end of file diff --git a/docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.png b/docs/classHazelnuppConstraintTypeMissmatch__inherit__graph.png deleted file mode 100644 index fe764c61f5e6348fa48f284221f732466c15e67d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9141 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppException Member List
-
-
- - - - diff --git a/docs/classHazelnuppException.html b/docs/classHazelnuppException.html deleted file mode 100644 index fcc987e..0000000 --- a/docs/classHazelnuppException.html +++ /dev/null @@ -1,259 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppException Class Reference
-
-
- -

Generic hazelnupp exception. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppException:
-
-
Inheritance graph
- - - - - - - - - -
[legend]
-
-Collaboration diagram for HazelnuppException:
-
-
Collaboration graph
- - - - - - -
[legend]
- - - - - - - - - -

-Public Member Functions

 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - -

-Protected Attributes

std::string message
 
-

Detailed Description

-

Generic hazelnupp exception.

- -

Definition at line 6 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppException() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppException::HazelnuppException ()
-
-inline
-
- -

Definition at line 9 of file HazelnuppException.h.

-
9 {};
-
-
-
- -

◆ HazelnuppException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppException::HazelnuppException (const std::string & msg)
-
-inline
-
- -

Definition at line 10 of file HazelnuppException.h.

-
10 : message{ msg } {};
-
-
-
-

Member Function Documentation

- -

◆ What()

- -
-
- - - - - -
- - - - - - - -
const std::string& HazelnuppException::What () const
-
-inline
-
- -

Will return an error message.

- -

Definition at line 13 of file HazelnuppException.h.

-
14  {
-
15  return message;
-
16  }
-
-
-
-

Member Data Documentation

- -

◆ message

- -
-
- - - - - -
- - - - -
std::string HazelnuppException::message
-
-protected
-
- -

Definition at line 19 of file HazelnuppException.h.

- -
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppException__coll__graph.map b/docs/classHazelnuppException__coll__graph.map deleted file mode 100644 index 0faf445..0000000 --- a/docs/classHazelnuppException__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/classHazelnuppException__coll__graph.md5 b/docs/classHazelnuppException__coll__graph.md5 deleted file mode 100644 index c1bf83d..0000000 --- a/docs/classHazelnuppException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -73a1a62dc1264bfb70a21bb9c678179c \ No newline at end of file diff --git a/docs/classHazelnuppException__coll__graph.png b/docs/classHazelnuppException__coll__graph.png deleted file mode 100644 index 1493d52b1163f6c3ef2fae0187ff2d5821f0dc1c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9637 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 - - - - - - - - diff --git a/docs/classHazelnuppException__inherit__graph.md5 b/docs/classHazelnuppException__inherit__graph.md5 deleted file mode 100644 index ffa0264..0000000 --- a/docs/classHazelnuppException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -2ea7051c44210f9778f71602609d2ced \ No newline at end of file diff --git a/docs/classHazelnuppException__inherit__graph.png b/docs/classHazelnuppException__inherit__graph.png deleted file mode 100644 index 93ce9521fe3e6065f5728788ac084f6036802b04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20860 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 diff --git a/docs/classHazelnuppInvalidKeyException-members.html b/docs/classHazelnuppInvalidKeyException-members.html deleted file mode 100644 index d96d6a1..0000000 --- a/docs/classHazelnuppInvalidKeyException-members.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppInvalidKeyException Member List
-
-
- -

This is the complete list of members for HazelnuppInvalidKeyException, including all inherited members.

- - - - - - - -
HazelnuppException()HazelnuppExceptioninline
HazelnuppException(const std::string &msg)HazelnuppExceptioninline
HazelnuppInvalidKeyException()HazelnuppInvalidKeyExceptioninline
HazelnuppInvalidKeyException(const std::string &msg)HazelnuppInvalidKeyExceptioninline
messageHazelnuppExceptionprotected
What() constHazelnuppExceptioninline
- - - - diff --git a/docs/classHazelnuppInvalidKeyException.html b/docs/classHazelnuppInvalidKeyException.html deleted file mode 100644 index 6b63a3d..0000000 --- a/docs/classHazelnuppInvalidKeyException.html +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppInvalidKeyException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppInvalidKeyException Class Reference
-
-
- -

Gets thrown when an non-existent key gets dereferenced. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppInvalidKeyException:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for HazelnuppInvalidKeyException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppInvalidKeyException ()
 
 HazelnuppInvalidKeyException (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when an non-existent key gets dereferenced.

- -

Definition at line 24 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppInvalidKeyException() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppInvalidKeyException::HazelnuppInvalidKeyException ()
-
-inline
-
- -

Definition at line 27 of file HazelnuppException.h.

-
27 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppInvalidKeyException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppInvalidKeyException::HazelnuppInvalidKeyException (const std::string & msg)
-
-inline
-
- -

Definition at line 28 of file HazelnuppException.h.

-
28 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppInvalidKeyException__coll__graph.map b/docs/classHazelnuppInvalidKeyException__coll__graph.map deleted file mode 100644 index b678d19..0000000 --- a/docs/classHazelnuppInvalidKeyException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnuppInvalidKeyException__coll__graph.md5 b/docs/classHazelnuppInvalidKeyException__coll__graph.md5 deleted file mode 100644 index 6ea7594..0000000 --- a/docs/classHazelnuppInvalidKeyException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -9824cce6102c022eca7ea3340a6e069a \ No newline at end of file diff --git a/docs/classHazelnuppInvalidKeyException__coll__graph.png b/docs/classHazelnuppInvalidKeyException__coll__graph.png deleted file mode 100644 index 6f49ccdbf16ab1e3a7ac3602f959c2b19f47bd7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11587 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 diff --git a/docs/classHazelnuppInvalidKeyException__inherit__graph.map b/docs/classHazelnuppInvalidKeyException__inherit__graph.map deleted file mode 100644 index d2fb1c2..0000000 --- a/docs/classHazelnuppInvalidKeyException__inherit__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/classHazelnuppInvalidKeyException__inherit__graph.md5 b/docs/classHazelnuppInvalidKeyException__inherit__graph.md5 deleted file mode 100644 index cd0380e..0000000 --- a/docs/classHazelnuppInvalidKeyException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -3cbba2db8b9e26494124e6786b5e2b42 \ No newline at end of file diff --git a/docs/classHazelnuppInvalidKeyException__inherit__graph.png b/docs/classHazelnuppInvalidKeyException__inherit__graph.png deleted file mode 100644 index b95d9af4e3c946a8d772e1c188ad93420c4917d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7047 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
HazelnuppValueNotConvertibleException Member List
-
- - - - - diff --git a/docs/classHazelnuppValueNotConvertibleException.html b/docs/classHazelnuppValueNotConvertibleException.html deleted file mode 100644 index 7857c7a..0000000 --- a/docs/classHazelnuppValueNotConvertibleException.html +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: HazelnuppValueNotConvertibleException Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
HazelnuppValueNotConvertibleException Class Reference
-
-
- -

Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible. - More...

- -

#include <HazelnuppException.h>

-
-Inheritance diagram for HazelnuppValueNotConvertibleException:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for HazelnuppValueNotConvertibleException:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

 HazelnuppValueNotConvertibleException ()
 
 HazelnuppValueNotConvertibleException (const std::string &msg)
 
- Public Member Functions inherited from HazelnuppException
 HazelnuppException ()
 
 HazelnuppException (const std::string &msg)
 
const std::string & What () const
 Will return an error message. More...
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from HazelnuppException
std::string message
 
-

Detailed Description

-

Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible.

- -

Definition at line 33 of file HazelnuppException.h.

-

Constructor & Destructor Documentation

- -

◆ HazelnuppValueNotConvertibleException() [1/2]

- -
-
- - - - - -
- - - - - - - -
HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException ()
-
-inline
-
- -

Definition at line 36 of file HazelnuppException.h.

-
36 : HazelnuppException() {};
-
-
-
- -

◆ HazelnuppValueNotConvertibleException() [2/2]

- -
-
- - - - - -
- - - - - - - - -
HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException (const std::string & msg)
-
-inline
-
- -

Definition at line 37 of file HazelnuppException.h.

-
37 : HazelnuppException(msg) {};
-
-
-
-
The documentation for this class was generated from the following file: -
- - - - - diff --git a/docs/classHazelnuppValueNotConvertibleException__coll__graph.map b/docs/classHazelnuppValueNotConvertibleException__coll__graph.map deleted file mode 100644 index 549a305..0000000 --- a/docs/classHazelnuppValueNotConvertibleException__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/classHazelnuppValueNotConvertibleException__coll__graph.md5 b/docs/classHazelnuppValueNotConvertibleException__coll__graph.md5 deleted file mode 100644 index 19e2e3f..0000000 --- a/docs/classHazelnuppValueNotConvertibleException__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -9d32983d0d841eed4a6fd0df8a5f7cc4 \ No newline at end of file diff --git a/docs/classHazelnuppValueNotConvertibleException__coll__graph.png b/docs/classHazelnuppValueNotConvertibleException__coll__graph.png deleted file mode 100644 index e198a8c37e24ff395ba3de163e9bf2919ebc9182..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13181 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 OaaUeV?wySB)Bgicv{p?3 diff --git a/docs/classHazelnuppValueNotConvertibleException__inherit__graph.map b/docs/classHazelnuppValueNotConvertibleException__inherit__graph.map deleted file mode 100644 index c262591..0000000 --- a/docs/classHazelnuppValueNotConvertibleException__inherit__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/docs/classHazelnuppValueNotConvertibleException__inherit__graph.md5 b/docs/classHazelnuppValueNotConvertibleException__inherit__graph.md5 deleted file mode 100644 index 438de84..0000000 --- a/docs/classHazelnuppValueNotConvertibleException__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -8ca6ce8b99f1fee2372c0029f0781e92 \ No newline at end of file diff --git a/docs/classHazelnuppValueNotConvertibleException__inherit__graph.png b/docs/classHazelnuppValueNotConvertibleException__inherit__graph.png deleted file mode 100644 index f33f98ff6eedaf33624642a423ffc83a1bb0a0ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6740 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 diff --git a/docs/classIntValue-members.html b/docs/classIntValue-members.html deleted file mode 100644 index fa2b2c4..0000000 --- a/docs/classIntValue-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -

-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
IntValue Member List
-
-
- -

This is the complete list of members for IntValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
Deepcopy() const overrideIntValuevirtual
GetAsOsString() const overrideIntValuevirtual
GetDataType() constValue
GetFloat32() const overrideIntValuevirtual
GetFloat64() const overrideIntValuevirtual
GetInt32() const overrideIntValuevirtual
GetInt64() const overrideIntValuevirtual
GetList() const overrideIntValuevirtual
GetString() const overrideIntValuevirtual
GetValue() constIntValue
IntValue(const long long int &value)IntValue
operator int() constIntValue
operator long long int() constIntValue
typeValueprotected
Value(DATA_TYPE type)Valueprotected
~IntValue() overrideIntValueinline
~Value()Valueinlinevirtual
- - - - diff --git a/docs/classIntValue.html b/docs/classIntValue.html deleted file mode 100644 index 30a0b97..0000000 --- a/docs/classIntValue.html +++ /dev/null @@ -1,578 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: IntValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
IntValue Class Reference
-
-
- -

Specializations for integer values (uses long long int) - More...

- -

#include <IntValue.h>

-
-Inheritance diagram for IntValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for IntValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 IntValue (const long long int &value)
 
 ~IntValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const long long int & GetValue () const
 Will return the raw value. More...
 
 operator long long int () const
 
 operator int () const
 
long long int GetInt64 () const override
 Will return the data as a long long int. More...
 
int GetInt32 () const override
 Will return the data as an int. More...
 
long double GetFloat64 () const override
 Will return the data as a long double. More...
 
double GetFloat32 () const override
 Will return the data as a double. More...
 
std::string GetString () const override
 Will return the data as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for integer values (uses long long int)

- -

Definition at line 6 of file IntValue.h.

-

Constructor & Destructor Documentation

- -

◆ IntValue()

- -
-
- - - - - - - - -
IntValue::IntValue (const long long int & value)
-
- -

Definition at line 5 of file IntValue.cpp.

-
6  :
- -
8  value { value }
-
9 {
-
10  return;
-
11 }
-
-
-
- -

◆ ~IntValue()

- -
-
- - - - - -
- - - - - - - -
IntValue::~IntValue ()
-
-inlineoverride
-
- -

Definition at line 10 of file IntValue.h.

-
10 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * IntValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Value.

- -

Definition at line 13 of file IntValue.cpp.

-
14 {
-
15  return new IntValue(value);
-
16 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string IntValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Value.

- -

Definition at line 18 of file IntValue.cpp.

-
19 {
-
20  std::stringstream ss;
-
21  ss << "IntValue: " << value;
-
22  return ss.str();
-
23 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double IntValue::GetFloat32 () const
-
-overridevirtual
-
- -

Will return the data as a double.

- -

Implements Value.

- -

Definition at line 57 of file IntValue.cpp.

-
58 {
-
59  return (double)value;
-
60 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double IntValue::GetFloat64 () const
-
-overridevirtual
-
- -

Will return the data as a long double.

- -

Implements Value.

- -

Definition at line 52 of file IntValue.cpp.

-
53 {
-
54  return (long double)value;
-
55 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int IntValue::GetInt32 () const
-
-overridevirtual
-
- -

Will return the data as an int.

- -

Implements Value.

- -

Definition at line 47 of file IntValue.cpp.

-
48 {
-
49  return (int)value;
-
50 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int IntValue::GetInt64 () const
-
-overridevirtual
-
- -

Will return the data as a long long int.

- -

Implements Value.

- -

Definition at line 42 of file IntValue.cpp.

-
43 {
-
44  return value;
-
45 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & IntValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 70 of file IntValue.cpp.

-
71 {
- -
73 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string IntValue::GetString () const
-
-overridevirtual
-
- -

Will return the data as a string.

- -

Implements Value.

- -

Definition at line 62 of file IntValue.cpp.

-
63 {
-
64  std::stringstream ss;
-
65  ss << value;
-
66 
-
67  return ss.str();
-
68 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const long long int & IntValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 25 of file IntValue.cpp.

-
26 {
-
27  return value;
-
28 }
-
-
-
- -

◆ operator int()

- -
-
- - - - - - - -
IntValue::operator int () const
-
- -

Definition at line 35 of file IntValue.cpp.

-
36 {
-
37  return (int)value;
-
38 }
-
-
-
- -

◆ operator long long int()

- -
-
- - - - - - - -
IntValue::operator long long int () const
-
- -

Definition at line 30 of file IntValue.cpp.

-
31 {
-
32  return value;
-
33 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
- -
IntValue(const long long int &value)
Definition: IntValue.cpp:5
-
Value(DATA_TYPE type)
Definition: Value.cpp:3
- - - - diff --git a/docs/classIntValue__coll__graph.map b/docs/classIntValue__coll__graph.map deleted file mode 100644 index 7dc6700..0000000 --- a/docs/classIntValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classIntValue__coll__graph.md5 b/docs/classIntValue__coll__graph.md5 deleted file mode 100644 index 4283d04..0000000 --- a/docs/classIntValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -fe282cdc62e45fcd3bd1eea2f9ef3879 \ No newline at end of file diff --git a/docs/classIntValue__coll__graph.png b/docs/classIntValue__coll__graph.png deleted file mode 100644 index 3133f8da4105a3106e2da0fd994a7355934beac0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2082 zcmZ`)dpy(YAOA89A(~_@uSKmL9k=CZLfJTw*MiT+$&b7NtXDI1-X; z#Ezm3DM}=k`(?SsF?KoM&g=F2^Y=Wj=lT5cJg?X1dET%0CEdxvT5dODHvj-~HfL}y zV08yqxRf}!Pi$7Efdxu9YmEa$Kj-6@Ww`(#`N;-n<`!GXE%dfi{4D;a-!4geP79Yp zzwVcgz6UQk1xFk?Xa8hGeE+Q{@(Qql2d{6|r{}+3If}R;xvGJ7D=tSN)alwO_7UgB zq{R+v#_1<3CtsH>SIVp!b=v7*C*<1))qM2|A6flM8>iBc{e|nID5BxTn>2_&9I7sB z7Y*e6DJYj45>UzIgX80rjRkj#wc37UR+-zcqTf#xy$~%eg+xZK>s#+ufj}SvfuL>h z$K{>LOZ6l5Gtzn|Po6aS_+)$4amV$buE5pBWnppAMi!XkI_6XGczj}_FvHxWh%&=I zP~5yCd4tCateu%5-s<{xjFz82H$Q(eYGI$V_ZFm+zf0UKFfh=kYHj`nN3&cb3SQ&Z)|Mr>vJFsC1x3~zOSmP$^@IHn&wjt zj@fVn&Ha_7r9={GZJL!QK}5edMWe0M_f-r91J^yP`dBO(85sxwqBS)&wXyigLcz_= z?S^VvmYjpVy%<0U2vCzsR!!^hBlEW+;^H2>VoMZ>0(H*^1Wa~!pYiZeZd)(tC6>E+ zdU^)y(wu&Fk7^n7eF{e)f*VFxr(>4Ca%7~Xr7^NPnwoyB?(S|?45mXkKR;i94K<8j zf@i%MtqG6>UWGN3s3VX_Bn+mD!8mz&Ek<>Dw?vP%#Pkzt*lc#8DFvyMnU&SgW^1ae z!w((uy>NlNxkNjs8Ev2<0YwiVy2;7?#Swh;HHUbw7a`^4<#%l9n)}a|yAdy5jQ6f- zZjST!SHoiQD414tq)3>cofp5g!eKDfQ_P*6oL&X$rrTxmP6q^(WSwYNM8VQ=hga!n zV<8>;+_e5D1ABz<&y)o3F2QnXDY~;|dHy)Pv{o%`g1A>A{noAZ@(LZQ1erf6`Iy1z z%+7{W^th8-scdI&-*JfoL9Q+R=y3?`O}mfCNLW2;Kc#is-Rwa-tA23AP#k#XX=96Q_2Uvq33v$2&W@s*VywhOo4 zbA38Z4OPDP^*OubWKUkv6LPL5w#h)vvK{nswlESus#y&#JT-UT)10ys$|jtbCBtBR zt@~YNj&D2)*D@*7wtP>3$vN5a7Iv0!8SPPO-1^B4oaqxmcXA1OF1#bka6!LrsPA_jT_p~vBr zP-x{)7?#3cwf^YwaT9{_iT8)UCW?Nn_a8w)A1_m!4~`U#yb})I+${Sa%v{INOO#*> zP_F;)C`#0BEaEi$qtftH>mULl z4qRxBjUba-o0}i>&$6c1jN>D#98Wq{*iuqbQe2$O@p$e}4D={l4Db^e#fu>Fb~N?oI(exAnJnSOa*|0-Y-ctW1hq4)pZ&WMpLI=jT%; z<+q2gxVzu`Fy9)@^^A>ev?@7v>{xkaB^A%pJ|VW#jynvRjUDX-OiHE?r_cl*O-2_2k(fr`h$#EYN&0hK7jb$JSZMnsehnYHzeBiu6NGY$H(n5`Mc>MjlcmL*u1HhhC2=f`pgZWReTo7djD|LRUAlOrNl2TH83d}&kz!-Goo zC{XlFe0w=K_-$`5cVWRZR70e3H!siH%1V2DU~X0CKTiV1!uY-%#P{;?L9W2X2v@J_ zX=#OC>lx?kgR$`~ - - - diff --git a/docs/classIntValue__inherit__graph.md5 b/docs/classIntValue__inherit__graph.md5 deleted file mode 100644 index 4283d04..0000000 --- a/docs/classIntValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -fe282cdc62e45fcd3bd1eea2f9ef3879 \ No newline at end of file diff --git a/docs/classIntValue__inherit__graph.png b/docs/classIntValue__inherit__graph.png deleted file mode 100644 index 3133f8da4105a3106e2da0fd994a7355934beac0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2082 zcmZ`)dpy(YAOA89A(~_@uSKmL9k=CZLfJTw*MiT+$&b7NtXDI1-X; z#Ezm3DM}=k`(?SsF?KoM&g=F2^Y=Wj=lT5cJg?X1dET%0CEdxvT5dODHvj-~HfL}y zV08yqxRf}!Pi$7Efdxu9YmEa$Kj-6@Ww`(#`N;-n<`!GXE%dfi{4D;a-!4geP79Yp zzwVcgz6UQk1xFk?Xa8hGeE+Q{@(Qql2d{6|r{}+3If}R;xvGJ7D=tSN)alwO_7UgB zq{R+v#_1<3CtsH>SIVp!b=v7*C*<1))qM2|A6flM8>iBc{e|nID5BxTn>2_&9I7sB z7Y*e6DJYj45>UzIgX80rjRkj#wc37UR+-zcqTf#xy$~%eg+xZK>s#+ufj}SvfuL>h z$K{>LOZ6l5Gtzn|Po6aS_+)$4amV$buE5pBWnppAMi!XkI_6XGczj}_FvHxWh%&=I zP~5yCd4tCateu%5-s<{xjFz82H$Q(eYGI$V_ZFm+zf0UKFfh=kYHj`nN3&cb3SQ&Z)|Mr>vJFsC1x3~zOSmP$^@IHn&wjt zj@fVn&Ha_7r9={GZJL!QK}5edMWe0M_f-r91J^yP`dBO(85sxwqBS)&wXyigLcz_= z?S^VvmYjpVy%<0U2vCzsR!!^hBlEW+;^H2>VoMZ>0(H*^1Wa~!pYiZeZd)(tC6>E+ zdU^)y(wu&Fk7^n7eF{e)f*VFxr(>4Ca%7~Xr7^NPnwoyB?(S|?45mXkKR;i94K<8j zf@i%MtqG6>UWGN3s3VX_Bn+mD!8mz&Ek<>Dw?vP%#Pkzt*lc#8DFvyMnU&SgW^1ae z!w((uy>NlNxkNjs8Ev2<0YwiVy2;7?#Swh;HHUbw7a`^4<#%l9n)}a|yAdy5jQ6f- zZjST!SHoiQD414tq)3>cofp5g!eKDfQ_P*6oL&X$rrTxmP6q^(WSwYNM8VQ=hga!n zV<8>;+_e5D1ABz<&y)o3F2QnXDY~;|dHy)Pv{o%`g1A>A{noAZ@(LZQ1erf6`Iy1z z%+7{W^th8-scdI&-*JfoL9Q+R=y3?`O}mfCNLW2;Kc#is-Rwa-tA23AP#k#XX=96Q_2Uvq33v$2&W@s*VywhOo4 zbA38Z4OPDP^*OubWKUkv6LPL5w#h)vvK{nswlESus#y&#JT-UT)10ys$|jtbCBtBR zt@~YNj&D2)*D@*7wtP>3$vN5a7Iv0!8SPPO-1^B4oaqxmcXA1OF1#bka6!LrsPA_jT_p~vBr zP-x{)7?#3cwf^YwaT9{_iT8)UCW?Nn_a8w)A1_m!4~`U#yb})I+${Sa%v{INOO#*> zP_F;)C`#0BEaEi$qtftH>mULl z4qRxBjUba-o0}i>&$6c1jN>D#98Wq{*iuqbQe2$O@p$e}4D={l4Db^e#fu>Fb~N?oI(exAnJnSOa*|0-Y-ctW1hq4)pZ&WMpLI=jT%; z<+q2gxVzu`Fy9)@^^A>ev?@7v>{xkaB^A%pJ|VW#jynvRjUDX-OiHE?r_cl*O-2_2k(fr`h$#EYN&0hK7jb$JSZMnsehnYHzeBiu6NGY$H(n5`Mc>MjlcmL*u1HhhC2=f`pgZWReTo7djD|LRUAlOrNl2TH83d}&kz!-Goo zC{XlFe0w=K_-$`5cVWRZR70e3H!siH%1V2DU~X0CKTiV1!uY-%#P{;?L9W2X2v@J_ zX=#OC>lx?kgR$`~ - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
ListValue Member List
-
-
- -

This is the complete list of members for ListValue, including all inherited members.

- - - - - - - - - - - - - - - - - - -
AddValue(const Value *value)ListValue
Deepcopy() const overrideListValuevirtual
GetAsOsString() const overrideListValuevirtual
GetDataType() constValue
GetFloat32() const overrideListValuevirtual
GetFloat64() const overrideListValuevirtual
GetInt32() const overrideListValuevirtual
GetInt64() const overrideListValuevirtual
GetList() const overrideListValuevirtual
GetString() const overrideListValuevirtual
GetValue() constListValue
ListValue()ListValue
operator std::vector< Value * >() constListValue
typeValueprotected
Value(DATA_TYPE type)Valueprotected
~ListValue() overrideListValue
~Value()Valueinlinevirtual
- - - - diff --git a/docs/classListValue.html b/docs/classListValue.html deleted file mode 100644 index a935940..0000000 --- a/docs/classListValue.html +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: ListValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
ListValue Class Reference
-
-
- -

Specializations for list values (uses std::vector<Value*>) - More...

- -

#include <ListValue.h>

-
-Inheritance diagram for ListValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for ListValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 ListValue ()
 
 ~ListValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
void AddValue (const Value *value)
 Will add this value to the list. More...
 
const std::vector< Value * > & GetValue () const
 Will return the raw value. More...
 
 operator std::vector< Value * > () const
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
const std::vector< Value * > & GetList () const override
 Will return this values list. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for list values (uses std::vector<Value*>)

- -

Definition at line 7 of file ListValue.h.

-

Constructor & Destructor Documentation

- -

◆ ListValue()

- -
-
- - - - - - - -
ListValue::ListValue ()
-
- -

Definition at line 5 of file ListValue.cpp.

-
5  :
- -
7 {
-
8  return;
-
9 }
-
-
-
- -

◆ ~ListValue()

- -
-
- - - - - -
- - - - - - - -
ListValue::~ListValue ()
-
-override
-
- -

Definition at line 11 of file ListValue.cpp.

-
12 {
-
13  for (Value* val : value)
-
14  delete val;
-
15 
-
16  value.clear();
-
17 
-
18  return;
-
19 }
-
-
-
-

Member Function Documentation

- -

◆ AddValue()

- -
-
- - - - - - - - -
void ListValue::AddValue (const Valuevalue)
-
- -

Will add this value to the list.

- -

Definition at line 31 of file ListValue.cpp.

-
32 {
-
33  this->value.emplace_back(value->Deepcopy());
-
34  return;
-
35 }
-
-
-
- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * ListValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Value.

- -

Definition at line 21 of file ListValue.cpp.

-
22 {
-
23  ListValue* newList = new ListValue();
-
24 
-
25  for (const Value* val : value)
-
26  newList->AddValue(val);
-
27 
-
28  return newList;
-
29 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string ListValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Value.

- -

Definition at line 42 of file ListValue.cpp.

-
43 {
-
44  std::stringstream ss;
-
45 
-
46  ss << "ListValue: [";
-
47 
-
48  for (const Value* val : value)
-
49  {
-
50  ss << *val;
-
51  if (val != value.back())
-
52  ss << ", ";
-
53  }
-
54 
-
55  ss << "]";
-
56 
-
57  return ss.str();
-
58 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double ListValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 82 of file ListValue.cpp.

-
83 {
- -
85 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double ListValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 77 of file ListValue.cpp.

-
78 {
- -
80 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int ListValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 72 of file ListValue.cpp.

-
73 {
- -
75 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int ListValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 67 of file ListValue.cpp.

-
68 {
- -
70 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & ListValue::GetList () const
-
-overridevirtual
-
- -

Will return this values list.

- -

Implements Value.

- -

Definition at line 92 of file ListValue.cpp.

-
93 {
-
94  return value;
-
95 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string ListValue::GetString () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 87 of file ListValue.cpp.

-
88 {
- -
90 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const std::vector< Value * > & ListValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 37 of file ListValue.cpp.

-
38 {
-
39  return value;
-
40 }
-
-
-
- -

◆ operator std::vector< Value * >()

- -
-
- - - - - - - -
ListValue::operator std::vector< Value * > () const
-
- -

Definition at line 60 of file ListValue.cpp.

-
61 {
-
62  return value;
-
63 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
void AddValue(const Value *value)
Will add this value to the list.
Definition: ListValue.cpp:31
-
Specializations for list values (uses std::vector<Value*>)
Definition: ListValue.h:7
- - -
Abstract class for values.
Definition: Value.h:8
-
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
-
Value(DATA_TYPE type)
Definition: Value.cpp:3
- - - - diff --git a/docs/classListValue__coll__graph.map b/docs/classListValue__coll__graph.map deleted file mode 100644 index 1053ad5..0000000 --- a/docs/classListValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classListValue__coll__graph.md5 b/docs/classListValue__coll__graph.md5 deleted file mode 100644 index e3af863..0000000 --- a/docs/classListValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -7d4215aa276a9b6216eeee2d4500b5d1 \ No newline at end of file diff --git a/docs/classListValue__coll__graph.png b/docs/classListValue__coll__graph.png deleted file mode 100644 index cc8b72799b5b25c4794d10b2d53bf2e71c74ae6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2274 zcmbuBc{r4N8^<3@$T`fYAq`2PPzq%y*)nE^#*kfuI2eXdD#xU(@7RX1j-`c$my#_s zS+f+z5EEmmgx4NvkVcI2bguK)`~La~9yW6uP1hjvaj)b#5R0 z9c()8BA)~_x>LG6#sQr?Y_6e}7Me~-?v8OW6)Yk_y`KY}36D<9IjSmfY$Et_Jo z@4h_p`19%KIT%>FKh)Ds@I_`lizq#GMR#v+i04`|7j@xs>B+D^TGm7Q-SjNm1GNR_ zED`krx(ZIB{HOQvWkw;<~!Jz5y zWw42mCdd~4}_S!}GJcL#^V>FKdDHa4zy+S%0<6B7ef78aLX`~JPZ zuMdqv&4kj$Maj4$@@)-Vk*a^J1lkcmnS4Ht%?&sXx%O|fL z;AZO1}{-f?Ao^U;0uCpeSN~H@!u2Rt_=1K<< zldXI68ym8XWlq_giQp*d6ywM;b?U;OTRe|b5CH}jmdK;sieWN$pT$Nm2S7>9c``(WbLU_s!_tz!@?3Yg+?7~u{z z&bv!(Cf(kf0LGmdyCM%f!%+$k{!IW-@_RJ-HZ0Ub<-fkf|C3In%``i|W-{4KW==)L zS$GEdM}9+ldwUkS>v&gJR}vnI4gdP7`G9jlJPo_1_X|Z}BWo-~Pj|N;f#6Ohj9K?0 z$OWF=lZCiJuQAKFuYS!Q!^BA7@knLdhpO8 z_Q#J#1_l9TkCpKr9&I59L!INyUXih7nMj(3hK94VGrkTE^gl2%(A9Oidi4xU^qi(< zJz-*Qaq-R`kBAD(LP|YY&|i55wVkX=(2!CK~%zY|!Y9jg5i}#Bny8-O-_7WaJKl%Wl6*(k>Z>!%gn& z>^ya>yvyY%DJm+0YAGsuFM0*ApG%4es;Q~v>jVe+`;RpQA3YcB>gdR3=IdBmTF%eS z0r#l7!FtIlDSQ{P*rBbghZl&V;^Ot;hh#NHRP}$Y@j&f{h6Z0BAC)ZRnH&@)iQGFn zI$Bh8oMg_K?n(lw@C&0#N=l$RY;A2prisQ)Pjw`q*aNenYAimN6D^zHz8w>p28A({ z`x@03ytm4loWwagmJa$QUsAAUt*@{5tyO9Tj5I~ z2U7K3zfrJwj8TS(G6t5}m9D+%>FH)>W*{dsGBS8PUR+!p*f1cUg*@x_@{zr2M|*pD zc{y-TUZmP7a%H?u!BR>nmiyyJw|5PNLZMQrRaI5)jp5A^oA|{MA5GAb&RFb$hXZ6X zxxtMD!V?aMhlYl}a3NqY?;e{axVgI%MjMaDGd|M8PAVzUYHL~XlDkbJai(;)yKA3K zP|VBgUur4;JHapSfIkVBZ_@o;5G+4GzmySX*ElUR69$E@5mRc>z?A*xuzzj>zs66e Yn0AVU*VOL>FD-zTg^l@hQ;+Ds0F?1e@Bjb+ diff --git a/docs/classListValue__inherit__graph.map b/docs/classListValue__inherit__graph.map deleted file mode 100644 index 1053ad5..0000000 --- a/docs/classListValue__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classListValue__inherit__graph.md5 b/docs/classListValue__inherit__graph.md5 deleted file mode 100644 index e3af863..0000000 --- a/docs/classListValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -7d4215aa276a9b6216eeee2d4500b5d1 \ No newline at end of file diff --git a/docs/classListValue__inherit__graph.png b/docs/classListValue__inherit__graph.png deleted file mode 100644 index cc8b72799b5b25c4794d10b2d53bf2e71c74ae6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2274 zcmbuBc{r4N8^<3@$T`fYAq`2PPzq%y*)nE^#*kfuI2eXdD#xU(@7RX1j-`c$my#_s zS+f+z5EEmmgx4NvkVcI2bguK)`~La~9yW6uP1hjvaj)b#5R0 z9c()8BA)~_x>LG6#sQr?Y_6e}7Me~-?v8OW6)Yk_y`KY}36D<9IjSmfY$Et_Jo z@4h_p`19%KIT%>FKh)Ds@I_`lizq#GMR#v+i04`|7j@xs>B+D^TGm7Q-SjNm1GNR_ zED`krx(ZIB{HOQvWkw;<~!Jz5y zWw42mCdd~4}_S!}GJcL#^V>FKdDHa4zy+S%0<6B7ef78aLX`~JPZ zuMdqv&4kj$Maj4$@@)-Vk*a^J1lkcmnS4Ht%?&sXx%O|fL z;AZO1}{-f?Ao^U;0uCpeSN~H@!u2Rt_=1K<< zldXI68ym8XWlq_giQp*d6ywM;b?U;OTRe|b5CH}jmdK;sieWN$pT$Nm2S7>9c``(WbLU_s!_tz!@?3Yg+?7~u{z z&bv!(Cf(kf0LGmdyCM%f!%+$k{!IW-@_RJ-HZ0Ub<-fkf|C3In%``i|W-{4KW==)L zS$GEdM}9+ldwUkS>v&gJR}vnI4gdP7`G9jlJPo_1_X|Z}BWo-~Pj|N;f#6Ohj9K?0 z$OWF=lZCiJuQAKFuYS!Q!^BA7@knLdhpO8 z_Q#J#1_l9TkCpKr9&I59L!INyUXih7nMj(3hK94VGrkTE^gl2%(A9Oidi4xU^qi(< zJz-*Qaq-R`kBAD(LP|YY&|i55wVkX=(2!CK~%zY|!Y9jg5i}#Bny8-O-_7WaJKl%Wl6*(k>Z>!%gn& z>^ya>yvyY%DJm+0YAGsuFM0*ApG%4es;Q~v>jVe+`;RpQA3YcB>gdR3=IdBmTF%eS z0r#l7!FtIlDSQ{P*rBbghZl&V;^Ot;hh#NHRP}$Y@j&f{h6Z0BAC)ZRnH&@)iQGFn zI$Bh8oMg_K?n(lw@C&0#N=l$RY;A2prisQ)Pjw`q*aNenYAimN6D^zHz8w>p28A({ z`x@03ytm4loWwagmJa$QUsAAUt*@{5tyO9Tj5I~ z2U7K3zfrJwj8TS(G6t5}m9D+%>FH)>W*{dsGBS8PUR+!p*f1cUg*@x_@{zr2M|*pD zc{y-TUZmP7a%H?u!BR>nmiyyJw|5PNLZMQrRaI5)jp5A^oA|{MA5GAb&RFb$hXZ6X zxxtMD!V?aMhlYl}a3NqY?;e{axVgI%MjMaDGd|M8PAVzUYHL~XlDkbJai(;)yKA3K zP|VBgUur4;JHapSfIkVBZ_@o;5G+4GzmySX*ElUR69$E@5mRc>z?A*xuzzj>zs66e Yn0AVU*VOL>FD-zTg^l@hQ;+Ds0F?1e@Bjb+ diff --git a/docs/classParameter-members.html b/docs/classParameter-members.html deleted file mode 100644 index 9f9b58b..0000000 --- a/docs/classParameter-members.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Parameter Member List
-
-
- -

This is the complete list of members for Parameter, including all inherited members.

- - - - - - -
GetValue() constParameter
Key() constParameter
operator<<(std::ostream &os, const Parameter &p)Parameterfriend
Parameter(const std::string &key, const Value *value)Parameterexplicit
~Parameter()Parameter
- - - - diff --git a/docs/classParameter.html b/docs/classParameter.html deleted file mode 100644 index 8782b5e..0000000 --- a/docs/classParameter.html +++ /dev/null @@ -1,279 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Parameter Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
Parameter Class Reference
-
-
- -

#include <Parameter.h>

- - - - - - - - - - - - -

-Public Member Functions

 Parameter (const std::string &key, const Value *value)
 
 ~Parameter ()
 
const std::string & Key () const
 Will return the key of this parameter. More...
 
const ValueGetValue () const
 Will return the value of this parameter. More...
 
- - - -

-Friends

std::ostream & operator<< (std::ostream &os, const Parameter &p)
 
-

Detailed Description

-
-

Definition at line 6 of file Parameter.h.

-

Constructor & Destructor Documentation

- -

◆ Parameter()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
Parameter::Parameter (const std::string & key,
const Valuevalue 
)
-
-explicit
-
- -

Definition at line 3 of file Parameter.cpp.

-
4  :
-
5  key{ key }
-
6 {
-
7  this->value = value->Deepcopy();
-
8  return;
-
9 }
-
-
-
- -

◆ ~Parameter()

- -
-
- - - - - - - -
Parameter::~Parameter ()
-
- -

Definition at line 11 of file Parameter.cpp.

-
12 {
-
13  delete value;
-
14  value = nullptr;
-
15 
-
16  return;
-
17 }
-
-
-
-

Member Function Documentation

- -

◆ GetValue()

- -
-
- - - - - - - -
const ::Value * Parameter::GetValue () const
-
- -

Will return the value of this parameter.

- -

Definition at line 24 of file Parameter.cpp.

-
25 {
-
26  return value;
-
27 }
-
-
-
- -

◆ Key()

- -
-
- - - - - - - -
const std::string & Parameter::Key () const
-
- -

Will return the key of this parameter.

- -

Definition at line 19 of file Parameter.cpp.

-
20 {
-
21  return key;
-
22 }
-
-
-
-

Friends And Related Function Documentation

- -

◆ operator<<

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::ostream& operator<< (std::ostream & os,
const Parameterp 
)
-
-friend
-
- -

Definition at line 18 of file Parameter.h.

-
19  {
-
20  return os << "{ Key: \"" << p.key << "\" -> " << *p.value << " }";
-
21  }
-
-
-
-
The documentation for this class was generated from the following files: -
-
virtual Value * Deepcopy() const =0
Will return a deeopopy of this object.
- - - - diff --git a/docs/classStringTools-members.html b/docs/classStringTools-members.html deleted file mode 100644 index 5d5bb3a..0000000 --- a/docs/classStringTools-members.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
StringTools Member List
-
-
- -

This is the complete list of members for StringTools, including all inherited members.

- - - - - - - - - -
Contains(const std::string &str, const char c)StringToolsstatic
IsNumeric(const std::string &str, const bool allowDecimalPoint=false)StringToolsstatic
ParseNumber(const std::string &str, bool &out_isInt, long double &out_number)StringToolsstatic
Replace(const std::string &str, const char find, const std::string &subst)StringToolsstatic
Replace(const std::string &str, const std::string &find, const std::string &subst)StringToolsstatic
SplitString(const std::string &str, const char delimiter)StringToolsstatic
SplitString(const std::string &str, const std::string &delimiter)StringToolsstatic
ToLower(const std::string &str)StringToolsstatic
- - - - diff --git a/docs/classStringTools.html b/docs/classStringTools.html deleted file mode 100644 index 7b961af..0000000 --- a/docs/classStringTools.html +++ /dev/null @@ -1,630 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: StringTools Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
StringTools Class Reference
-
-
- -

Internal helper class. - More...

- -

#include <StringTools.h>

- - - - - - - - - - - - - - - - - - - - - - - - - - -

-Static Public Member Functions

static bool Contains (const std::string &str, const char c)
 Will return wether or not a given char is in a string. More...
 
static std::string Replace (const std::string &str, const char find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static std::string Replace (const std::string &str, const std::string &find, const std::string &subst)
 Will replace a part of a string with another string. More...
 
static bool IsNumeric (const std::string &str, const bool allowDecimalPoint=false)
 Will return true if the given string consists only of digits (including signage) More...
 
static bool ParseNumber (const std::string &str, bool &out_isInt, long double &out_number)
 Will convert the number in str to a number. More...
 
static std::vector< std::string > SplitString (const std::string &str, const char delimiter)
 Will split a string by a delimiter char. The delimiter will be excluded! More...
 
static std::vector< std::string > SplitString (const std::string &str, const std::string &delimiter)
 Will split a string by a delimiter string. The delimiter will be excluded! More...
 
static std::string ToLower (const std::string &str)
 Will make a string all lower-case. More...
 
-

Detailed Description

-

Internal helper class.

-

Feel free to use it tho.

- -

Definition at line 9 of file StringTools.h.

-

Member Function Documentation

- -

◆ Contains()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool StringTools::Contains (const std::string & str,
const char c 
)
-
-static
-
- -

Will return wether or not a given char is in a string.

- -

Definition at line 3 of file StringTools.cpp.

-
4 {
-
5  for (const char& i : str)
-
6  if (i == c)
-
7  return true;
-
8 
-
9  return false;
-
10 }
-
-
-
- -

◆ IsNumeric()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
bool StringTools::IsNumeric (const std::string & str,
const bool allowDecimalPoint = false 
)
-
-static
-
- -

Will return true if the given string consists only of digits (including signage)

- -

Definition at line 54 of file StringTools.cpp.

-
55 {
-
56  if (str.length() == 0) return false;
-
57 
-
58  bool alreadyParsedDecimalPoint = false;
-
59  std::size_t digitCount = 0;
-
60 
-
61  for (std::size_t i = 0; i < str.length(); i++)
-
62  {
-
63  if (!(
-
64  ((str[i] >= '0') && (str[i] <= '9')) ||
-
65  ((str[i] == '-') && (i == 0)) ||
-
66  ((str[i] == '.') && (allowDecimalPoint) && (!alreadyParsedDecimalPoint) && (digitCount > 0))
-
67  )) return false;
-
68 
-
69 
-
70  // Here we just have to check for the character. Not for any other conditions.
-
71  // Why? Because if these conditions failed, the function would have already returned false.
-
72  if (((str[i] >= '0') && (str[i] <= '9'))) digitCount++;
-
73  if (str[i] == '.') alreadyParsedDecimalPoint = true;
-
74  }
-
75 
-
76  // Even if we did not find any invalid chars, we should still return false, if we found no digits at all.
-
77  return digitCount > 0;
-
78 }
-
-
-
- -

◆ ParseNumber()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
bool StringTools::ParseNumber (const std::string & str,
bool & out_isInt,
long double & out_number 
)
-
-static
-
- -

Will convert the number in str to a number.

-


- Returns wether or not the operation was successful.
- Also returns wether the number is an integer, or floating point. If int, cast out_number to int.

- -

Definition at line 80 of file StringTools.cpp.

-
81 {
-
82  bool isDecimal = false;
-
83 
-
84  if (str.length() == 0) return false;
-
85  if (Contains(str, '.')) isDecimal = true;
-
86 
-
87  if (isDecimal)
-
88  {
-
89  try
-
90  {
-
91  out_number = std::stold(str);
-
92  out_isInt = false;
-
93  }
-
94  catch (std::invalid_argument&)
-
95  {
-
96  return false;
-
97  }
-
98  catch (std::out_of_range&)
-
99  {
-
100  return false;
-
101  }
-
102  }
-
103  else
-
104  {
-
105  try
-
106  {
-
107  out_number = (long double)std::stoll(str);
-
108  out_isInt = true;
-
109  }
-
110  catch (std::invalid_argument&)
-
111  {
-
112  return false;
-
113  }
-
114  catch (std::out_of_range&)
-
115  {
-
116  return false;
-
117  }
-
118  }
-
119 
-
120  return true;
-
121 }
-
-
-
- -

◆ Replace() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string StringTools::Replace (const std::string & str,
const char find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 12 of file StringTools.cpp.

-
13 {
-
14  std::stringstream ss;
-
15 
-
16  for (std::size_t i = 0; i < str.length(); i++)
-
17  {
-
18  if (str[i] != find) ss << str[i];
-
19  else ss << subst;
-
20  }
-
21 
-
22  return ss.str();
-
23 }
-
-
-
- -

◆ Replace() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
std::string StringTools::Replace (const std::string & str,
const std::string & find,
const std::string & subst 
)
-
-static
-
- -

Will replace a part of a string with another string.

- -

Definition at line 25 of file StringTools.cpp.

-
26 {
-
27  if (find.length() == 0) return str;
-
28 
-
29  std::stringstream ss;
-
30 
-
31  std::size_t posFound = 0;
-
32  std::size_t lastFound = 0;
-
33 
-
34  while (posFound != std::string::npos)
-
35  {
-
36  lastFound = posFound;
-
37  posFound = str.find(find, posFound);
-
38 
-
39  if (posFound != std::string::npos)
-
40  {
-
41  ss << str.substr(lastFound, posFound - lastFound) << subst;
-
42  posFound += find.length();
-
43  }
-
44  else
-
45  {
-
46  ss << str.substr(lastFound, (str.length()) - lastFound);
-
47  }
-
48  }
-
49 
-
50  return ss.str();
-
51 }
-
-
-
- -

◆ SplitString() [1/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > StringTools::SplitString (const std::string & str,
const char delimiter 
)
-
-static
-
- -

Will split a string by a delimiter char. The delimiter will be excluded!

- -

Definition at line 123 of file StringTools.cpp.

-
124 {
-
125  if (str.length() == 0) return std::vector<std::string>();
-
126 
-
127  return SplitString(str, delimiter);
-
128 }
-
-
-
- -

◆ SplitString() [2/2]

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::vector< std::string > StringTools::SplitString (const std::string & str,
const std::string & delimiter 
)
-
-static
-
- -

Will split a string by a delimiter string. The delimiter will be excluded!

- -

Definition at line 130 of file StringTools.cpp.

-
131 {
-
132  if (str.length() == 0) return std::vector<std::string>();
-
133 
-
134  std::vector<std::string> parts;
-
135 
-
136  if (delimiter.length() == 0) // If the delimiter is "" (empty), just split between every single char. Not useful, but logical
-
137  {
-
138  for (std::size_t i = 0; i < str.length(); i++)
-
139  {
-
140  parts.push_back(std::string({ str[i] }));
-
141  }
-
142  return parts;
-
143  }
-
144 
-
145  std::size_t posFound = 0;
-
146  std::size_t lastFound = 0;
-
147 
-
148  while (posFound != std::string::npos)
-
149  {
-
150  lastFound = posFound;
-
151  posFound = str.find(delimiter, posFound);
-
152 
-
153  std::string found;
-
154 
-
155  if (posFound != std::string::npos)
-
156  {
-
157  found = str.substr(lastFound, posFound - lastFound);
-
158  posFound += delimiter.length();
-
159  }
-
160  else
-
161  {
-
162  found = str.substr(lastFound, str.length() - lastFound);
-
163  }
-
164 
-
165  parts.push_back(found);
-
166  }
-
167 
-
168  return parts;
-
169 }
-
-
-
- -

◆ ToLower()

- -
-
- - - - - -
- - - - - - - - -
std::string StringTools::ToLower (const std::string & str)
-
-static
-
- -

Will make a string all lower-case.

- -

Definition at line 171 of file StringTools.cpp.

-
172 {
-
173  std::stringstream ss;
-
174  for (std::size_t i = 0; i < str.length(); i++)
-
175  {
-
176  if ((str[i] >= 'A') && (str[i] <= 'Z')) ss << (char)(((int)str[i]) + 32);
-
177  else if (str[i] == -60) ss << (char)-28; // AE => ae
-
178  else if (str[i] == -42) ss << (char)-10; // OE => oe
-
179  else if (str[i] == -36) ss << (char)-4; // UE => ue
-
180  else ss << str[i];
-
181  }
-
182 
-
183  return ss.str();
-
184 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
static bool Contains(const std::string &str, const char c)
Will return wether or not a given char is in a string.
Definition: StringTools.cpp:3
-
static std::vector< std::string > SplitString(const std::string &str, const char delimiter)
Will split a string by a delimiter char. The delimiter will be excluded!
- - - - diff --git a/docs/classStringValue-members.html b/docs/classStringValue-members.html deleted file mode 100644 index 2f06bd7..0000000 --- a/docs/classStringValue-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
StringValue Member List
-
-
- -

This is the complete list of members for StringValue, including all inherited members.

- - - - - - - - - - - - - - - - - -
Deepcopy() const overrideStringValuevirtual
GetAsOsString() const overrideStringValuevirtual
GetDataType() constValue
GetFloat32() const overrideStringValuevirtual
GetFloat64() const overrideStringValuevirtual
GetInt32() const overrideStringValuevirtual
GetInt64() const overrideStringValuevirtual
GetList() const overrideStringValuevirtual
GetString() const overrideStringValuevirtual
GetValue() constStringValue
operator std::string() constStringValue
StringValue(const std::string &value)StringValue
typeValueprotected
Value(DATA_TYPE type)Valueprotected
~StringValue() overrideStringValueinline
~Value()Valueinlinevirtual
- - - - diff --git a/docs/classStringValue.html b/docs/classStringValue.html deleted file mode 100644 index 57ae1ac..0000000 --- a/docs/classStringValue.html +++ /dev/null @@ -1,551 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: StringValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
StringValue Class Reference
-
-
- -

Specializations for string values (uses std::string) - More...

- -

#include <StringValue.h>

-
-Inheritance diagram for StringValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for StringValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 StringValue (const std::string &value)
 
 ~StringValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
const std::string & GetValue () const
 Will return the raw value. More...
 
 operator std::string () const
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Will return this value as a string. More...
 
const std::vector< Value * > & GetList () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for string values (uses std::string)

- -

Definition at line 7 of file StringValue.h.

-

Constructor & Destructor Documentation

- -

◆ StringValue()

- -
-
- - - - - - - - -
StringValue::StringValue (const std::string & value)
-
- -

Definition at line 5 of file StringValue.cpp.

-
6  :
- -
8  value { value }
-
9 {
-
10  return;
-
11 }
-
-
-
- -

◆ ~StringValue()

- -
-
- - - - - -
- - - - - - - -
StringValue::~StringValue ()
-
-inlineoverride
-
- -

Definition at line 11 of file StringValue.h.

-
11 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * StringValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Value.

- -

Definition at line 13 of file StringValue.cpp.

-
14 {
-
15  return new StringValue(value);
-
16 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string StringValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Value.

- -

Definition at line 18 of file StringValue.cpp.

-
19 {
-
20  std::stringstream ss;
-
21  ss << "StringValue: " << value;
-
22  return ss.str();
-
23 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double StringValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 52 of file StringValue.cpp.

-
53 {
- -
55 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double StringValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 47 of file StringValue.cpp.

-
48 {
- -
50 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int StringValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 42 of file StringValue.cpp.

-
43 {
- -
45 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int StringValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 37 of file StringValue.cpp.

-
38 {
- -
40 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & StringValue::GetList () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 62 of file StringValue.cpp.

-
63 {
- -
65 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string StringValue::GetString () const
-
-overridevirtual
-
- -

Will return this value as a string.

- -

Implements Value.

- -

Definition at line 57 of file StringValue.cpp.

-
58 {
-
59  return value;
-
60 }
-
-
-
- -

◆ GetValue()

- -
-
- - - - - - - -
const std::string & StringValue::GetValue () const
-
- -

Will return the raw value.

- -

Definition at line 25 of file StringValue.cpp.

-
26 {
-
27  return value;
-
28 }
-
-
-
- -

◆ operator std::string()

- -
-
- - - - - - - -
StringValue::operator std::string () const
-
- -

Definition at line 30 of file StringValue.cpp.

-
31 {
-
32  return value;
-
33 }
-
-
-
-
The documentation for this class was generated from the following files: -
-
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
-
Value(DATA_TYPE type)
Definition: Value.cpp:3
-
StringValue(const std::string &value)
Definition: StringValue.cpp:5
- - - - - diff --git a/docs/classStringValue__coll__graph.map b/docs/classStringValue__coll__graph.map deleted file mode 100644 index d2b7fd3..0000000 --- a/docs/classStringValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classStringValue__coll__graph.md5 b/docs/classStringValue__coll__graph.md5 deleted file mode 100644 index 8d0e42c..0000000 --- a/docs/classStringValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -22c37eb3e53210c1533895d69c2ccfe0 \ No newline at end of file diff --git a/docs/classStringValue__coll__graph.png b/docs/classStringValue__coll__graph.png deleted file mode 100644 index dda135c8e73552aa92a2586ec899c47c641198f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2908 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 - - - diff --git a/docs/classStringValue__inherit__graph.md5 b/docs/classStringValue__inherit__graph.md5 deleted file mode 100644 index 8d0e42c..0000000 --- a/docs/classStringValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -22c37eb3e53210c1533895d69c2ccfe0 \ No newline at end of file diff --git a/docs/classStringValue__inherit__graph.png b/docs/classStringValue__inherit__graph.png deleted file mode 100644 index dda135c8e73552aa92a2586ec899c47c641198f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2908 zcmb_e2Uio@77mD^2r5?*hyrTpy{WW_Kq!$eh=eW>Kzh5Bgd#<%grWpcf+z?g)zBdk zrHIrh9W-D-;1Uc{q=ojzckf&G54@Q*bJp5>&Y4}mZzr3X=yP#EI6xo}7s3F33s}8? z$Da)hy!orJmcRmbHq?iMj(*>Tq|!$q&npN@|lm8yT}6ItO{5@tJ)@#`Mu9M!D2q=eww^GEBv-#G41Kn6K~o{o&~ zC>-@{4qC+8_tkjyF|%=Ty(}*7obEDG$r7FKVK^w)ch2mZE+M%y{qo?++UxGX7|a(H;CFy1|; z@>u$Qy5?bS`JL*akr9>~;o+(z5~;JZ)4FnTcDCKtkE9zIsK~>^QzU6vJ#OLPV4|hP z6cZB@78X|HP8Rf?Cicwt<#gNe+RphCN=%<&Z7M}IHHG+8SgMe<;Ly-e(9N4St(*KW z4VM_}WC`E8b?ejeW|8FbSfwp!XKxRR_#;c03jC-@KfNh(ufdq+VtB#i9A~g{N=izT zKb2VxKN!g7?d1iPmBse=8*ze<9UL5dUs!Nf%u5*P8yHAiS@G>#+}r+XJ52_n^gvq+ zgHd;@out)A>;~@L_J6EWT(P?9|M;eeP~I7%WdCTrn*z z4LA{-d&j_lZ6^8%rdO1S!<`!%8j`-p#KZ*G)62@pc(=JczC@$V_U9?Vb#*@v54()3 zVZn)yUz&+qH~I=R`ceqAD)N&nsW8meX57YAW6S;qltZez~?f?sE(3z9=kjNY3cQgn_qr z1u6B7eE51Wk%(KXj`jiPmp_=?T@3S=ITCtCOv87> zL4A(y?Pac`c5H8hN?HYt=7vV2Wu6(AM49C8WQ&W{b z711HXU%u!Yr_I536m9ag$BOhRBV!I-u7s!vqv!XBhHB58&87!%AiJ^lkag9zx7U?6 zH;<^)4zV+*|0}nltLibR)Hg0if^AMel2!>TGXNS58#5RQZ%+@;`016ylm^WwS*a)i z7&^+VdzK8e$Y6eR+Iy!9Ap+*79jxvxAsGz4C|QbkLXo~4)&joOv2uq(N7#OWKK$St z5ebv&V=x#?OA6GL>yw_8phe&Gpx}n?rK*-YmUgZk3EC^u0=o!%rhuyQl|d|!8&@Rr zrM^Gd{zavK)As*VCCBf|o#o-ldqD^JU$GW>H($V4GR*L?D2&b6gb$9mo{}~I3NjrZn@W;fPbockM$KSn+e`;=S4u``Z=8|KMv3hf#1UW{m9S3?G z3Wd6uO_e^2>a9T58XypFkl}MN#x_qKa`M@;XKTVY+;B3sdOkk%!VV{A=gTvZ+X6rnz8du$t3Y;4*2*QA z`}p~Z!C(UQHpbf8%qSGac=FMupQNKU_gEeUv<2g6+D=jR9XI9dCf zc6Jw7PYGTK7|Q$WFONYyM&ZR~9P25wGD`rWLqo64L~L-qdGp3Y8KS7D=;7scep$9b z-VN#C;Lx9|5ZB(WU1itYUh7V-7*bMF3ZF~6W?*QjQ#yXH)@5^{Xc^YC=-?{1ijC!BKGq>TbVMWxYtQ+TB0A!++--9mK@ z4MShQ_KQ7>h|S62jf#r08vf1<7-M5&(}doX1aWb30kvW&nLUaIC<)`sY|=g6P~D3Y`Np)90wbGz9glj z%+7YD3X6#yJGM9_pdONe#}BkWI1vyOR8&_N+}TlBUS2-h|4nZ$^|@VSWMrmrGE^V? zjY?IZq0>5ZPsIUFcux`@Y%G#DcGg@9G{Ut}D3R?IiVNTYh{&Lo?{9ta`?Wdgdzm*n zI(mWpjC^>orvORg;{>m7Y_L{t6N@slvvvLb3|VlEgSJjG+@3rJI5pn z=014ABws}fm?3<8e7?`mBZnd)BEq&Qp_BDqyl7HEL4jbEed`B+ikIkgflK3U&W8ysl)u-bB4fK<=J)JZ!A|e9t+k4t*dC$j> z7p0~9C1Fr#-2MBY>qq-RR#kRAfS1WhNi`|%(wvZx`lhDbi3#gqHM}tgpXrk)PbQj! z#DHn!j6m-zAiGd?b<8V4*W^#fAj`pOc6N5w07!u2Vu(cI-J|3F;CNiU$LGsH`FD>y zMh`reuwXlJ;`~TtsAxQHo=Vknb6bEXD)_35+z!pl%mn7Wzu{29o7Lq@gU=jaLVu8; zMwq - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Value Member List
-
-
- -

This is the complete list of members for Value, including all inherited members.

- - - - - - - - - - - - - - -
Deepcopy() const =0Valuepure virtual
GetAsOsString() const =0Valuepure virtual
GetDataType() constValue
GetFloat32() const =0Valuepure virtual
GetFloat64() const =0Valuepure virtual
GetInt32() const =0Valuepure virtual
GetInt64() const =0Valuepure virtual
GetList() const =0Valuepure virtual
GetString() const =0Valuepure virtual
operator<<(std::ostream &os, const Value &v)Valuefriend
typeValueprotected
Value(DATA_TYPE type)Valueprotected
~Value()Valueinlinevirtual
- - - - diff --git a/docs/classValue.html b/docs/classValue.html deleted file mode 100644 index 3e7e312..0000000 --- a/docs/classValue.html +++ /dev/null @@ -1,553 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Value Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
- -
- -

Abstract class for values. - More...

- -

#include <Value.h>

-
-Inheritance diagram for Value:
-
-
Inheritance graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

virtual ~Value ()
 
virtual ValueDeepcopy () const =0
 Will return a deeopopy of this object. More...
 
virtual std::string GetAsOsString () const =0
 Will return a string suitable for an std::ostream. More...
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
virtual long long int GetInt64 () const =0
 Will attempt to return the integer data (long long) More...
 
virtual int GetInt32 () const =0
 Will attempt to return the integer data (int) More...
 
virtual long double GetFloat64 () const =0
 Will attempt to return the floating-point data (long double) More...
 
virtual double GetFloat32 () const =0
 Will attempt to return the floating-point data (double) More...
 
virtual std::string GetString () const =0
 Will attempt to return the string-data. More...
 
virtual const std::vector< Value * > & GetList () const =0
 Will attempt to return the list-data. More...
 
- - - -

-Protected Member Functions

 Value (DATA_TYPE type)
 
- - - -

-Protected Attributes

DATA_TYPE type
 
- - - -

-Friends

std::ostream & operator<< (std::ostream &os, const Value &v)
 
-

Detailed Description

-

Abstract class for values.

- -

Definition at line 8 of file Value.h.

-

Constructor & Destructor Documentation

- -

◆ ~Value()

- -
-
- - - - - -
- - - - - - - -
virtual Value::~Value ()
-
-inlinevirtual
-
- -

Definition at line 11 of file Value.h.

-
11 {};
-
-
-
- -

◆ Value()

- -
-
- - - - - -
- - - - - - - - -
Value::Value (DATA_TYPE type)
-
-protected
-
- -

Definition at line 3 of file Value.cpp.

-
4  :
-
5  type{ type }
-
6 {
-
7  return;
-
8 }
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
virtual Value* Value::Deepcopy () const
-
-pure virtual
-
- -

Will return a deeopopy of this object.

- -

Implemented in FloatValue, ListValue, StringValue, IntValue, and VoidValue.

- -
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
virtual std::string Value::GetAsOsString () const
-
-pure virtual
-
- -

Will return a string suitable for an std::ostream.

- -

Implemented in FloatValue, ListValue, StringValue, IntValue, and VoidValue.

- -
-
- -

◆ GetDataType()

- -
-
- - - - - - - -
DATA_TYPE Value::GetDataType () const
-
- -

Will return the data type of this value.

- -

Definition at line 10 of file Value.cpp.

-
11 {
-
12  return type;
-
13 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
virtual double Value::GetFloat32 () const
-
-pure virtual
-
- -

Will attempt to return the floating-point data (double)

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
virtual long double Value::GetFloat64 () const
-
-pure virtual
-
- -

Will attempt to return the floating-point data (long double)

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
virtual int Value::GetInt32 () const
-
-pure virtual
-
- -

Will attempt to return the integer data (int)

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
virtual long long int Value::GetInt64 () const
-
-pure virtual
-
- -

Will attempt to return the integer data (long long)

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
virtual const std::vector<Value*>& Value::GetList () const
-
-pure virtual
-
- -

Will attempt to return the list-data.

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
virtual std::string Value::GetString () const
-
-pure virtual
-
- -

Will attempt to return the string-data.

- -

Implemented in ListValue, FloatValue, IntValue, StringValue, and VoidValue.

- -
-
-

Friends And Related Function Documentation

- -

◆ operator<<

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::ostream& operator<< (std::ostream & os,
const Valuev 
)
-
-friend
-
- -

Definition at line 22 of file Value.h.

-
23  {
-
24  return os << v.GetAsOsString();
-
25  }
-
-
-
-

Member Data Documentation

- -

◆ type

- -
-
- - - - - -
- - - - -
DATA_TYPE Value::type
-
-protected
-
- -

Definition at line 46 of file Value.h.

- -
-
-
The documentation for this class was generated from the following files: -
-
DATA_TYPE type
Definition: Value.h:46
-
virtual std::string GetAsOsString() const =0
Will return a string suitable for an std::ostream.
- - - - diff --git a/docs/classValue__inherit__graph.map b/docs/classValue__inherit__graph.map deleted file mode 100644 index 21e25b5..0000000 --- a/docs/classValue__inherit__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/docs/classValue__inherit__graph.md5 b/docs/classValue__inherit__graph.md5 deleted file mode 100644 index 003a4ef..0000000 --- a/docs/classValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -77b1f35d4bc0222204841b7253e3c0c7 \ No newline at end of file diff --git a/docs/classValue__inherit__graph.png b/docs/classValue__inherit__graph.png deleted file mode 100644 index 110109e1bc68beab6a98081d22ab8ec6bebc1a7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8903 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
VoidValue Member List
-
-
- -

This is the complete list of members for VoidValue, including all inherited members.

- - - - - - - - - - - - - - - -
Deepcopy() const overrideVoidValuevirtual
GetAsOsString() const overrideVoidValuevirtual
GetDataType() constValue
GetFloat32() const overrideVoidValuevirtual
GetFloat64() const overrideVoidValuevirtual
GetInt32() const overrideVoidValuevirtual
GetInt64() const overrideVoidValuevirtual
GetList() constVoidValuevirtual
GetString() const overrideVoidValuevirtual
typeValueprotected
Value(DATA_TYPE type)Valueprotected
VoidValue()VoidValue
~Value()Valueinlinevirtual
~VoidValue() overrideVoidValueinline
- - - - diff --git a/docs/classVoidValue.html b/docs/classVoidValue.html deleted file mode 100644 index 0ae229b..0000000 --- a/docs/classVoidValue.html +++ /dev/null @@ -1,497 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: VoidValue Class Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
VoidValue Class Reference
-
-
- -

Specializations for void values. - More...

- -

#include <VoidValue.h>

-
-Inheritance diagram for VoidValue:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for VoidValue:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 VoidValue ()
 
 ~VoidValue () override
 
ValueDeepcopy () const override
 Will return a deeopopy of this object. More...
 
std::string GetAsOsString () const override
 Will return a string suitable for an std::ostream;. More...
 
long long int GetInt64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
int GetInt32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
long double GetFloat64 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
double GetFloat32 () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
std::string GetString () const override
 Throws HazelnuppValueNotConvertibleException. More...
 
const std::vector< Value * > & GetList () const
 Throws HazelnuppValueNotConvertibleException. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 
DATA_TYPE GetDataType () const
 Will return the data type of this value. More...
 
- - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from Value
 Value (DATA_TYPE type)
 
- Protected Attributes inherited from Value
DATA_TYPE type
 
-

Detailed Description

-

Specializations for void values.

-

These house no value whatsoever, but only communicate information by merely existing.

- -

Definition at line 6 of file VoidValue.h.

-

Constructor & Destructor Documentation

- -

◆ VoidValue()

- -
-
- - - - - - - -
VoidValue::VoidValue ()
-
- -

Definition at line 4 of file VoidValue.cpp.

-
5  :
- -
7 {
-
8  return;
-
9 }
-
-
-
- -

◆ ~VoidValue()

- -
-
- - - - - -
- - - - - - - -
VoidValue::~VoidValue ()
-
-inlineoverride
-
- -

Definition at line 10 of file VoidValue.h.

-
10 {};
-
-
-
-

Member Function Documentation

- -

◆ Deepcopy()

- -
-
- - - - - -
- - - - - - - -
Value * VoidValue::Deepcopy () const
-
-overridevirtual
-
- -

Will return a deeopopy of this object.

- -

Implements Value.

- -

Definition at line 11 of file VoidValue.cpp.

-
12 {
-
13  return new VoidValue();
-
14 }
-
-
-
- -

◆ GetAsOsString()

- -
-
- - - - - -
- - - - - - - -
std::string VoidValue::GetAsOsString () const
-
-overridevirtual
-
- -

Will return a string suitable for an std::ostream;.

- -

Implements Value.

- -

Definition at line 16 of file VoidValue.cpp.

-
17 {
-
18  return "VoidValue";
-
19 }
-
-
-
- -

◆ GetFloat32()

- -
-
- - - - - -
- - - - - - - -
double VoidValue::GetFloat32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 38 of file VoidValue.cpp.

-
39 {
- -
41 }
-
-
-
- -

◆ GetFloat64()

- -
-
- - - - - -
- - - - - - - -
long double VoidValue::GetFloat64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 33 of file VoidValue.cpp.

-
34 {
- -
36 }
-
-
-
- -

◆ GetInt32()

- -
-
- - - - - -
- - - - - - - -
int VoidValue::GetInt32 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 28 of file VoidValue.cpp.

-
29 {
- -
31 }
-
-
-
- -

◆ GetInt64()

- -
-
- - - - - -
- - - - - - - -
long long int VoidValue::GetInt64 () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 23 of file VoidValue.cpp.

-
24 {
- -
26 }
-
-
-
- -

◆ GetList()

- -
-
- - - - - -
- - - - - - - -
const std::vector< Value * > & VoidValue::GetList () const
-
-virtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 48 of file VoidValue.cpp.

-
49 {
- -
51 }
-
-
-
- -

◆ GetString()

- -
-
- - - - - -
- - - - - - - -
std::string VoidValue::GetString () const
-
-overridevirtual
-
- -

Throws HazelnuppValueNotConvertibleException.

- -

Implements Value.

- -

Definition at line 43 of file VoidValue.cpp.

-
44 {
- -
46 }
-
-
-
-
The documentation for this class was generated from the following files: -
- - -
Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not ...
-
Value(DATA_TYPE type)
Definition: Value.cpp:3
- - - - diff --git a/docs/classVoidValue__coll__graph.map b/docs/classVoidValue__coll__graph.map deleted file mode 100644 index f9c9a0e..0000000 --- a/docs/classVoidValue__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classVoidValue__coll__graph.md5 b/docs/classVoidValue__coll__graph.md5 deleted file mode 100644 index 8bca56a..0000000 --- a/docs/classVoidValue__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -49110319ff8617406aa3f422d40aa923 \ No newline at end of file diff --git a/docs/classVoidValue__coll__graph.png b/docs/classVoidValue__coll__graph.png deleted file mode 100644 index abb7ae4e49915dab2bfa56d303b746d80937db58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2346 zcmbtWdpy%^8~-Jz)Jh0Bt(Yj0oN^9LtgsO!=8X~3&{pUm9T+O+!PB%@NJ7SpIYj2r z*3{TqM01E*3(cm3h2-ho)8~EOKi+@e`~KYb_4!=)eckuHo**mu)MDAI4$1Hl{^E&f~k$u94-iwzmQNlV}+A9&hXf!%4&Gm*`!3vMTfJR0dJr1sV zIWjUbHg?#8@F5Ml?e?K7JI3=LJbYMy_Y`c_`=GoLE6-}yV=@>+Lqql*H!Ir+Mk5&> zUP>GF`uh5UU-b#G@KRUbiCY0{aQF<5h{(u_gB8@496UZbDT!o{x!$f-DW{@u41rh@ z``g+0$>Z!u$S-gcx=T3WtK zCOX*g;{5!*j*g>z{_=P6*yqn@uDONV74MwwodoCKGoOp8H9VWeUpw4Jx)>FZk zN42$UfY+~Id*vBOzkZbiyenVL%*-T-h9k5Ig@qLeQv&e}8odEf)z;3A(9VoF=eRmp z1y6kYq@1h-*iVh`(NGbIL`q6ZLaYO(tS0c$!otFOEeq4zhno1vkdQblA{``C4T+?T z$mS4VXXSP4%6YMagM*s7YU=7c#d1RYdx2neb#;@zqlT`o?$)jAfR`d^bQ7P&Vm*CY zL7`A+w4sD4f_Z4d+b1==*k>#jm*nJSqo|~0Vr+aeI+}h_8kdkDd0uEDcda|z5;3aq zLZ25)6R`5~a&wQvmv!yXraO1S;PA!o-#J_^+|RE?_q_De>)F}a?rt~N(!`aL(AET8 zR@VGjYaSDIGA1S_I@(Hm!=a9=`76i=<>lMW&Bfpaq6#K4V|+mGoVlEm!}WB%9`}F3 z(_*?$VG{mxD8>r}0@Vg(-LAI~)`y`tgbHaYI73s@?5GBuhEyu89aS*XzLnJfH2r|* zr$7JHz>fcX z_s(~9SrRpG_@?&^@%GM*7m(X-R8PsZ2|9&1{Xjh{_C-9pO^Rqd&nQkv6}+ zu(A(YPcvkDGmLVh>pNCn7kukv%8icxg*^&uY0Ib}5Mq+YDg%n_$C17Mk%A*l7iKHT ze6&P#sV?9YDWJfdlkykU~(}d~){lD8ivq`xZT? zpF^GbK@s6opki_SL`iXIxaIiF0{4n@-BC)wI?qc}{Eqmxq+t?bL+EF-&D;Nt~$O`XC%4lyTg-CpHKy7+mj=TT9VmX|#? z>PmGu6VEB#zbD_DVDnKZyj@guWzU1g#sZe0F2T>M5#Bo{IM~)yZieA=@h|G5F zdiCnnQmQLnugsA`B?rvR&h91pAT5s71a1U@gdactSYF;-tM+|yk=x(@Mv;DL zQL_AP`oe_^bUIycBP)4LREI-XAgm&Ol(y5sVfl-I#ompLi+fa6HQi6NM%#_C*`g26 z3uTRARcVIn|7p8_f7hKmcL)T+K=Hm-8f|W(qo^mm`gNQm$v{=r&Dq4#@(vC}Ln?oyy zvG@}x)cxSyn#%IrdoFAaM-gZUCNr6y%^?FQDgeklk>RuOlrA&MYI=IwRtHpmW9Hc= zY}(HyYIXI@d*&@3k9Y6hJsDpo=h-TzM})-&e(7>OouC8uuY$Ou5Hiv}y`%^EkB#)7lf$n!_42_J~Y__dVZa@uW_{XZd zUwThCHF&r_OeB%GIy?XD++w*eVf@YT@Wa8`z+FK>L0fozC~ETD8;tP97Mw?frS`w* zsmBqBa2p-iIl=>3I4q^o18Qh4F1MhDa5$Gt-d&EEnV-)SEVW)U%=e~@fE{F+_RG@J z5_o!pva+fQ&ePL#WpSQDCXY9tE}B4Pc$6Ql^@YKDFsaiV(r~gKD?L43_E?u>7?GtW z69}ZOqoZ(^EJnb|4ZDiiFvyQC_uZP-M4z$Cnqh;z|E1i2fX?DHX9w?2KEKt1A>%wP>T<-5$;;J;czg<@R05DHK KXuU`H^?w5s8-i~D diff --git a/docs/classVoidValue__inherit__graph.map b/docs/classVoidValue__inherit__graph.map deleted file mode 100644 index f9c9a0e..0000000 --- a/docs/classVoidValue__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/classVoidValue__inherit__graph.md5 b/docs/classVoidValue__inherit__graph.md5 deleted file mode 100644 index 8bca56a..0000000 --- a/docs/classVoidValue__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -49110319ff8617406aa3f422d40aa923 \ No newline at end of file diff --git a/docs/classVoidValue__inherit__graph.png b/docs/classVoidValue__inherit__graph.png deleted file mode 100644 index abb7ae4e49915dab2bfa56d303b746d80937db58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2346 zcmbtWdpy%^8~-Jz)Jh0Bt(Yj0oN^9LtgsO!=8X~3&{pUm9T+O+!PB%@NJ7SpIYj2r z*3{TqM01E*3(cm3h2-ho)8~EOKi+@e`~KYb_4!=)eckuHo**mu)MDAI4$1Hl{^E&f~k$u94-iwzmQNlV}+A9&hXf!%4&Gm*`!3vMTfJR0dJr1sV zIWjUbHg?#8@F5Ml?e?K7JI3=LJbYMy_Y`c_`=GoLE6-}yV=@>+Lqql*H!Ir+Mk5&> zUP>GF`uh5UU-b#G@KRUbiCY0{aQF<5h{(u_gB8@496UZbDT!o{x!$f-DW{@u41rh@ z``g+0$>Z!u$S-gcx=T3WtK zCOX*g;{5!*j*g>z{_=P6*yqn@uDONV74MwwodoCKGoOp8H9VWeUpw4Jx)>FZk zN42$UfY+~Id*vBOzkZbiyenVL%*-T-h9k5Ig@qLeQv&e}8odEf)z;3A(9VoF=eRmp z1y6kYq@1h-*iVh`(NGbIL`q6ZLaYO(tS0c$!otFOEeq4zhno1vkdQblA{``C4T+?T z$mS4VXXSP4%6YMagM*s7YU=7c#d1RYdx2neb#;@zqlT`o?$)jAfR`d^bQ7P&Vm*CY zL7`A+w4sD4f_Z4d+b1==*k>#jm*nJSqo|~0Vr+aeI+}h_8kdkDd0uEDcda|z5;3aq zLZ25)6R`5~a&wQvmv!yXraO1S;PA!o-#J_^+|RE?_q_De>)F}a?rt~N(!`aL(AET8 zR@VGjYaSDIGA1S_I@(Hm!=a9=`76i=<>lMW&Bfpaq6#K4V|+mGoVlEm!}WB%9`}F3 z(_*?$VG{mxD8>r}0@Vg(-LAI~)`y`tgbHaYI73s@?5GBuhEyu89aS*XzLnJfH2r|* zr$7JHz>fcX z_s(~9SrRpG_@?&^@%GM*7m(X-R8PsZ2|9&1{Xjh{_C-9pO^Rqd&nQkv6}+ zu(A(YPcvkDGmLVh>pNCn7kukv%8icxg*^&uY0Ib}5Mq+YDg%n_$C17Mk%A*l7iKHT ze6&P#sV?9YDWJfdlkykU~(}d~){lD8ivq`xZT? zpF^GbK@s6opki_SL`iXIxaIiF0{4n@-BC)wI?qc}{Eqmxq+t?bL+EF-&D;Nt~$O`XC%4lyTg-CpHKy7+mj=TT9VmX|#? z>PmGu6VEB#zbD_DVDnKZyj@guWzU1g#sZe0F2T>M5#Bo{IM~)yZieA=@h|G5F zdiCnnQmQLnugsA`B?rvR&h91pAT5s71a1U@gdactSYF;-tM+|yk=x(@Mv;DL zQL_AP`oe_^bUIycBP)4LREI-XAgm&Ol(y5sVfl-I#ompLi+fa6HQi6NM%#_C*`g26 z3uTRARcVIn|7p8_f7hKmcL)T+K=Hm-8f|W(qo^mm`gNQm$v{=r&Dq4#@(vC}Ln?oyy zvG@}x)cxSyn#%IrdoFAaM-gZUCNr6y%^?FQDgeklk>RuOlrA&MYI=IwRtHpmW9Hc= zY}(HyYIXI@d*&@3k9Y6hJsDpo=h-TzM})-&e(7>OouC8uuY$Ou5Hiv}y`%^EkB#)7lf$n!_42_J~Y__dVZa@uW_{XZd zUwThCHF&r_OeB%GIy?XD++w*eVf@YT@Wa8`z+FK>L0fozC~ETD8;tP97Mw?frS`w* zsmBqBa2p-iIl=>3I4q^o18Qh4F1MhDa5$Gt-d&EEnV-)SEVW)U%=e~@fE{F+_RG@J z5_o!pva+fQ&ePL#WpSQDCXY9tE}B4Pc$6Ql^@YKDFsaiV(r~gKD?L43_E?u>7?GtW z69}ZOqoZ(^EJnb|4ZDiiFvyQC_uZP-M4z$Cnqh;z|E1i2fX?DHX9w?2KEKt1A>%wP>T<-5$;;J;czg<@R05DHK KXuU`H^?w5s8-i~D diff --git a/docs/classes.html b/docs/classes.html deleted file mode 100644 index 2f8a6cc..0000000 --- a/docs/classes.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class Index - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Index
-
-
-
c | f | h | i | l | p | s | v
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  c  
-
HazelnuppConstraintIncompatibleParameters (Hazelnp)   
  l  
-
  s  
-
VoidValue (Hazelnp)   
HazelnuppConstraintMissingValue (Hazelnp)   
CmdArgsInterface (Hazelnp)   HazelnuppConstraintTypeMissmatch (Hazelnp)   ListValue (Hazelnp)   StringTools (Hazelnp::Internal)   
  f  
-
HazelnuppException (Hazelnp)   
  p  
-
StringValue (Hazelnp)   
HazelnuppInvalidKeyException (Hazelnp)   
  v  
-
FloatValue (Hazelnp)   HazelnuppValueNotConvertibleException (Hazelnp)   ParamConstraint (Hazelnp)   
  h  
-
  i  
-
Parameter (Hazelnp)   Value (Hazelnp)   
HazelnuppConstraintException (Hazelnp)   IntValue (Hazelnp)   
-
c | f | h | i | l | p | s | v
-
- - - - diff --git a/docs/closed.png b/docs/closed.png deleted file mode 100644 index 3ff44313a0b9c3c1f24f6e5cf73c83211c709f7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o=N{x`P~>27=l+x| zJ*_(T$3{h7wdo9jYZ5m9PHNC)Jg}rcpXr$7f#c1b2G<;PbI - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp -> Hazelnupp Relation - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
- - - - - diff --git a/docs/dir_0202e1e26df2e040f4dc3d434eecf04c.html b/docs/dir_0202e1e26df2e040f4dc3d434eecf04c.html deleted file mode 100644 index bd72d8c..0000000 --- a/docs/dir_0202e1e26df2e040f4dc3d434eecf04c.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Hazelnupp Directory Reference
-
-
- - - - - - -

-Directories

directory  Debug
 
directory  Release
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Files

file  CmdArgsInterface.cpp [code]
 
file  CmdArgsInterface.h [code]
 
file  DataType.h [code]
 
file  FloatValue.cpp [code]
 
file  FloatValue.h [code]
 
file  HazelnuppException.h [code]
 
file  IntValue.cpp [code]
 
file  IntValue.h [code]
 
file  ListValue.cpp [code]
 
file  ListValue.h [code]
 
file  ParamConstraint.h [code]
 
file  Parameter.cpp [code]
 
file  Parameter.h [code]
 
file  Placeholders.h [code]
 
file  StringTools.cpp [code]
 
file  StringTools.h [code]
 
file  StringValue.cpp [code]
 
file  StringValue.h [code]
 
file  Value.cpp [code]
 
file  Value.h [code]
 
file  Version.h [code]
 
file  VoidValue.cpp [code]
 
file  VoidValue.h [code]
 
-
- - - - diff --git a/docs/dir_0c3d7a8ae27c1a80e1a2e78f7c177a7d.html b/docs/dir_0c3d7a8ae27c1a80e1a2e78f7c177a7d.html deleted file mode 100644 index 2ad44d1..0000000 --- a/docs/dir_0c3d7a8ae27c1a80e1a2e78f7c177a7d.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Release Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Release Directory Reference
-
-
-
- - - - diff --git a/docs/dir_0cc5f59b28c403d42cc56800132eb975.html b/docs/dir_0cc5f59b28c403d42cc56800132eb975.html deleted file mode 100644 index a9e07d5..0000000 --- a/docs/dir_0cc5f59b28c403d42cc56800132eb975.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Debug Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Debug Directory Reference
-
-
-
- - - - diff --git a/docs/dir_1148ebc2b25b55095aebf6f4cbb6efca.html b/docs/dir_1148ebc2b25b55095aebf6f4cbb6efca.html deleted file mode 100644 index ec1a133..0000000 --- a/docs/dir_1148ebc2b25b55095aebf6f4cbb6efca.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Doxygen Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Doxygen Directory Reference
-
-
-
- - - - diff --git a/docs/dir_5c0eadceca12ef8285078e2e738769ee.html b/docs/dir_5c0eadceca12ef8285078e2e738769ee.html deleted file mode 100644 index 2e6c637..0000000 --- a/docs/dir_5c0eadceca12ef8285078e2e738769ee.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/Debug Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Debug Directory Reference
-
-
-
- - - - diff --git a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492.html b/docs/dir_a4e10305c1b03e566e1d27ef3ea61492.html deleted file mode 100644 index 9f333a8..0000000 --- a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Test_Hazelnupp Directory Reference
-
-
-
-Directory dependency graph for Test_Hazelnupp:
-
-
Test_Hazelnupp
- - - - - - - -
- - - - - - -

-Directories

directory  Debug
 
directory  Release
 
- - - - - - - - - - - -

-Files

file  Abbreviations.cpp [code]
 
file  Basics.cpp [code]
 
file  Constraints.cpp [code]
 
file  Conversion.cpp [code]
 
file  helper.h [code]
 
-
- - - - diff --git a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.map b/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.map deleted file mode 100644 index 43702a4..0000000 --- a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.md5 b/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.md5 deleted file mode 100644 index 93c45c0..0000000 --- a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.md5 +++ /dev/null @@ -1 +0,0 @@ -39d561844e34e2a7e7b390ed90e30357 \ No newline at end of file diff --git a/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.png b/docs/dir_a4e10305c1b03e566e1d27ef3ea61492_dep.png deleted file mode 100644 index 670d84c8b23a50a680c8007f29ed969e1e5e68ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4778 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 diff --git a/docs/dir_a8cffda729361e9d9637effa362fcea9.html b/docs/dir_a8cffda729361e9d9637effa362fcea9.html deleted file mode 100644 index f98b8a6..0000000 --- a/docs/dir_a8cffda729361e9d9637effa362fcea9.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/Release Directory Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
Release Directory Reference
-
-
-
- - - - diff --git a/docs/doc.png b/docs/doc.png deleted file mode 100644 index 260aaf7df914778044f662be6d5ec2653770fedd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 697 zcmV;q0!ICbP)7_M`W-wsi{rTF8Dxv(f}#bG2B%)H159AQ`L!NoLtG~#@CB}rdS>12waNH_ z60>*k1>1J&z8|~-NJ63m+tSL}Se9-smZyU!YrT}XebS^fyTaTIH1=TK z#UvRj{?1ntR=HC#m|lNSd=a$Cw+ z2upwBU|915u^-DdUtVKR>OB~o8e(-=2+Q>QUGx56)N#PXojM1@`dci{-;gkuaBP2U59)35wZMFAIs~#OUsEUX$eP~D)me2>f3b=GV5#nDZ+Z#@-(Rl@w789L1YAPK1s#tn4X`e6o2Ypp|; z4`wt>opw$-M{KS?lx?Qdq&m>9&>)qtJhwva$~GHo4_IE@qFAVM^~zl~uRl_oqrn82 zM!NKwlhEy5*_Fvq~v-QDS-~v zc%t3FH!Gc9{Z#y#`jmq!S%8Q)Z(s8Ne>;TXkOUwJtyY)YTWdUd`~qMKi2_m<>-n?S f0Dp~t|H%9aIq|i4)^7_S00000NkvXXu0mjf&Y(VZ diff --git a/docs/doxygen.css b/docs/doxygen.css deleted file mode 100644 index 2ba8ca9..0000000 --- a/docs/doxygen.css +++ /dev/null @@ -1,1771 +0,0 @@ -/* The standard CSS for doxygen 1.8.17 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -p.reference, p.definition { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #D3D7BD; - color: #A0A96F; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -ul.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; - column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -th p.starttd, p.intertd, p.endtd { - font-size: 100%; - font-weight: 700; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -p.interli { -} - -p.interdd { -} - -p.intertd { -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #F8F9F5; - border: 1px solid #DEE1CD; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #A8B17C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #B3BB8D; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #DBDFC9; - color: #FFFFFF; - border: 1px double #D3D7BC; -} - -.contents a.qindexHL:visited { - color: #FFFFFF; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #B3BB8D; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #B3BB8D; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -ul { - overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ -} - -#side-nav ul { - overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ -} - -#main-nav ul { - overflow: visible; /* reset ul rule for the navigation bar drop down lists */ -} - -.fragment { - text-align: left; - direction: ltr; - overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ - overflow-y: hidden; -} - -pre.fragment { - border: 1px solid #EAECE0; - background-color: #FDFDFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ - margin: 4px 8px 4px 2px; - background-color: #FDFDFD; - border: 1px solid #EAECE0; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line:after { - content:"\000A"; - white-space: pre; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -.lineno { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -div.ah, span.ah { - background-color: black; - font-weight: bold; - color: #FFFFFF; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); -} - -div.classindex ul { - list-style: none; - padding-left: 0; -} - -div.classindex span.ai { - display: inline-block; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #F8F9F5; - font-weight: bold; - border: 1px solid #EAECE0; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #F8F9F5; - border: 1px solid #EAECE0; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #F9F9F6; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl, img.inline { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #FCFCFB; - border-left: 2px solid #DBDFC9; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -blockquote.DocNodeRTL { - border-left: 0; - border-right: 2px solid #DBDFC9; - margin: 0 4px 0 24px; - padding: 0 16px 0 12px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #DEE1CD; -} - -th.dirtab { - background: #F8F9F5; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #B7BE92; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #FDFDFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #F3F4EE; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight, .memTemplItemRight { - width: 100%; -} - -.memTemplParams { - color: #B3BB8D; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtitle { - padding: 8px; - border-top: 1px solid #E0E3D0; - border-left: 1px solid #E0E3D0; - border-right: 1px solid #E0E3D0; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - margin-bottom: -1px; - background-image: url('nav_f.png'); - background-repeat: repeat-x; - background-color: #F5F6F0; - line-height: 1.25; - font-weight: 300; - float:left; -} - -.permalink -{ - font-size: 65%; - display: inline-block; - vertical-align: middle; -} - -.memtemplate { - font-size: 80%; - color: #B3BB8D; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #F8F9F5; - border: 1px solid #DEE1CD; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: 400; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #E0E3D0; - border-left: 1px solid #E0E3D0; - border-right: 1px solid #E0E3D0; - padding: 6px 0px 6px 0px; - color: #858F55; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-color: #F4F5EE; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -} - -.overload { - font-family: "courier new",courier,monospace; - font-size: 65%; -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #E0E3D0; - border-left: 1px solid #E0E3D0; - border-right: 1px solid #E0E3D0; - padding: 6px 10px 2px 10px; - background-color: #FDFDFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype, .tparams .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir, .tparams .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #CAD0B0; - border-top:1px solid #BDC49B; - border-left:1px solid #BDC49B; - border-right:1px solid #EAECE0; - border-bottom:1px solid #EAECE0; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #DBDFC9; - border-bottom: 1px solid #DBDFC9; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #FCFCFB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #A8B17C; -} - -.arrow { - color: #DBDFC9; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #CAD0B0; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #909B5C; -} - -table.doxtable caption { - caption-side: top; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #95A05F; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #A2AB73; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #E0E3D0; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #E0E3D0; - border-bottom: 1px solid #E0E3D0; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #E0E3D0; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #F5F6F0; - font-size: 90%; - color: #858F55; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - font-weight: 400; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #E0E3D0; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#D4D8BE; - border:solid 1px #E9ECDF; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#A0AA70; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #8C9659; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#C6CCA9; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#A0AA70; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -table.classindex -{ - margin: 10px; - white-space: nowrap; - margin-left: 3%; - margin-right: 3%; - width: 94%; - border: 0; - border-spacing: 0; - padding: 0; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #FDFDFC; - margin: 0px; - border-bottom: 1px solid #EAECE0; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -.PageDocRTL-title div.headertitle { - text-align: right; - direction: rtl; -} - -dl { - padding: 0 0 0 0; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ -dl.section { - margin-left: 0px; - padding-left: 0px; -} - -dl.section.DocNodeRTL { - margin-right: 0px; - padding-right: 0px; -} - -dl.note { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #D0C000; -} - -dl.note.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #FF0000; -} - -dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00D000; -} - -dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00D000; -} - -dl.deprecated { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #505050; -} - -dl.deprecated.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #505050; -} - -dl.todo { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00C0E0; -} - -dl.todo.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00C0E0; -} - -dl.test { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #3030E0; -} - -dl.test.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #3030E0; -} - -dl.bug { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #C08050; -} - -dl.bug.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectalign -{ - vertical-align: middle; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #BDC49B; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.plantumlgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #D6DBC2; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#9CA66A; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #FBFBF9; - border: 1px solid #F1F3EB; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 8px 10px 10px; - width: 200px; -} - -.PageDocRTL-title div.toc { - float: left !important; - text-align: right; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -.PageDocRTL-title div.toc li { - background-position-x: right !important; - padding-left: 0 !important; - padding-right: 10px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #B3BB8D; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.PageDocRTL-title div.toc li.level1 { - margin-left: 0 !important; - margin-right: 0; -} - -.PageDocRTL-title div.toc li.level2 { - margin-left: 0 !important; - margin-right: 15px; -} - -.PageDocRTL-title div.toc li.level3 { - margin-left: 0 !important; - margin-right: 30px; -} - -.PageDocRTL-title div.toc li.level4 { - margin-left: 0 !important; - margin-right: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - -/* @group Markdown */ - -/* -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #95A05F; - padding: 3px 7px 2px; -} - -table.markdownTableHead tr { -} - -table.markdownTableBodyLeft td, table.markdownTable th { - border: 1px solid #95A05F; - padding: 3px 7px 2px; -} - -th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone { - background-color: #A2AB73; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft { - text-align: left -} - -th.markdownTableHeadRight { - text-align: right -} - -th.markdownTableHeadCenter { - text-align: center -} -*/ - -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #95A05F; - padding: 3px 7px 2px; -} - -table.markdownTable tr { -} - -th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { - background-color: #A2AB73; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft, td.markdownTableBodyLeft { - text-align: left -} - -th.markdownTableHeadRight, td.markdownTableBodyRight { - text-align: right -} - -th.markdownTableHeadCenter, td.markdownTableBodyCenter { - text-align: center -} - -.DocNodeRTL { - text-align: right; - direction: rtl; -} - -.DocNodeLTR { - text-align: left; - direction: ltr; -} - -table.DocNodeRTL { - width: auto; - margin-right: 0; - margin-left: auto; -} - -table.DocNodeLTR { - width: auto; - margin-right: auto; - margin-left: 0; -} - -tt, code, kbd, samp -{ - display: inline-block; - direction:ltr; -} -/* @end */ - -u { - text-decoration: underline; -} - diff --git a/docs/doxygen.png b/docs/doxygen.png deleted file mode 100644 index bc0e10ebc968bcdbcd7b38693c30ef92ca8f415c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3713 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 diff --git a/docs/dynsections.js b/docs/dynsections.js deleted file mode 100644 index c8e84aa..0000000 --- a/docs/dynsections.js +++ /dev/null @@ -1,127 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} - -function toggleLevel(level) -{ - $('table.directory tr').each(function() { - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l - - - - - - -Leonetienne/Hazelnupp: File List - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
File List
-
- - -
- - diff --git a/docs/folderclosed.png b/docs/folderclosed.png deleted file mode 100644 index 72913ae21a6fda7d3ea384fa44a0307ad68a1768..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 575 zcmV-F0>J%=P)>eDqeHpP!=T^s^}hiL+lbt(VmL$F`dd z2czI=X{a_Hj{y|rcs3ai_nx3pcL+A2soFcvZ8)?mCU$He_N^}LCV}c^(^F&f=o|0y z)n6rAEPhi&X8OkQ(rB{+QpT{X8UPqDB>FIUBm4e=CPXr>e#wz?p4Mzk0+BS+;^e@? zd(TP|RqjA7QckkD9A!?UqR!emiAYHS=*1w&B8}r>K`s}|QAMH*LP-UnR1AsUe>#+1 zcRzJjqD}QCIVf#c352ll=Fuez&pwrHta9v9f&ZU8_D##7t8!oSru%jKWT9H{9B)AFka2y*)1h;JWbt|D$c3;1BNN=09Zn8$JL4 N002ovPDHLkV1h=W11A6g diff --git a/docs/folderopen.png b/docs/folderopen.png deleted file mode 100644 index b85d25143b6390a06b3396e55c69110d6492eea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 592 zcmV-W02N76g}gl&C8K2_XRB*5ClZZQ|b#kOlx7z6Wj5`E~}7 zMm^D^sfS|W4!q(#1AsrpjRBeBTFv z1UgrzzT>38=n`}}EQM^QfJ|ma&C^pkOi84t(d~wq^~z5HU=(b$O+S8mCA!^!DAD`T zEQ82B8E~-fDGK$IGx-uWR*#KJ5+Vmd3!b}xl6N;oIf6?zLEiJ+dAP+n(qn;UvPm1a zFeh~b00UMHuCIS7UR9=XdL*?fMrIvV7geOHpl8*d<kl9J`Vio%@YKNMx zXpaKK_kysE#?C{7qC|k#?_UVnjdV4PIH=AlLN$;j5JfU#lJQjruXKF70su#z<5!TUvYq0DlYr e|Iq+oEPew80qanc=A&2u0000 - - - - - - -Leonetienne/Hazelnupp: Class Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
Here is a list of all class members with links to the classes they belong to:
- -

- a -

- - -

- c -

- - -

- d -

- - -

- f -

- - -

- g -

- - -

- h -

- - -

- i -

- - -

- k -

- - -

- l -

- - -

- m -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- v -

- - -

- w -

- - -

- ~ -

-
- - - - diff --git a/docs/functions_func.html b/docs/functions_func.html deleted file mode 100644 index c778ffc..0000000 --- a/docs/functions_func.html +++ /dev/null @@ -1,433 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class Members - Functions - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-  - -

- a -

- - -

- c -

- - -

- d -

- - -

- f -

- - -

- g -

- - -

- h -

- - -

- i -

- - -

- k -

- - -

- l -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- v -

- - -

- w -

- - -

- ~ -

-
- - - - diff --git a/docs/functions_rela.html b/docs/functions_rela.html deleted file mode 100644 index ee8bdf0..0000000 --- a/docs/functions_rela.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class Members - Related Functions - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/functions_vars.html b/docs/functions_vars.html deleted file mode 100644 index b8a2aea..0000000 --- a/docs/functions_vars.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class Members - Variables - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/globals.html b/docs/globals.html deleted file mode 100644 index eccea3d..0000000 --- a/docs/globals.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: File Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
Here is a list of all file members with links to the files they belong to:
-
- - - - diff --git a/docs/globals_defs.html b/docs/globals_defs.html deleted file mode 100644 index 2412a02..0000000 --- a/docs/globals_defs.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: File Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/globals_enum.html b/docs/globals_enum.html deleted file mode 100644 index 28b08db..0000000 --- a/docs/globals_enum.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: File Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/globals_func.html b/docs/globals_func.html deleted file mode 100644 index f6eaa80..0000000 --- a/docs/globals_func.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: File Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/globals_type.html b/docs/globals_type.html deleted file mode 100644 index d524f11..0000000 --- a/docs/globals_type.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: File Members - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/docs/graph_legend.html b/docs/graph_legend.html deleted file mode 100644 index 44dfbc2..0000000 --- a/docs/graph_legend.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Graph Legend - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Graph Legend
-
-
-

This page explains how to interpret the graphs that are generated by doxygen.

-

Consider the following example:

/*! Invisible class because of truncation */
-
class Invisible { };
-
-
/*! Truncated class, inheritance relation is hidden */
-
class Truncated : public Invisible { };
-
-
/* Class not documented with doxygen comments */
-
class Undocumented { };
-
-
/*! Class that is inherited using public inheritance */
-
class PublicBase : public Truncated { };
-
-
/*! A template class */
-
template<class T> class Templ { };
-
-
/*! Class that is inherited using protected inheritance */
-
class ProtectedBase { };
-
-
/*! Class that is inherited using private inheritance */
-
class PrivateBase { };
-
-
/*! Class that is used by the Inherited class */
-
class Used { };
-
-
/*! Super class that inherits a number of other classes */
-
class Inherited : public PublicBase,
-
protected ProtectedBase,
-
private PrivateBase,
-
public Undocumented,
-
public Templ<int>
-
{
-
private:
-
Used *m_usedClass;
-
};
-

This will result in the following graph:

-

The boxes in the above graph have the following meaning:

-
    -
  • -A filled gray box represents the struct or class for which the graph is generated.
  • -
  • -A box with a black border denotes a documented struct or class.
  • -
  • -A box with a gray border denotes an undocumented struct or class.
  • -
  • -A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • -
-

The arrows have the following meaning:

-
    -
  • -A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • -
  • -A dark green arrow is used for protected inheritance.
  • -
  • -A dark red arrow is used for private inheritance.
  • -
  • -A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
  • -
  • -A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
  • -
-
- - - - diff --git a/docs/graph_legend.md5 b/docs/graph_legend.md5 deleted file mode 100644 index 8fcdccd..0000000 --- a/docs/graph_legend.md5 +++ /dev/null @@ -1 +0,0 @@ -f51bf6e9a10430aafef59831b08dcbfe \ No newline at end of file diff --git a/docs/graph_legend.png b/docs/graph_legend.png deleted file mode 100644 index 7e2cbcfb2d143e382be6ed65635a3d859e53bc36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20615 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 diff --git a/docs/helper_8h.html b/docs/helper_8h.html deleted file mode 100644 index c9c2151..0000000 --- a/docs/helper_8h.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/helper.h File Reference - - - - - - - - - - - - -
- -
-
helper.h File Reference
-
-
-
#include <vector>
-
-Include dependency graph for helper.h:
-
-
- - - - -
-
-This graph shows which files directly or indirectly include this file:
-
-
- - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Macros

#define C_Ify(vector)   vector.size(), vector.data()
 
- - - -

-Typedefs

typedef std::vector< const char * > ArgList
 
-

Macro Definition Documentation

- -

◆ C_Ify

- -
-
- - - - - - - - -
#define C_Ify( vector)   vector.size(), vector.data()
-
- -

Definition at line 4 of file helper.h.

- -
-
-

Typedef Documentation

- -

◆ ArgList

- -
-
- - - - -
typedef std::vector<const char*> ArgList
-
- -

Definition at line 6 of file helper.h.

- -
-
-
- - - - diff --git a/docs/helper_8h__dep__incl.map b/docs/helper_8h__dep__incl.map deleted file mode 100644 index 89aaa7e..0000000 --- a/docs/helper_8h__dep__incl.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/helper_8h__dep__incl.md5 b/docs/helper_8h__dep__incl.md5 deleted file mode 100644 index 426dd98..0000000 --- a/docs/helper_8h__dep__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -1227db7e106ab3999edfad0e739912b2 \ No newline at end of file diff --git a/docs/helper_8h__dep__incl.png b/docs/helper_8h__dep__incl.png deleted file mode 100644 index 856b621f6129532ce9e695f82146dfd445959e8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9796 zcmaKS1yoe;xAtHmjS_;CG}1DZ453JfFmy;ah;++PDkZHn4Bbd~3?JsI zb6_WYBngJsDu~;fs42P=>m3pR9Xw5jE;z2j)`Zud6T?UD08=0k+%K&z|C~TbG1UZb z&OWB4VPoE$aPz7z-h4v*JB(rA@A4VF6%(4m#t(V#Y z(K(KSi7DP!n!Qpn?3z4|t9>$&Ocrr#bFK@Ahlif~{Q@K^F&x_bPU}DK;*dHq=`HVh zUmtsymX=ycV?YcZfTw=cEUl^%b={`iM=W=Q;^X7*)bHb?Xybz-A|m|#?}fDELk!4r zTQHjGcm)J#gg@*KXUT?!hNh*Z<*OGuxVkd?CJNfqJ$;&2S0}{HZFjo2a(RBdP-ZIo z^5u^rU6c!YnuLcE}j<%+t zA9jC*8L5y`QHgk*>>>qhSJ&21H8lk~wGLfhX??#wcU*1j=)k8Ijw4jo)O_x`Jv%z8 ziisJpzP_HDo4d8Og>v0NxVaU+Ej9Yp{7DY>K8HxWNT>E835lcPjMrpe)-G1lH; z9{EbN>w%ux6?g!%rx!G)ueNgsj2Lxik|C5Un!Y(c@{`oEY)ov?6)8&!2zW&1D z=EMju$HPE;O2HDaD3u&}4&Az_jj}SsR{!Sa=D4^x$F+eC_0P~?7_e)q+`QUq%3-xH zUf=7~kB|oh!121$Zn5R+@*K*XJk~MZ*bg-yVArcZX$vGGVwRt6^h8a&MI{M2zaL7M zl#!7!?hFeJ49v^R8xp?kiDql{#~UeO=U7&qY4kt7I#~|)zCK@2ND(d6`Mg=u2!UkZ zy-B#Ho}QlIM_i5j12Af8Y8Mw5*;r1J;P&I~xn+l1Vd}wwfr061AqEDMjp3}M_xy~E zrUen&)i!y3&5L$t$2(${;|0C3Tx<$rj;nH7TGInbFl%dTSWw~RlCSvUM~vH6R#s+x zaY`yG`|CsW{fqDvQ4u=2mVp7A`FgjaqM}$%-C^#A#zs*wF@5{S+RL(v@N&=dgasH# z%$#IIP^;3V=%1~#TQ^8}jRD!$(9(Ky{{gmN4^eMVk3RuTqu1q`g4kt6RaKRKlUKR< z;Pymu%2EG7vWWJ|wp{z>{@Nf7%%uPXGAqlEFn#^-<^AryJ~=tL3lJw=9Ub1b@oHQB z==Q^{sYo|NW8+u%Ev&7_D3b#M0`@k0dfwoT6zif$A3uI?Zay(o7Dx9MDL7MI>_#;= zJ3HF3Fm-qr!p(7$>K9mdZUv<`o^QiMQ;PR;7Fz=dXhajUH-JS&Z%YC0i1_*W(SyA% zZ=9VE#|yOuZ09M-$t^4`kr5Fs2d`;;iAhOq78*S_#|s-98x=y}6yW-xJ=LLV-yfrm zK@;>+AwRkQiE04BM9CBMveiQ4>M@VV5C()D50MG^cWKp0-6v3W835UIAL;WAO-)UZjJH0$*e|OHQ9(PP%EBNJ zv%nVJHHd*YfTW71X062tQ`PNfE<-~@T#YA7zF0&R@r{6_fU5zSY-<-`SWQ=SkBzC> zuK@DxN|VNhe9Y?Y>iRiLbr%9Tz!w1(PDoW4&n;aHOm(g+&6j;Lm9ETL`2M=er$*+nY{lE`a7r>V9eIVqM*|n>(xyHG^{p|JJ95 z7r#CZCrTb3TAP~UWo3nCWgVKDhSDi{N=jx(&@uZ8AM5CY!e-EML;8Vv1qH(1R~|X@ z%KBX9dKFbY66uK2n&ehmhv$aLvCYd5Ffqe|aVEM0mw&gd>_7Jq?Hm}e3s;MMv+l>v!V!B_D9cMs!~t z-@yr@D=f@f8x$LEyaZ6x&`?D~40!&rrMtIxrryobd|_p~F{HKBOmBo&$xE<7_09YD zzxnw37=p61@bH@W`1Nuu^7L-02Q2+XXlkRhHL(f`8$Q%0Ka?5Eke1;sMEh)_Dy(|G zYZO0MS8vD~PN?E9l~5iZSLcitrOR}uSsKrfev%><)a%UP`;!;0bbXHZVnl-VvUk`b zAv2RQ>NP8@^2^t+gblvf5Cg~u7beKtJ88R-At9*8VIOojrI{iX;vZJI?c?a_4Il`9 zEw(0zUDaH7(h%@KcTCNLwX_&?I0MpI@>Ey1td2(%EbENZs2&98r?_ul{`n)t8T)EP zf;0Ab-H^{Nb>e55Cnnw=6>rzzNV&Nydv$FsI#R*w^kli57tZi7-v7Cq@b(-ERZxIy zZx31!k{eb^9OCu7zRK9L8d^)y@9KVPVX2~jYA+ZS9xf~X*{&}R<4nux)hkQAWI>pA zRP^Dmp6HgcGOeKWf`S@rYwzdn11k=Vmo8H!hL;DGIvl2E^GLo;qIkKY3l0O*_UJb& zyl@z7MpEi1@XIb1&OSL$W_Wpd1N9?aEiFLe8HF4JL?Weg_D2DK>}#iCUKi7U#ul6oIGPs~ zK?vx+!BeRJZshDAHXeYul$Of4?x=UINMu2A!#kZ_*JK%ngMtv^U&6zCn?LELrOn^Q zL^Ye2H@H_Pdzx@%h zu@iVSjk>40;Gvv3=KVplC5Ha_`5E&WtZeyI&y3t19RqY5o>LBN7KcyQpWbcY(sD=g zd%CXwY!8!vO(bq*UC61g$42NRyT}$h^7Lsu1;59{=x9qwaLcd1g4)#s31Z$7*48Rs zUhzw<4URd9*%r*qsOA^0tC4s(`x^@jNv+S;t+OEz#3#@p%7w@=aj_Q|^pt)6T()JU zWNjV!W{Qe*btEGodJpw30UtZa^4&W|U+&|(_b}bJrx_`QYZQ+C5Wkvh(K9Mz$@ka( z*1QThx?DwO2~#5#6e7ES7dIT8wg=x;&PxzaY)u<4L^e8Y#My+VRaIFWZ$tIH+`gp? zDsQCd`pc*2k&tiX@R)mg_7-XrkVu}+p-6b*XNO8VKVne#tx*#*+{ZtXuyufNW8Gxw zq)gTx%JrHZRbDRZ;Mfj_TdS+BTN>~CzDzOeKU*8im(<~$7#cEL?jUzu z6D<^$lNOM?s%~n~P*u%yC<8h3;lqKPf`04TjEf~?I=9$1o_E71BBC=0JMPDdvX@uG zU{dfiIVJba@z$D}s0A;S^!+pzhqVEDZEeeb+i$N;BqgJR+PVffEv%!zGf15;7(*aZ zx9CZ3eH>DHin5(277(~D-b&`@pkwcY(X~uW*Evd;y!5%?fd=b)dyf7YBch^mcT(By zVP)G)M)Z`Il!&|01+RBPW($Wi2%!MLSlwE=$gear?uA!Eh;Y$zCzcn zqTn_)vrG$z7!ccWQbHzk9F(EV(xbz4rPb9~SbuS`AKtl#-O^GIXk&9pW~!h7^XQ2G z@*K6vW`)P_aO#K8_31AkXi-tv?Ry^*MUXjyBYlgC0R+%>GI4{$-~3J(6Alg zd%PfCReyoUYVxR~gA|kkB?^IoxAiBQRmQ6H&;DM-a9n3wh$}@UC5>gtTI%X-iJfm< zB#T%8dd0$OQOdYA6;>)66}$)7WN%MsZz5foTk+T0L@=5gqgnapb?B8M2;?k_g=Hk` zf`&P@kFKhQ0270U_rdzu1NvJoTZH%S)I1w$y4c&Bu6#-?*`L67k`b*)i~is^Y=?8_;b-i?Xnu^zZ{7zk6gK??P~KK^MOsu%z@& z?t#kNx16yftfsC8sqU@>vMoV?Qgw73=p;D?wxfb(?imr%VKaCS{-|Yy6A`Z*GpeV-hV*@eX zLQ>go_`d4TA1#{&bq>_r-07!J-uT83Nmq@rOj&%gH-7)_E7Vr77aX0g9Pw?TUA=UF zC5b@TSXnu!sLagRD(FUi~h?(kpz9o1IQe8RXTM?pX@9UgP8gz+c z@9K3Yqd;Dq@3eC@QC8Z_If*V1W`t89v$Lxj+`Zq(2|s$cROy(*P1h2O{xa!%V_P|} zt@%2aich>Y;y%H#vm^8wt#Z}U=+$uY zcUdZXOFdDNLh$Fzz(4}HMc?Il_;{i0v!>1}3OQ$IWAT<_>2N)&XLJUg_=W(^GY{gq zZ|sS=v4?u4_;+9566j*0gC{^$t*T-{IWv6g68%4bg}L-miwJ!|f03I6B+}l_xX_?o z`r&UJpCuD8Yci~h^2XcyA6Y4zC%aAdT3W=;Lr96EK-&Zsq1t0J+m*!?%Q+Vqu0R@W z8N)$=GHSmQqB-QOoOc28a;M?=)y{kvD4Q2E3*z8zvp07m@&k8U&uvhXHNEiNwbM^j zA1ww@N6#oQGn>oD?T#Ly%NrV!roy@k4E7)6f;{8C>7yodlwB6;pW4`fw56x>C@fTR zam5LgI9iE~jgPFHsp@|$z!``B(l@@+>-YC>H=WX9nW=Fs7fpB+Kjg+E6~H4UFIG&{ zw-`VOWd~% zu_K*fx^q=%z_fVxD$E{0DbF*c@oXCoXCoMm-Gnc&O=)iIAOlc1`yY6Y1r;g_`Z<7J zo1&8&{^^i^>H5~Cvf{Pq>F+h~tNpc)km@9u-z)!;-dBGH-clr;r0!;2~F-|rIShraHIGZg-vUh^0b8#hQ&Y+4FE6A4ZM*;l)?jEf>|W{x-UI6G&DGT|m$=m6(a{3u zP5IXhWuRtrYVl$pwt<>(eMiCRZHqkf%}`O(%7B!9!NrO(j3>^Js&#$8`ULCM9qEes-XfOWg%qaUC+ zGx<}*dME_}E9;+b{od`a*G+m2iY~~&)zzxYbML9@9V^AJPiPGXe*IWiv%RN6%BI%4P5bIB6`7~`MqyAF#h+DF zWZIt~LuT08*R|sG=FRGA|8-T_QhVp}OIcD3V96A)gh`=x>uNdtTulv6hcicCtUC1x z#>m9(M$V=CQH3!~Ze8l8e2*syx^DAJA^C0j_~1KD-mAe}ocI*uwt&#CuePnE@A&&* zyluV!ox@0mj*EVi-o=SMy^0IlKo~CNy0y7^ze}9K{l3UYVpk{TwzjdpzEkwl_sT%5 zQI-=yOH0bwIK6)lRB!^oO-6x#iBdgs`~P`;P_1PlfBeVVGPrDJDKlrSNZ-5c`}ZrF zYqA>_n{6?Do~e8a;_tF^H3Ztg)qXCyq{jm;63wE3PME;-nT#r4PVeoBxqkD%wfCVE zPVAtjqr<3jA|s*9av$DzhE0Li2&{vhg{yd`QG}0i?;we3{5g9!+ZD@zwksh*Z7(0%hfU0KmZdD%HT&z2e=#XY+XLjBfd<&B|-M~@F? z`1}Xs*}awJ!b1C02p`C4GFsKe=3CKa=c{mg$MW}6R1X$|ZB-OMA#g@pY@zGy!1NAK zVaPuB$b11+Og6Y}ex8Y;4GNlDGM4)|`_#N$1RD3!=-1sL3cg-%Qla1r1usbO=fu&K zV*f>S4>+DQIZ=~K1k--#d zK8a3s1#7Ik{oU@TlCiO+O;H?q2ZLA>JKN?b3A*Kd_d9pfw(f~E?`x(8@3J$mi-L;} zZm9{r%TG(=<5DOPTqpj&Stu<(jIuW3>uy6*(qT3nnhg&&fKhTA=H+Q3`7c3Z&H-RG zp+_;`B505doU;B!-2o&`RV&8wSoxYGHFf^%-1SiYgpR0pNTD@%xH&?1DU3!;-j#fY z&G0HQv19)T2W*=pL`9cQZV=M#GWly_WASpU3yl1kH3l9Cc2_LxR3sI<2^4056(CDjo?lvd4glZ;n?0nm3;Y?_#w5q$MS(gg<;mvs}^9(JgHjH;sDNxL%-#9; z1o}gncE3MlMSU@~bs*%DMh=IElpSM_l09)_`&LqZi?)^)i}QzidE7>*N!M2}ZM94` zAI_8k0)uig7~WS}jAYA8T3X$@eH+Td6E`taWu3wD2TUm0I~>74e|`O3|9-B=+v)nd zB}k{c*9XoCM>viA}sT$e8v~T}}jtz%uuP^)xaI51>sHH(d$sYq3VVsCbysi-|R5 zXRpSaC)4_Nt?a!Dz;C!Z+YAg0wCcQj7BDAa-h=7}Gkc2!8w-o)E?bk0p6B>fLTxTi zOa$?HP)W0FFrK3psq?2KvM!PMz0Es;a6{Ho-_C zXI4oiO8m}+1#jRkUO18X@bIvz*J`qeyZS4u9uOno95I_&LD3W%V&a1l1+ix%4Gj(P zQuk@;zI{p0O-Oibc6D-cqLd-^_w=HxtLsJ=m{x)%5k@2=oL%e>Ito&Xcf~`^b#!!& zb{4#M<{N;R!YUmR8=G^4exD;PAyELF+ZXpNEG%rnV?T77?-HmMn0Svf->uCzxa)9M z*VM#a9Abw}!>6xWmAzyoCEI(snzmL~SGTuCy{|4h!)Yw%^9vC8Pq#6*Crf?E^XfJO+K!MKD^C`b_Sn{Hr`s!S$>SBio?4kS z`X^*&sHsokB!9@=*-Fk0@vG4A`pUFFD#wvRo`2zUBke>oD{!*1elINa1T%54GKR?R zz5V^df&xz6y3yI$#Bbk9&H5jkt^V-A^#0raD1qW;>g~uRw+Iqvs>VKJk2p{D?0lyQ z^UfVg5rpar8h9`)B&49Yc!z~Q`^TWzbz;1ju<-1}#PNi_x3!hkY?U<<9H0hTO!xM( ziHIb{=VWI35-RKJ_V?{Q2BtLvTs|{7dGWWCrjL%_YLXkIM>~_6)u%B2 zyqWNn(_~f zB)q52$#uGVP)$U2vCo{HG&p{PCq86w&D`Al5edoE%nUfmuUG0-wYm0r$rw#e<9RR? z%+;7Hyt2F43gDELmG#&tVbyqdmp(4!80fc+Nf-rtF>F(6#i$4vHYhgVH12#ncZwp#V zkxuUglr$?f^xP!rzPC=lMF&*!ChIA{FT0Y4C&gH|6k$_X%7cU^tZ>P5Bp{H#oES#LH4z-tOhn7tR zz?;jybD1irK%+4eo+%(d0a*+XLZ)GZlPq^8<4ZFaCaA8iE*7m(X^p23LX3fx1%FRs z^Y$T8^*x@HC;OT`9>c(aZqX#}KZwMrsFsur7}1A{e&?rP{+{^#JL^gxlHd9tW ze4=8a;;30c&`PSHeIUg2T0%{HCjJuQS@-o?_=?#Wc4vqjWTEz?GX_i z3bnP`OmCWpL;*PAl5rdC{q6>s12tN|#NbnCXn*;j=nPP+yCa!lFxbu<>UhSs$=S~C ziEsV+HVVApWE2(_+6X*8-WXYHIGzV}hdO0YzX4I1?%fW)({5C%$f8<1^!6Xs6{NG8 znwp-T9_T>SHoCxAX9=`X2m}I@mIFYS=0y{^NnRVnjJCG6t7or`jFy0-qG!Oi5^4dP zM58WoG}4-;(4SAY#%|FM=h4OGWdNwvmrRV0#R>qU!UP3<{rvE#g(rbry+64|#pqLZ z(`@nbIsv8K^Zcj*>shEgtAR`~VqKFq>r2-6se|A*rD$ zg(xToIgh>oLhjtA7DmJ?3uF)PBq~Uhp#a9RZ{M9>-#!6c{(LZ>Gy0wccH)$fDZ8?; zu#ky*2+k;d%xkf^)qxd{6@wK|fM_$ep91hqyFOp%8i|OG9?RQEg<8GeVv_0#(SW;m z$>I3IrN5rWI$N#4x2cwsp|KP&==i3uRmk? zbt0G&)+&M@ePjp&B@kA4|JmeUajDgWhleY&@LIiw_|p?(dwO^r49ibYU>Hb9N&@~W z*hH^qJ%F_C9vzKOd?Jn~$WFf;O6D2DaJ_jTMDEcU(7wU(zZiwS#;DiJq~;h~;J&$1 NMp9m)NZjD_e*ngsIY9sb diff --git a/docs/helper_8h__incl.map b/docs/helper_8h__incl.map deleted file mode 100644 index 22e622e..0000000 --- a/docs/helper_8h__incl.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/helper_8h__incl.md5 b/docs/helper_8h__incl.md5 deleted file mode 100644 index e553760..0000000 --- a/docs/helper_8h__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -259281a56cf33665dc686d86fe837a4d \ No newline at end of file diff --git a/docs/helper_8h__incl.png b/docs/helper_8h__incl.png deleted file mode 100644 index d2165c24d24bf066144945d5d18b4ef9101ba74e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3367 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 - - - - - - -Leonetienne/Hazelnupp: Test_Hazelnupp/helper.h Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
helper.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <vector>
-
3 
-
4 #define C_Ify(vector) vector.size(), vector.data()
-
5 
-
6 typedef std::vector<const char*> ArgList;
-
-
std::vector< const char * > ArgList
Definition: helper.h:6
- - - - diff --git a/docs/hierarchy.html b/docs/hierarchy.html deleted file mode 100644 index 8b32ce0..0000000 --- a/docs/hierarchy.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Class Hierarchy - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Hierarchy
-
-
-
-

Go to the graphical class hierarchy

-This inheritance list is sorted roughly, but not completely, alphabetically:
-
[detail level 1234]
- - - - - - - - - - - - - - - - - - -
 CHazelnp::CmdArgsInterfaceThe main class to interface with
 Cstd::exceptionSTL class
 CHazelnp::HazelnuppExceptionGeneric hazelnupp exception
 CHazelnp::HazelnuppConstraintExceptionGets thrown something bad happens because of parameter constraints
 CHazelnp::HazelnuppConstraintIncompatibleParametersGets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones
 CHazelnp::HazelnuppConstraintMissingValueGets thrown when a parameter constrained to be required is not provided, and has no default value set
 CHazelnp::HazelnuppConstraintTypeMissmatchGets thrown when a parameter is of a type that does not match the required type, and is not convertible to it
 CHazelnp::HazelnuppInvalidKeyExceptionGets thrown when an non-existent key gets dereferenced
 CHazelnp::HazelnuppValueNotConvertibleExceptionGets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible
 CHazelnp::ParamConstraint
 CHazelnp::Parameter
 CHazelnp::Internal::StringToolsInternal helper class
 CHazelnp::ValueAbstract class for values
 CHazelnp::FloatValueSpecializations for floating point values (uses long double)
 CHazelnp::IntValueSpecializations for integer values (uses long long int)
 CHazelnp::ListValueSpecializations for list values (uses std::vector<Value*>)
 CHazelnp::StringValueSpecializations for string values (uses std::string)
 CHazelnp::VoidValueSpecializations for void values
-
-
- - - - diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index c00fb8a..0000000 --- a/docs/index.html +++ /dev/null @@ -1,441 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Hazelnupp
-
-
-

is a simple, easy to use command line parameter parser.
- Hazelnupp does not support windows-, or bsd-style arguments. Only linux-style.
-

-

What is the linux-style? This:

# Using a long parameter
-
$ a.out --long-parameter 1234
-
-
# Using an abbreviated parameter
-
$ a.out -lp 1234
-

-Note

-

These examples reference exceptions. These are not enabled by default. The default behaviour for user-fault exceptions is to produce output to stderr and kill the process.
- To enable exceptions, call this method:

CmdArgsInterface args;
-
args.SetCrashOnFail(false);
-

-Index

-
    -
  1. Importing into a project
  2. -
  3. What's the concept?
  4. -
  5. Minimal working example
  6. -
  7. Abbreviations
  8. -
  9. Constraints
  10. -
  11. Automatic parameter documentation
  12. -
  13. Descriptive error messages
  14. -
  15. More examples?
  16. -
  17. What is not supported?
  18. -
  19. Further notes
  20. -
  21. Contributing
  22. -
  23. LICENSE
  24. -
-

-

-Importing into a project

-
-

How do i actually import this into my existing project?

-
-

Super easily! Just grab the latest files (2) from /INCLUDE and put them into your project! You may have to add the .cpp to your compile list, but most IDEs should do this automatically.

-

-

-What's the concept?

-

The concept is that each parameter must be one of five types. These are:

    -
  • Void
  • -
  • Int
  • -
  • Float
  • -
  • String
  • -
  • List (non-recursive)
  • -
-

Here are examples on how to create them

# Void
-
$ a.out --foo
-
-
# Int
-
$ a.out --foo 5
-
-
# Float
-
$ a.out --foo 5.5
-
-
# String
-
$ a.out --foo peter
-
-
# List (any type above works, except void)
-
$ a.out --foo peter jake jeff billy
-
-
# List, mixed types
-
$ a.out --foo 1 2 3 4 peter willy billy bob 3
-

These parameters can then be accessed via a simple lookup!

-

-

-Minimal working example

-

So what's the simplest way to use Hazelnupp to work with command-line parameters? See:

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
-
CmdArgsInterface args(argc, argv);
-
-
if (args.HasParam("--force"))
-
// do forced
-
else
-
// be gentle
-
-
return 0;
-
}
-

Looks super easy! But what about actual values?

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
-
CmdArgsInterface args(argc, argv);
-
-
// Either check via HasParam(), or do a try-catch
-
try
-
{
-
int myInt = args["--my-int"].GetInt32();
-
double myFlt = args["--my-float"].GetFloat32();
-
std::string myStr = args["--my-string"].GetString();
-
}
- -
{
-
return -1;
-
}
-
-
return 0;
-
}
-

What about lists?

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
-
CmdArgsInterface args(argc, argv);
-
-
const auto& myList = args["--my-list"].GetList(); // std::vector<Value*>
-
-
for (const auto* it : myList)
-
{
-
// Should probably check for type-correctness with it->GetDataType()
-
std::cout << it->GetString() << std::endl;
-
}
-
-
return 0;
-
}
-

-

-Abbreviations

-

Abbreviations are a very important part of command line arguments. Like, typing -f instead of --force. Here's how to use them in Hazelnupp:

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
- -
-
// Register abbreviations
-
args.RegisterAbbreviation("-f", "--force");
-
-
// Parse
-
args.Parse(argc, argv);
-
-
if (args.HasParam("--force")) // This key will be present, even if the user passed '-f'
-
// do forced
-
else
-
// be gentle
-
-
return 0;
-
}
-

-

-Constraints

-
-

That's all cool and stuff, but this looks like a LOT of error-checking and not elegant at all! How would i actually use this?

-
-

For exactly this reason, there are constraints. With this, you can control what your data looks like! Constraints serve three main purposes:

-

-Requiring data

-

With ParamConstraint::Require() you can declare that a paramater must either always be present, or provide a default value.
-

    -
  • If a parameter is not present, but has a default value, it will be automatically created.
  • -
  • If a parameter is not present, and has no default value, the process will terminate with a descriptive error message.
  • -
-

Minimal working example:

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
- -
-
// Register constraints
-
args.RegisterConstraint("--this-is-required", ParamConstraint::Require()); // This missing throws an exception
-
args.RegisterConstraint("--also-required-but-defaulted", ParamConstraint::Require({"122"})); // This will default to 122
-
-
// Parse
-
args.Parse(argc, argv);
-
-
return 0;
-
}
-

-Type safety

-

With type safety you can always be certain that you are working with the correct type!
- By creating a type-constraint, you force Hazelnupp to use a certain type.
- If a supplied type does not match, but is convertible, it will be converted.
- If it is not convertible, the process will terminate with a descriptive error message.

-

These conversions are:

    -
  • int -> [float, string, list, void]
  • -
  • float ->[int, string, list, void]
  • -
  • string -> [list, void]
  • -
  • list -> [void]
  • -
  • void -> [list, string]
  • -
-

The conversions *->list just create a list with a single entry (except for void->list which produces an empty list).
- The *->void conversions just drop their value.
- void->string just produces an empty string.

-

Minimal working example:

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
- -
-
// Register constraints
- -
-
// Parse
-
args.Parse(argc, argv);
-
-
return 0;
-
}
-

If --this-must-be-int would be passed as a float, it would be converted to int. If it was passed, for example, as a string, it would throw an exception.

-

-Parameter incompatibilities

-

With parameter incompatibilities you can declare that certain parameters are just incompatible.
- If they get passed together, the process will terminate with a descriptive error message.

-

Minimal working example:

#include "Hazelnupp.h"
-
using namespace Hazelnp;
-
-
int main(int argc, char** argv)
-
{
- -
-
// Register constraints
-
-
// Register a single incompatibility
-
args.RegisterConstraint("--be-vegan", ParamConstraint::Incompatibility("--be-carnivore"));
-
-
// OR register a whole bunch of incompatibilities
- -
"--be-carnivore",
-
"--like-meat",
-
"--buy-meat",
-
"--grill-meat",
-
"--eat-meat"
-
}));
-
-
-
// Parse
-
args.Parse(argc, argv);
-
-
return 0;
-
}
-

-

Keep in mind that you can only register ONE constraint for each parameter! Adding another one will just overwrite the prior one. However, one constraint can do all three "types" at once if you daisychain them:

-
"--width",
-
ParamConstraint::Require() // Make this parameter mandatory
-
.AddTypeSafety(DATA_TYPE::FLOAT) // Force this param to be a float
-
.AddIncompatibilities({ "--antiwidth" }) // Make this param incompatible with '--antiwidth'
-
);
-

-

-Automatic parameter documentation

-

Hazelnupp does automatically create a parameter documentation, accessible via --help.
- If you want to use --help yourself, just turn it off.

CmdArgsInterface args;
-
args.SetCatchHelp(false);
-

What does this automatically generated documentation look like?

$ a.out --help
-
-
This is the testing application for Hazelnupp.
-
-
==== AVAILABLE PARAMETERS ====
-
-
--help This will display the parameter documentation.
-
-
--names LIST default=['peter' 'hannes'] The names to target
-
-
--force -f Just forces it.
-
-
--width -w FLOAT The width of something...
-
-
--fruit STRING [[REQUIRED]] The fruit to use
-
-
--height -h
-

This documentation is automatically fed by any information provided on parameters.
- You have to set the brief descriptions yourself though.

CmdArgsInterface args;
-
args.RegisterDescription("--force", "Just forces it.");
-

Additionally you can provide a brief description of your application to be added right above the parameter list.

CmdArgsInterface args;
-
args.SetBriefDescription("This is the testing application for Hazelnupp.");
-

If you want to display this information somewhere else, you can always access it as a string via args.GenerateDocumentation().

-

-

-Descriptive error messages

-

Given that you did not disable crash-on-error, Hazelnupps default behaviour on user error is to terminate the process with a descriptive error message to stderr.

-

Here's how they look like:

-

Type mismatch:

$ a.out --width "about 3 meters"
-
<< --help page gets printed here aswell >>
-
-
Parameter error: Cannot convert parameter --width to type FLOAT. You supplied type: VOID.
-
--width => The width of something...
-

Missing required parameter:

$ a.out"
-
<< --help page gets printed here aswell >>
-
-
Parameter error: Missing required parameter --width.
-
--width => The width of something...
-

This assumes that you've set a description for, in this example, --width. If a description is not set, the last line will simply be omitted.

-

-

-More examples?

-

Check out the tests! They may help you out!
- Also make sure to check out the doxygen docs!

-

-

-What is not supported?

-

Chaining abbreviated parameters, like this:

# This is not supported. It would think -ltr is one parameter.
-
$ a.out -ltr
-
-
# Instead do this
-
$ a.out -l -t -r
-

Using parameters multiple times

# This is not supported.
-
# Let's say -i is short for --input
-
$ a.out -i hello.txt -i shoe.txt -i somsang.txt
-
-
# Instead do this
-
$ a.out -i hello.txt shoe.txt somsang.txt
-

-

-Further notes

-

This is still in alpha! There is no guarantee at all that this actually works.
- Whilst i did my best to make sure it does, i bet there are still a few flaws i've overlooked.
- Please know that i am not obliged to work on fixes. I do have other stuff to do. This does not mean that i won't, but i'm not sure when.
- Feel free to submit a PR if you think you improved it in any way :)

-

-

-Contributing

-

If you want to contribute, feel free to fork the repository, and submit a pull request.
- Bugfixes and tests are almost certain to be accepted, features should be agreed upon and come with tests.
- Just create an issue with the tag feature request. Don't forget to update the UML (Hazelnupp.vpp)! The (free) modelling software used is Visual Paradigm.
-

-

Any code added must match the existing style!

    -
  • Objects begin with a lowercase initial
  • -
  • Classifiers and Functions/Methods begin with an uppercase initial
  • -
  • Classifiers are camel-case
  • -
  • Classifiers get documented via /** */ for doxygen. See existing classifiers
  • -
  • Members (methods and objects) get documented via //! for doxygen. See existing definitions
  • -
  • { always gets a new line
  • -
  • Enumerations (and their values) and macros are all-upper case snake-case
  • -
  • No using namespace std
  • -
  • Do using namespace Hazelnp in cpp files. Don't do Hazelnp:: if possible
  • -
  • Files outside the project (like STL) have to be included with #include <>. Not ""
  • -
-

-

-LICENSE

-
Copyright (c) 2021, Leon Etienne
-
-
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
-
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
- -
static ParamConstraint Require(const std::initializer_list< std::string > &defaultValue={}, bool required=true)
Constructs a require constraint.
-
The main class to interface with.
-
static ParamConstraint Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)
Constructs an incompatibility constraint.
-
void SetCatchHelp(bool catchHelp)
Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter...
-
Gets thrown when an non-existent key gets dereferenced.
-
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
-
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
-
static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)
Constructs a type-safety constraint.
- - - - - diff --git a/docs/index_8md.html b/docs/index_8md.html deleted file mode 100644 index f59a1fe..0000000 --- a/docs/index_8md.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Doxygen/index.md File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
Doxygen/index.md File Reference
-
-
-
- - - - diff --git a/docs/inherit_graph_0.map b/docs/inherit_graph_0.map deleted file mode 100644 index 81bd617..0000000 --- a/docs/inherit_graph_0.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/inherit_graph_0.md5 b/docs/inherit_graph_0.md5 deleted file mode 100644 index 08869e1..0000000 --- a/docs/inherit_graph_0.md5 +++ /dev/null @@ -1 +0,0 @@ -b51d05eec03cf85b1bdc9f391bc5e48c \ No newline at end of file diff --git a/docs/inherit_graph_0.png b/docs/inherit_graph_0.png deleted file mode 100644 index 1c29da1d340c9d0cabf9834f091efa29a864285f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2522 zcmV<02_^Q4P) zQ-t`xjzR4N6>aX5AA)E|%4()_lBpPwI2 zo;>;6akI0t;qUMNR~QNCM7MbzO?rAdf`fxGaNs~ZeE1L*6%{yl?i@544X#|d@<(H9 zwOXX4q+rpaMUcs4e>9dk(P%X2-o3lIWweaMNF)-txw)ZNuU-&~#V9T=ZZXz~5hJi=%NB%$gg_t=VDR9n`5*L;|5u2zz^bEM2-3H8nMD((v0*GvsnP8Avut zXlN)&Boe)Je}8}4wr!hUdVPI8y?F70JUu<>?Afyh+uX5Z2l@K?QdLzI5fMd3MpAfq zI4PA%(r7fadi81=IdUX5G&JzBl9QA9`aV8Bf(jE;+sj}N)KyVJ90 z�=ZiWV+hNVc}Nw0QAi`ts!q<>uy+lamuE6bimhP*4!fm@$LO%E~A|KcD>k{0IPj z{`{FQ6A=+Xr%#_IA|k0&N^x; z(n~*i@+1j`LMkmSB_g7dk`e+yYPFg#)6mdB0)c>Dy?RANhRu|akiegR{rZ&vkV>WE z^EYnXs1w)A%Zp?(S*!iMckdnnpbsBD7%k`H<3s!R@8{3&-n~m4$5C~4HJ>(T&K%mX zVFM8n<>%)U04ggh>wOUOB1`ME|KYtPtQAI@sIXgR3ZEdYiT&YybpXcS} z=^66QojZJ*QmG_sYioWin`6jK#>Td}nc6ac%{3DlH&Y``*HCeBF#({wyga>fZPCyc zjG4(~w|NqY1Vp5B`1||olu1iVgRieIY;0`6aU3KP2~;YTPMKS`ZejiU^|*fhI-H!G z004!Bg#dv5{rmH`e_gtCL1kqnii(O_)a2;s$iME{vnK%PYz}yMc<7Y(@bJ*nV~D*48?@MIw<-dnqX?C@Cp{rKKe}j)Q}P z13rHI2)SIYQ_j`Zm4B^Pt6^hf0|y5OoxV0A6bfemN2%4ii(QRrArsRG5aqXeuoZwW-2QyLrhEzwr<^u($Z3BwOS-5CZfK+ zo-dP~osGG3=i=hUix@Iw2%qle<^~H33sh88=oxnE)T!;()HuM6D3waMxVW@h&&$gT z?(Xh5bLLFDV;jQ7#RWArH7GAH*U{97R;$JFfa(8z} zLqh`!3JUb<{;4(8lnygfU0oftS}pAC>|kkWiARqfAu%zL&o3@6hFB~{Qc@BE0|RyH zy1Kez+O%m{uwVglb8}H!TZ^YppCU3c54I1WikNk~aa!G;YRke8Q-+S*#=So3ViV2^yLZrNG)PWP#?`A=|JWL8 zN{5-r-Q68~_wGeZObi490amSAh3V6$^ZA!9U4mMz#>|;B4esWhI&}&|h73V?csLv# z9T687hXo53{MOd#k|j$JA0H2AXJ?!}dluKOUDLTOGe%fg7&0?6@%HUo1Ox=Y!NCDB zF)^^Sv-_=gI=Nhq>gsBUL?VdAV$7R2kI$3IWC#xr*Q;Y`X^D`K5To1Va=9Gezki2F zB*K&_Q!s1REWYlzapTadS1*Kzhr{099*K#GP$(3zv9W1aAJ(l~hZ{F;pl8pX{BE8p z=C8Fi1OR8woWZbR!w?!83J(ttJb(Ti6DCYBnFgc$hX<@qg^!O9za#c9a_!nRvbVQ4 zw~W6IV;d0c>qP$ua=9E`yLQE-Nt2*dDzSe3dPGM@n_E_=f_($xA7SFeiAYOJgPWTh z#9}c*LPC&`kYH|Eor-_<%9Nd*ZEgu2N}oP`keZrmZW)~#c4cBPOawC%gJB|=nHUTc z!OX;9n1~iPAlmyWK7-Mj$;!%VF|S24we-Ki7z~DCI3o7@ObmtzV874AV3-PKCI-Vq kFf%b2CW4uX!7vg315nC;$w7HXm;e9(07*qoM6N<$g2yGN2><{9 diff --git a/docs/inherit_graph_1.map b/docs/inherit_graph_1.map deleted file mode 100644 index 60adf25..0000000 --- a/docs/inherit_graph_1.map +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/docs/inherit_graph_1.md5 b/docs/inherit_graph_1.md5 deleted file mode 100644 index 32e12d8..0000000 --- a/docs/inherit_graph_1.md5 +++ /dev/null @@ -1 +0,0 @@ -414008b1001331bfd5d70936aa6acf74 \ No newline at end of file diff --git a/docs/inherit_graph_1.png b/docs/inherit_graph_1.png deleted file mode 100644 index d65deab36533b3289cec411b1257d0155c16be37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23383 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

UBb3*_V( z@I0@Yo~MHk7qeOxvxHHjvaq7?^6WWTg?3F}DdSIvg`nEJK`SR(Ny^y(D1%UGShV5RbC-neo)s*Yh}0pq@#d+$Zu> zj$jVp54r&T-{{t~oLej!dHb9`lhhzHK^TyEG7f$3%?39Ojc5>77Z|lr#qrxoK>`lx zYIw(-*_ta5wHmqlK2S(NEBY;Xa6pN73{Z<`c(~M?nz2?$GB!qE5~4wizgW`JY-}MD zZL$rIrh>knY)Hc%?dw#yK0;b1?bJGk)CY0o>t_lFEINR9EO^p*0cv<|=h!!IE~zLh zr+xS!0!r>zLl$Z#CZFkyL69978mek&m>SFh+gdv2j4_%@3OUy|AV4BwV_mg#Bp*Du z8BTWisN}hEM2-tQysa6gLuNMeMeijpAt5h3v8$fcV8Ooh^%J`9zp}VlhQQ7M!5GuNk{#O~-9@NyGMz5>Y;uKMN6bXUd#j40I zj+lT%f-a+Az<@;_qD9=LKqMj{L^K#++p23D${0|TrwmXDuT&Bq0eS4A1V|C&5hQ?B z5e33Su?Ywj_uO{cnYQ;o?hKIJ`~AMh`OZ1;MXSq-gO=%eW&bg5wP1~&-gdZ-UFl2E zn!~Xy+by{JlXw>E@_4T}wN0tq(PAovzgQ2tj2Mh|DJ@UcOEo3^sjtXS2q%h`@z@OP zv!wXS!NTpJ#Xk2+Tu8--0QOH|eN$A_%D9gu{E3Y>uxU8D7#138uU-|m@doB)O#+pm z{mUkfOd)=JeyuW)5iE2~v6!mxf{+rr)V!vqJ$Ubhw{9t)MAb}6F;_6>hGG`b&y?rB zoeUEdK&r~}hQLN!ByMbMgfNsh`>bsfclDYzRZGK_Tz?kWFzKZc*vHx~y6xRdE4o#$ zl{EP4^ zo(HJ4r4jy?=~aVM4n7n@wt`FzY(RdIG>9#JI}Lz)A2xO9;K7?fZZ*Sk-}_=CP|2jx zd;q#LVA}I}l*5Vc0!sOK_;L9JwyqO{)ie5*Ge^qGIw29_>E)nl*4L3y$IZo38@nql z0+R!_vdT)9BfO{Wjjtbx!S0HSv)10)8a40;SR956ytqTED%fQOM2McfP~@H^&Zl_& zl^`;rfG{~`dk#k{s1rkSDTuMM&V6;Dn)Vl{?jU{=fw=w+(i0P-Iv+B|Qr+C6crSEA?w+2f zVnbDs$?S7=4S#y~G6F*dqoXot=8MsnIDFCry=K~#D|v_p4)%#^KyiHC5WiH z`~CZV$B*Bk~<27Tlp&y)$|1Jo%{&T3!@FJ3Y*&C1A|8g-XYvI>JPM?WBDs_$?pNmmZEmF!b9h z7;)Muqog?-X^s3aw%@ON+Yy&~o#qh}VsW=V+U9v6& z*~B7Q(Qzk*=*l6xhnE%b5Euho3n^PnT@YS1m|;H19zdwjyV%g_eIdDshJ5I*N27MqLfVa(^N&AgU}v1a$oFNbX^zSVz20|_KMJ?E?9BEwG&2i_zZwTWovKF7DJZzh7r-q_Z}nDVhRM6GJ~UXDH+V# z$$>*6A8+sOXU=Ep0?~X_OuM*uCoNlET2%slOIc#vl-gHRs&^5-bA{xS#amebC?baL zjyc`z`wK-HOH}C1}lkPaRgJ8S31 z_3?AMF(+hZ-0lfln*9(Km2B+KtJDi~Gm=Xd{QV$E_2SL@f)WGjgN?N{3#uo!g*0yF z5d&=#q~$|7@i+kO9UXnJvyj1qz|njSiU|GTjH_n;c8Ky?8xEq4jYpDT%^ye+jlo=~R=1->SBTX0&(lRqk06UYtFq8j7 z7dUjW3ToWpxIR>OV^h;2WZbO`#u2=8K!CO7ufa?6K&4%6VBim%PLHF0e%FBD(qXBE z6sQ5(uEOpC*i8DSlxnap1duV2a1(toJQ(eDzEJo9_fNSvrH4}tf|RKY_;ih~)SNu^ z@Y{cocA_v+O-oJ9AB=1aM7PifB$1A#4Yy?g)nWqnfW9s+pJC@63uY1S+#iXl(|omg zQwejcY#dNhnTwd9Q;>n&Se^7M$VQ_;UKYh+@?b&Nz)ah;_au2@E>FMztmt;ZvM z9FGUPCzCYM_zAlLfp(%_k}FXXU7in-4EpzxzeT98nm7FZf0M-z*RQkQ^tcJQd&^ypfA)WQ!t=iX diff --git a/docs/inherit_graph_2.map b/docs/inherit_graph_2.map deleted file mode 100644 index 0465d4f..0000000 --- a/docs/inherit_graph_2.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/inherit_graph_2.md5 b/docs/inherit_graph_2.md5 deleted file mode 100644 index 263113e..0000000 --- a/docs/inherit_graph_2.md5 +++ /dev/null @@ -1 +0,0 @@ -07998a2db940c611db700a6971a05277 \ No newline at end of file diff --git a/docs/inherit_graph_2.png b/docs/inherit_graph_2.png deleted file mode 100644 index 645803e060bf76a1b89dea47d9e512c5aa18c33e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2043 zcmV{O00006VoOIv0RI60 z0RN!9r;`8x2e3&*K~#90?VMRm6I&R^&tOFfr9jjw7AP$>Rv&}_i6sU!1eIcIQY{u# z5SJJef;Dv^KwOB%)CGx4A_OB?F|-2uLY1H-7-MW)NX0jx1-e+VsGtNeK<7T3+}^Pp z1zK9>&hKgFKd0yX`+c05Gv{kSP!t6O3!eaA8zAruL?Uqlkw~0CBoZf(uqSWdzP)kd zhOev;%m|4@lAN4uJ^gD&>h=1@#>RQKL@;9-8yod{Jys#vH)?2Tm@hvBvjjm98-;jA z;shd*IDtqcPVm!2ayXoO_wM=Hg}3m=xAW6P63mp@Br+o-Wl%C=^OULc*IjZ=f!f zN?9zH{qeMYW@l%A{P^+U!Gj2ba5x+n_TuB?OG`_)Y}pbL5+aw&ojG(E3LD&U>kghz zWOH*filP$}6HlHzdGO#teSJLuAR{9K{g<+`vV?>L7^%FxyzcJq_V#w2PRC}m1pQdwDf@!~~;!5|WeGBY#HX0!V~?faC=<%x-jH8nLT zimFs9*Y@t;zkm7i<)NXW?Cfl34jqQVTc8*e3Wbg0knP*I+xK(+{CWG9H*ek)i9}eX zwzihRV3#C}%T-z3l#jg9bCepRNxVSht!(8{~EEL#pH#-0T3WWlz%yLFrBVu)C zz0}aqkdTl-CX*2a5sSqJgTZ>KwY9aVsOZ_VXRB7N0s!>(_5uKCG#b3wE?Ttc*RNlF zeSP-BQK?jT5EK*y02mt^gQrX;)7pl~WMapf7H550acwU;I(pjPT!g~oc=*;jFffpl zlXLFeIg`m`u~;f9Dkdi<;U%?Ny?_7yrluw~n++8@ogNSnFgQ4f{hQ$P`R)$~V-3-2 zwULpLbMzk&@Lxb&+q2*8w82Fvyn%-kIW{(Cu~sWz{QUf`uCCG1(f9A)3j~5cfBv{XTxDhDt5>gn|Nedb`gMcBAP@+^ z+?Ed!5fPo8oiO5awC5}oHu&jcCnhH5>eZ_`IXM&xMIw>x+O-SnPoF+D8jV7s&}P*t zlgZd@HkZq#QmKW7h57mUOO`Bgf4HMZkCv8}u3o+R(W6I7rEz}so~+_TrT(Z>(@|sT}x7_R7Z{+ndw;LN?gjvu&1R^#wY6bSQOvDXqtO5WdV71J{`vD~0Kk_oU!3XK(Y0D_ zaBwiJYRx~uuXc85G}@gzce=Z~2L}iD?c0}?mDS$f?y#jz%?OKq{m5uElF8)d%a=nP zTk5hwuh)}Eq?ni(cnUYH^?JQC9s5}ZgHc~!fBN+4q@<)nhYo%E^vR8H>_znEudfdlsIj%AS-@hk zl9Q7Q3k%I=vsSAuE-rS~lF4MIrluAY6qrmVy-9>Hgcq|s={jvc#lso&F*Gz3 z8ymZ0$BwM5EC4`YV4$;>WHNcfh7E~{i8LBbCX>0=t!&=BIV>!U%jJfLhgVcoJbwI` zOeW9Ht!KbKFc(%C%T1I@Wq5eFuU&W;V7J)8$-agS3Wb71B5m8YO{>)w6&2aPwBQfF zSnPP5^z`(Gh6XyF&g1dY($dPy%YE(0>)>-nE?c%tE|>e-#k_*g8TmhiNF+`m5{VOt zMB)Soiyim|O|Y=|Yeq&zMG1vMUs)k=AE8iav-gXj#J~B(1;jHFClHCm2}B}s0+C3Z Z@DGmJ*S8tK`V0U7002ovPDHLkV1mTu@!bFb diff --git a/docs/inherit_graph_3.map b/docs/inherit_graph_3.map deleted file mode 100644 index 28dcc03..0000000 --- a/docs/inherit_graph_3.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/inherit_graph_3.md5 b/docs/inherit_graph_3.md5 deleted file mode 100644 index b80eac4..0000000 --- a/docs/inherit_graph_3.md5 +++ /dev/null @@ -1 +0,0 @@ -4f0b35bc688eabf2cb9ac18b4e4afbc3 \ No newline at end of file diff --git a/docs/inherit_graph_3.png b/docs/inherit_graph_3.png deleted file mode 100644 index 1282d1dd03061636b07a04733f7e5a3482d5cec1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1904 zcmV-$2aouPP)0c+}HV^5(oqb4jk~0a5$V( zr%p|eBEk>|1Q>>47)Bg27-^S69Q|@TgQO?7uvI{1^b>a5!W#S$cYU zTwI(;BpMzb4otXm<;vs7kMsF_3Wc(4*|N^gPG7vTvXaZ?QYaKQo88^r4dXR6H5nNh zfn^^Q3Z=HT)^4|JG@77lVe+b~s`cyFlgZ>;w{C^#CYQ^(TrP=3TE2X_PN%D{uTM)$ zi;ayfD=YJQy#N3l$M^2tTUuILS68=m>C))v=oKqgoH=u5>(;FR0ISuyefxGQm718C zxNFz0Z{NO!p7r_j=NSw}OiT=y%kAy$1psW@w(aH1mn9`77>02;obbi_pNT<-3(Wj$ z;C{5VwT+1cW#h(;a0BqMdiCm)Cr|oE+-`SoZ*N9MMr&*9n8#0_KFwyc?RGnk<6^N` zC=}}TdYjF5@ZiB!t5$hD9+>dbrAx3si^ZbRXgZy4bab@3x|&L*dc9s4kB^V<>guxD zY&A7C6bi*^wchA7#yWJrs#bUAO zboz@IFYI=ENl6KrOy09+&)2VC2L}g}l9H54C640*0|Nj6jYbo6G4t~B^7He}X0yRy z*sx(ketv$4S-*YzcJAD{PoF+@xm+5J=Fp)-uyamM&ef||eL2GvAI>6=$s7WSL?V$$ z{3Da}R-i}6cni|l*jQ9l zGJLH~CKHSwJ9f;MIV≻>C-hWkYY-Y_{_9ax$6x`Sa)T)UsGC_=<;~6pO`bXlQ`t zuC6W&!yFC=tnS#cqoSe$$MGjmo&W$0218(~_wU~W06u*90IRQGzXkw&`t)hMS?l%s zn3x#2ME(SND;)9REb>&mHOVtEaNqJZwYRsk*=!PtgkhLWCNr5#zNXI3&Z9?N>o5Nc^OS~!zhxNspXELgB0IyyQgCdOBVI$;O1*&L|HXf#GfM$+kY zScS(oeC2}9n!#Y)ym|BR;lsJPxuvD0uU@?xZ>C|2_h-CCo;1^Z-}>_9i&QE-apHu< zV)1&t3WdV$cEhH=zP_D1ciy>kCo?k>M$*&MBO)S3Mn?Q?T2N3B{&3Kp5WQZXmX;Q} zKYS$|4u@8&<@5O=)B*r744ZIL;gFS;MW@rRU%wvMv}n;Hx7%$n7+`g1Xb1*FWGg5r zP^nZsJw1FrpU2}lolXEiM8w#?<8+A+%=`<_PWs89xLhu;*BcufJ8#}RtyZg0C}4be zcvvJ7H8nM@Ter^FnMR`(78Vv47Y_~&I-Snv&!3CM;vYYLgg@Mc3m4RCwcT#7tE)4a zOk%MZgmIUjQ0?TpjR%HdO-)T#u3V|8sCf78ozv+Y7#OIks!}SIOeT}ZQ>-@SX+Y&J_Ik};nXTUuH&Gc$!kA(cwqzkh#maq;~5^TQvm ztgNi6swyQVrM0#7{{8#D<7tX&C)X_m0)arSR=;`khQr|`BqT_s(%9HoxI?$KwUJ1q z?Ck8EoSf9u)RvZ(5P9OJ&3;wiA3UG#c=fhw-CgD q?pp|=K;A+S1@abxD3G@hMDY)9+)y!|*my+%0000 - - diff --git a/docs/inherit_graph_4.md5 b/docs/inherit_graph_4.md5 deleted file mode 100644 index fd7dc51..0000000 --- a/docs/inherit_graph_4.md5 +++ /dev/null @@ -1 +0,0 @@ -3396960537c122b0b3247a767ac311f4 \ No newline at end of file diff --git a/docs/inherit_graph_4.png b/docs/inherit_graph_4.png deleted file mode 100644 index a1f89856443c9a1a4bdf90ca354d60b488b7d815..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1407 zcmV-_1%UdAP)dVhBdV^0WZNmxDZJKFDL{gFI$Fzo;FBLNPKj;wdQzcafQyDVNKw z-QU*n&CSi~>gu;kLbwy9QmIfVsF7dxNh>QW-=zoPeo9MAZ6fG>%zTi?%m;bQe153M zLZNVadfL+}7{U+r7~w`f;&DMiK|@0WH6j!WySuyHqv*>hC@25`007u*c2-u_!NGy2 z6=CV=>9e!5Up>qJYaPpEGLj^;PCJe#{2vG`Fy^8+X{~30|NsFgF&HCI8+M0)xRolB8HHE-Wlm ztJQkFzOk_}H8u79{T&WCH8lnE34-A9cq*03WHR;k_HsBJi^T%tAt53A`}=ymzQ4a8 z$8nubN0MY;UtfHDJUo}$rph*%OaOq5jSXjN34-8qxrc{`X0w^5D1snjVq%Vuj|~Qc zR4Qe&*)=sakB^TR7Z+SEcX@dkra3D!EiG+kX2v?cvowcdoFS1&BoYZV@Wo2d5$n5NFY;5f9?JY@?H#avJhH150cnrTW#l=~3;^N|{ zb2(&eYzzPp5fPzMsWvt?!otF6)be;dSBeS^4TTL~UtfQJ|A2r1YZvNtu}u0js+hmU z&F|y;`}>NDiq6i?+uK`<#WFfNYBrnUp|i8Is;a8BwY9{=L>P&Vj%Kk~4-XI2+ohZqtF`h0k68jVJ!Qkj>RN23(fn4OdK2>7z~D?p&^Y%BNmG>7xr9#RQs_sXV8=x9v*&veh%-L&tDB^xY^^Fn3%!A z!HS9s9LMEyc}YnLjIXb+YqeU5L}IhAo|~IXOiU~+EaY%Fb#-;s)zv;eKCVw!TU*=S z-X0MVv9PePxw&b5Y<^Ph$I@tUR%TOE)AshZpPwJxSAX(qIEDITaB - - - - - - - diff --git a/docs/inherit_graph_5.md5 b/docs/inherit_graph_5.md5 deleted file mode 100644 index 7583c18..0000000 --- a/docs/inherit_graph_5.md5 +++ /dev/null @@ -1 +0,0 @@ -7e4a693e66d05f2ee8664e3ea22c9807 \ No newline at end of file diff --git a/docs/inherit_graph_5.png b/docs/inherit_graph_5.png deleted file mode 100644 index be7a7d7e79cedfd690d5f754051a2d77b46299b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15322 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 - - - - - - -Leonetienne/Hazelnupp: Class Hierarchy - - - - - - - - - - - -

-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Hierarchy
-
-
- - - - - - - -
- - - -
- - - - - - - - - - -
- - - -
- - - -
- - - -
- - - - - - - - -
-
- - - - diff --git a/docs/jquery.js b/docs/jquery.js deleted file mode 100644 index 103c32d..0000000 --- a/docs/jquery.js +++ /dev/null @@ -1,35 +0,0 @@ -/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element -},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** - * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler - * Licensed under MIT - * @author Ariel Flesler - * @version 2.1.2 - */ -;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 - * http://www.smartmenus.org/ - * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/docs/main_8cpp.html b/docs/main_8cpp.html deleted file mode 100644 index 5dc698d..0000000 --- a/docs/main_8cpp.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/main.cpp File Reference - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
- -
-
main.cpp File Reference
-
-
-
#include <iostream>
-#include "Hazelnupp.h"
-#include "IntValue.h"
-
-Include dependency graph for main.cpp:
-
-
- - - - - - - - - - - - - - -
-
-

Go to the source code of this file.

- - - - -

-Functions

int main (int argc, char **argv)
 
-

Function Documentation

- -

◆ main()

- -
-
- - - - - - - - - - - - - - - - - - -
int main (int argc,
char ** argv 
)
-
- -

Definition at line 7 of file main.cpp.

-
8 {
-
9  Hazelnupp nupp;
-
10 
-
11  nupp.SetBriefDescription("This is the testing application for Hazelnupp.");
-
12 
-
13  nupp.RegisterDescription("--help", "This will display the parameter documentation.");
-
14  nupp.RegisterDescription("--force", "Just forces it.");
-
15  nupp.RegisterDescription("--width", "The width of something...");
-
16  nupp.RegisterDescription("--name", "The names to target");
-
17  nupp.RegisterDescription("--fruit", "The fruit to use");
-
18 
-
19  nupp.RegisterAbbreviation("-f", "--force");
-
20  nupp.RegisterAbbreviation("-w", "--width");
-
21  nupp.RegisterAbbreviation("-h", "--height");
-
22 
-
23  nupp.RegisterConstraint("--width", ParamConstraint::TypeSafety(DATA_TYPE::FLOAT));
-
24  nupp.RegisterConstraint("--name", ParamConstraint(true, DATA_TYPE::LIST, {"peter", "hannes"}, true));
-
25  nupp.RegisterConstraint("--fruit", ParamConstraint(true, DATA_TYPE::STRING, {}, true));
-
26 
-
27  nupp.Parse(argc, argv);
-
28 
-
29  return 0;
-
30 }
-
-
-
-
-
The main class to interface with.
Definition: Hazelnupp.h:11
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:313
- -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:36
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
Definition: Hazelnupp.cpp:527
-
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
Definition: Hazelnupp.cpp:558
-
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
Definition: Hazelnupp.cpp:324
- - - - diff --git a/docs/main_8cpp__incl.map b/docs/main_8cpp__incl.map deleted file mode 100644 index 1dc0ca5..0000000 --- a/docs/main_8cpp__incl.map +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/docs/main_8cpp__incl.md5 b/docs/main_8cpp__incl.md5 deleted file mode 100644 index 1f3b9dc..0000000 --- a/docs/main_8cpp__incl.md5 +++ /dev/null @@ -1 +0,0 @@ -be550128eeb7dd5982b9bdd719aee419 \ No newline at end of file diff --git a/docs/main_8cpp__incl.png b/docs/main_8cpp__incl.png deleted file mode 100644 index 1ab17c5a88d1ac4d0b928783dfcd7c130a2211e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38922 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�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%0DrO%lq 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 G0{$Q5h!ySt diff --git a/docs/main_8cpp_source.html b/docs/main_8cpp_source.html deleted file mode 100644 index aaddd68..0000000 --- a/docs/main_8cpp_source.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp/main.cpp Source File - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
main.cpp
-
-
-Go to the documentation of this file.
1 #include <iostream>
-
2 #include "Hazelnupp.h"
-
3 #include "IntValue.h"
-
4 
-
5 using namespace Hazelnp;
-
6 
-
7 int main(int argc, char** argv)
-
8 {
-
9  Hazelnupp nupp;
-
10 
-
11  nupp.SetBriefDescription("This is the testing application for Hazelnupp.");
-
12 
-
13  nupp.RegisterDescription("--help", "This will display the parameter documentation.");
-
14  nupp.RegisterDescription("--force", "Just forces it.");
-
15  nupp.RegisterDescription("--width", "The width of something...");
-
16  nupp.RegisterDescription("--name", "The names to target");
-
17  nupp.RegisterDescription("--fruit", "The fruit to use");
-
18 
-
19  nupp.RegisterAbbreviation("-f", "--force");
-
20  nupp.RegisterAbbreviation("-w", "--width");
-
21  nupp.RegisterAbbreviation("-h", "--height");
-
22 
- -
24  nupp.RegisterConstraint("--name", ParamConstraint(true, DATA_TYPE::LIST, {"peter", "hannes"}, true));
-
25  nupp.RegisterConstraint("--fruit", ParamConstraint(true, DATA_TYPE::STRING, {}, true));
-
26 
-
27  nupp.Parse(argc, argv);
-
28 
-
29  return 0;
-
30 }
-
- -
The main class to interface with.
Definition: Hazelnupp.h:11
- -
int main(int argc, char **argv)
Definition: main.cpp:7
-
void SetBriefDescription(const std::string &description)
Sets a brief description of the application to be automatically added to the documentation.
Definition: Hazelnupp.cpp:313
- - -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:36
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
Definition: Hazelnupp.cpp:527
- -
void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)
Will register a constraint for a parameter.
Definition: Hazelnupp.cpp:558
- - -
void RegisterDescription(const std::string &parameter, const std::string &description)
Willl register a short description for a parameter.
Definition: Hazelnupp.cpp:324
-
static ParamConstraint TypeSafety(DATA_TYPE wantedType, bool constrainType=true)
Constructs a type-safety constraint.
- - - - diff --git a/docs/md_Doxygen_index.html b/docs/md_Doxygen_index.html deleted file mode 100644 index 4716109..0000000 --- a/docs/md_Doxygen_index.html +++ /dev/null @@ -1,324 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnupp - - - - - - - - - - - -
-
- - - - - - - -
-
Leonetienne/Hazelnupp -
-
Simple, easy to use, command line parameter interface
-
-
- - - - - - - - -
-
- - -
- -
- -
-
- -
-
-

is a simple, easy to use command line parameter parser.
- Hazelnupp does not support windows-, or bsd-style arguments. Only linux-style.
-

-

What is the linux-style? This:

# Using a long parameter
-
a.out --long-parameter 1234
-
# Using an abbreviated parameter
-
a.out -lp 1234
-

-Note

-

These examples reference exceptions. These are not enabled by default. The default behaviour for user-fault exceptions is to produce output to stderr and kill the process.
- To enable exceptions, call this method:

Hazelnupp args;
-
args.SetCrashOnFail(false);
-

-Importing into a project

-
-

How do i actually import this into my existing project?

-
-

I am working on a proper way to make this a fast-and-easy include.
- I am probably going to make it a single-header–single-cpp file solution. A namespace will obviously also be used.
-

-

If you want to use it NOW, the best idea would probably be to either compile a lib from source or set the entire Visual Studio project as a dependency, if you are using VS.

-

-What's the concept?

-

The concept is that each parameter must be one of five types. These are:

    -
  • Void
  • -
  • Int
  • -
  • Float
  • -
  • String
  • -
  • List (non-recursive)
  • -
-

Here are examples on how to create them

# Void
-
a.out --foo
-
-
# Int
-
a.out --foo 5
-
-
# Float
-
a.out --foo 5.5
-
-
# String
-
a.out --foo peter
-
-
# List (any type above works)
-
a.out --foo peter jake jeff billy
-
-
# List, mixed types
-
a.out --foo 1 2 3 4 peter willy billy bob 3
-

These parameters can then be accessed via a simple lookup!

-

-Minimal working example

-

So what's the simplest way to use Hazelnupp to work with command-line parameters? See:

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args(argc, argv);
-
-
if (args.HasParam("--force"))
-
// do forced
-
else
-
// be gentle
-
-
return 0;
-
}
-

Looks super easy! But what about actual values?

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args(argc, argv);
-
-
// Either check via HasParam(), or do a try-catch
-
try
-
{
-
int myInt = args["--my-int"].GetInt32();
-
double myInt = args["--my-float"].GetFloat32();
-
std::string myStr = args["--my-string"].GetString();
-
}
- -
{
-
return -1;
-
}
-
-
return 0;
-
}
-

What about lists?

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args(argc, argv);
-
-
const auto& myList = args["--my-list"].GetList(); // std::vector<Value*>
-
-
for (const auto* it : myList)
-
{
-
// Should probably check for type-correctness with it->GetDataType()
-
std::cout << it->GetString() << std::endl;
-
}
-
-
return 0;
-
}
-

-Abbreviations

-

Abbreviations are a very important part of command line arguments. Like, typing -f instead of --force. Here's how to use them in Hazelnupp:

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args;
-
-
// Register abbreviations
-
args.RegisterAbbreviation("-f", "--force");
-
-
// Parse
-
args.Parse(argc, argv);
-
-
if (args.HasParam("--force")) // This key will be present, even if the user passed '-f'
-
// do forced
-
else
-
// be gentle
-
-
return 0;
-
}
-

-Constraints

-
-

That's all cool and stuff, but this looks like a LOT of error-checking and not elegant at all! How would i actually use this?

-
-

For exactly this reason, there are constraints. With this, you can control what the data looks like! Constraints serve two main purposes:

-

-Requiring data

-

With ParamConstraint::Require() you can declare that a paramater must either always be present, or provide a default value.
-

    -
  • If a parameter is not present, but has a default value, it will be automatically created.
  • -
  • If a parameter is not present, and has no default value, an exception will be thrown.
  • -
-

Minimal working example:

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args;
-
-
// Register constraints
- -
ParamConstraint::Require("--this-is-required"), // This missing throws an exception
-
ParamConstraint::Require("--also-required-but-defaulted", {"122"}), // This will default to 122
-
});
-
-
// Parse
-
args.Parse(argc, argv);
-
-
return 0;
-
}
-

-Type safety

-

With type safety you can always be certain that you are working with the correct type!
- By creating a type-constraint you force Hazelnupp to use a certain type.
- If a supplied type does not match, but is convertible, it will be converted.
- If it is not convertible, an exception will be thrown.

-

These conversions are:

    -
  • int -> [float, string, list, void]
  • -
  • float ->[int, string, list, void]
  • -
  • string -> [list, void]
  • -
  • list -> [void]
  • -
  • void -> [list]
  • -
-

The conversions *->list just create a list with a single entry (except for void->list which produces an empty list).
- The *->void conversions just drop their value.

-

Minimal working example:

#include "Hazelnupp.h"
-
-
int main(int argc, char** argv)
-
{
-
Hazelnupp args;
-
-
// Register constraints
- - -
});
-
-
// Parse
-
args.Parse(argc, argv);
-
-
return 0;
-
}
-

If --this-must-be-int would be passed as a float, it would be converted to int. If it was passed, for example, as a string, it would throw an exception.

-
-

Note that you can also combine these two constraint-types by populating the struct yourself:

-
pc.key = "--my-key";
-
pc.constrainType = true;
- -
pc.defaultValue = {}; // no default value
-
pc.required = true;
-
- -

What doesn't work is inserting multiple constraints for one key. It will just discard the oldest one. But that's okay because one can describe all possible constraints for a single key in one struct.

-

-More examples?

-

Check out the unit tests! They may help you out!
- Also make sure to check out the doxygen docs!

-

-Further notes

-

This is still in alpha! There is no guarantee at all that this actually works.
- Whilst i did my best do make sure it does, i bet there are still a few flaws i did overlook.
- Please know that i am not obliged to work on fixes. I do have other stuff to do. This does not mean that i won't do it, but i'm not sure when.
- Feel free to submit a PR if you fixed something :)

-

-What is not supported?

-

Chaining abbreviated parameters, like this:

# This is not supported. It would think -ltr is one parameter.
-
a.out -ltr
-
-
# Instead do this
-
a.out -l -t -r
-

-LICENSE

-
Copyright (c) 2021, Leon Etienne
-
-
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
-
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-
void RegisterAbbreviation(const std::string &abbrev, const std::string &target)
Will register an abbreviation (like -f for –force)
Definition: Hazelnupp.cpp:330
-
bool required
If set to true, and no default value set, an error will be produced if this parameter is not supplied...
-
void RegisterConstraints(const std::vector< ParamConstraint > &constraints)
Will register parameter constraints.
Definition: Hazelnupp.cpp:352
-
static ParamConstraint TypeSafety(const std::string &key, DATA_TYPE wantedType, bool constrainType=true)
Constructs a type-safety constraint.
-
int main(int argc, char **argv)
Definition: main.cpp:5
-
std::vector< std::string > defaultValue
The default value for this parameter.
- -
static ParamConstraint Require(const std::string &key, const std::vector< std::string > &defaultValue={}, bool required=true)
Constructs a require constraint.
-
std::string key
The key of the parameter to constrain.
- -
Gets thrown when an non-existent key gets dereferenced.
-
void SetCrashOnFail(bool crashOnFail)
Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
Definition: Hazelnupp.cpp:379
-
bool HasParam(const std::string &key) const
Will check wether a parameter exists given a key, or not.
Definition: Hazelnupp.cpp:151
-
bool constrainType
Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
- -
DATA_TYPE wantedType
Constrain the parameter to this value. Requires constrainType to be set to true.
-
The main class to interface with.
Definition: Hazelnupp.h:9
- -
void Parse(const int argc, const char *const *argv)
Will parse command line arguments.
Definition: Hazelnupp.cpp:33
- - - - diff --git a/docs/menu.js b/docs/menu.js deleted file mode 100644 index 433c15b..0000000 --- a/docs/menu.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { - function makeTree(data,relPath) { - var result=''; - if ('children' in data) { - result+=''; - } - return result; - } - - $('#main-nav').append(makeTree(menudata,relPath)); - $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); - if (searchEnabled) { - if (serverSide) { - $('#main-menu').append('
  • '); - } else { - $('#main-menu').append('
  • '); - } - } - $('#main-menu').smartmenus(); -} -/* @license-end */ diff --git a/docs/menudata.js b/docs/menudata.js deleted file mode 100644 index a4ef47a..0000000 --- a/docs/menudata.js +++ /dev/null @@ -1,80 +0,0 @@ -/* -@licstart The following is the entire license notice for the -JavaScript code in this file. - -Copyright (C) 1997-2019 by Dimitri van Heesch - -This program is free software; you can redistribute it and/or modify -it under the terms of version 2 of the GNU General Public License as published by -the Free Software Foundation - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License along -with this program; if not, write to the Free Software Foundation, Inc., -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -@licend The above is the entire license notice -for the JavaScript code in this file -*/ -var menudata={children:[ -{text:"Main Page",url:"index.html"}, -{text:"Namespaces",url:"namespaces.html",children:[ -{text:"Namespace List",url:"namespaces.html"}, -{text:"Namespace Members",url:"namespacemembers.html",children:[ -{text:"All",url:"namespacemembers.html"}, -{text:"Functions",url:"namespacemembers_func.html"}, -{text:"Variables",url:"namespacemembers_vars.html"}, -{text:"Enumerations",url:"namespacemembers_enum.html"}]}]}, -{text:"Classes",url:"annotated.html",children:[ -{text:"Class List",url:"annotated.html"}, -{text:"Class Index",url:"classes.html"}, -{text:"Class Hierarchy",url:"inherits.html"}, -{text:"Class Members",url:"functions.html",children:[ -{text:"All",url:"functions.html",children:[ -{text:"a",url:"functions.html#index_a"}, -{text:"c",url:"functions.html#index_c"}, -{text:"d",url:"functions.html#index_d"}, -{text:"f",url:"functions.html#index_f"}, -{text:"g",url:"functions.html#index_g"}, -{text:"h",url:"functions.html#index_h"}, -{text:"i",url:"functions.html#index_i"}, -{text:"k",url:"functions.html#index_k"}, -{text:"l",url:"functions.html#index_l"}, -{text:"m",url:"functions.html#index_m"}, -{text:"o",url:"functions.html#index_o"}, -{text:"p",url:"functions.html#index_p"}, -{text:"r",url:"functions.html#index_r"}, -{text:"s",url:"functions.html#index_s"}, -{text:"t",url:"functions.html#index_t"}, -{text:"v",url:"functions.html#index_v"}, -{text:"w",url:"functions.html#index_w"}, -{text:"~",url:"functions.html#index__7E"}]}, -{text:"Functions",url:"functions_func.html",children:[ -{text:"a",url:"functions_func.html#index_a"}, -{text:"c",url:"functions_func.html#index_c"}, -{text:"d",url:"functions_func.html#index_d"}, -{text:"f",url:"functions_func.html#index_f"}, -{text:"g",url:"functions_func.html#index_g"}, -{text:"h",url:"functions_func.html#index_h"}, -{text:"i",url:"functions_func.html#index_i"}, -{text:"k",url:"functions_func.html#index_k"}, -{text:"l",url:"functions_func.html#index_l"}, -{text:"o",url:"functions_func.html#index_o"}, -{text:"p",url:"functions_func.html#index_p"}, -{text:"r",url:"functions_func.html#index_r"}, -{text:"s",url:"functions_func.html#index_s"}, -{text:"t",url:"functions_func.html#index_t"}, -{text:"v",url:"functions_func.html#index_v"}, -{text:"w",url:"functions_func.html#index_w"}, -{text:"~",url:"functions_func.html#index__7E"}]}, -{text:"Variables",url:"functions_vars.html"}, -{text:"Related Functions",url:"functions_rela.html"}]}]}, -{text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}, -{text:"File Members",url:"globals.html",children:[ -{text:"All",url:"globals.html"}, -{text:"Macros",url:"globals_defs.html"}]}]}]} diff --git a/docs/namespaceHazelnp.html b/docs/namespaceHazelnp.html deleted file mode 100644 index e0a6af9..0000000 --- a/docs/namespaceHazelnp.html +++ /dev/null @@ -1,262 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp Namespace Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    -
    - -
    -
    Hazelnp Namespace Reference
    -
    -
    - - - - - - -

    -Namespaces

     Internal
     
     Placeholders
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Classes

    class  CmdArgsInterface
     The main class to interface with. More...
     
    class  FloatValue
     Specializations for floating point values (uses long double) More...
     
    class  HazelnuppConstraintException
     Gets thrown something bad happens because of parameter constraints. More...
     
    class  HazelnuppConstraintIncompatibleParameters
     Gets thrown when a parameter constrained to be incompatible with other parameters gets supplied alongside at least one of those incompatible ones. More...
     
    class  HazelnuppConstraintMissingValue
     Gets thrown when a parameter constrained to be required is not provided, and has no default value set. More...
     
    class  HazelnuppConstraintTypeMissmatch
     Gets thrown when a parameter is of a type that does not match the required type, and is not convertible to it. More...
     
    class  HazelnuppException
     Generic hazelnupp exception. More...
     
    class  HazelnuppInvalidKeyException
     Gets thrown when an non-existent key gets dereferenced. More...
     
    class  HazelnuppValueNotConvertibleException
     Gets thrown when an attempt is made to retrieve the wrong data type from a value, when the value not convertible. More...
     
    class  IntValue
     Specializations for integer values (uses long long int) More...
     
    class  ListValue
     Specializations for list values (uses std::vector<Value*>) More...
     
    struct  ParamConstraint
     
    class  Parameter
     
    class  StringValue
     Specializations for string values (uses std::string) More...
     
    class  Value
     Abstract class for values. More...
     
    class  VoidValue
     Specializations for void values. More...
     
    - - - - -

    -Enumerations

    enum  DATA_TYPE {
    -  DATA_TYPE::VOID, -DATA_TYPE::INT, -DATA_TYPE::FLOAT, -DATA_TYPE::STRING, -
    -  DATA_TYPE::LIST -
    - }
     The different data types a paramater can be. More...
     
    - - - -

    -Functions

    static std::string DataTypeToString (DATA_TYPE type)
     
    -

    Enumeration Type Documentation

    - -

    ◆ DATA_TYPE

    - -
    -
    - - - - - -
    - - - - -
    enum Hazelnp::DATA_TYPE
    -
    -strong
    -
    - -

    The different data types a paramater can be.

    - - - - - - -
    Enumerator
    VOID 
    INT 
    FLOAT 
    STRING 
    LIST 
    - -

    Definition at line 8 of file DataType.h.

    -
    9  {
    -
    10  VOID,
    -
    11  INT,
    -
    12  FLOAT,
    -
    13  STRING,
    -
    14  LIST
    -
    15  };
    -
    -
    -
    -

    Function Documentation

    - -

    ◆ DataTypeToString()

    - -
    -
    - - - - - -
    - - - - - - - - -
    static std::string Hazelnp::DataTypeToString (DATA_TYPE type)
    -
    -inlinestatic
    -
    - -

    Definition at line 17 of file DataType.h.

    -
    18  {
    -
    19  switch (type)
    -
    20  {
    -
    21  case DATA_TYPE::VOID:
    -
    22  return "VOID";
    -
    23 
    -
    24  case DATA_TYPE::INT:
    -
    25  return "INT";
    -
    26 
    -
    27  case DATA_TYPE::FLOAT:
    -
    28  return "FLOAT";
    -
    29 
    -
    30  case DATA_TYPE::STRING:
    -
    31  return "STRING";
    -
    32 
    -
    33  case DATA_TYPE::LIST:
    -
    34  return "LIST";
    -
    35  }
    -
    36 
    -
    37  return "";
    -
    38  }
    -
    -
    -
    -
    - - - - - - - - - diff --git a/docs/namespaceHazelnp_1_1Internal.html b/docs/namespaceHazelnp_1_1Internal.html deleted file mode 100644 index 4330a69..0000000 --- a/docs/namespaceHazelnp_1_1Internal.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Internal Namespace Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    Hazelnp::Internal Namespace Reference
    -
    -
    - - - - - -

    -Classes

    class  StringTools
     Internal helper class. More...
     
    -
    - - - - diff --git a/docs/namespaceHazelnp_1_1Placeholders.html b/docs/namespaceHazelnp_1_1Placeholders.html deleted file mode 100644 index bca147d..0000000 --- a/docs/namespaceHazelnp_1_1Placeholders.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::Placeholders Namespace Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    Hazelnp::Placeholders Namespace Reference
    -
    -
    - - - - - -

    -Variables

    static const std::string g_emptyString
     The only purpose of this is to provide the ability to return an empty string as an error for std::string& methods. More...
     
    -

    Variable Documentation

    - -

    ◆ g_emptyString

    - -
    -
    - - - - - -
    - - - - -
    const std::string Hazelnp::Placeholders::g_emptyString
    -
    -static
    -
    - -

    The only purpose of this is to provide the ability to return an empty string as an error for std::string& methods.

    - -

    Definition at line 9 of file Placeholders.h.

    - -
    -
    -
    - - - - diff --git a/docs/namespaceTestHazelnupp.html b/docs/namespaceTestHazelnupp.html deleted file mode 100644 index ac25f51..0000000 --- a/docs/namespaceTestHazelnupp.html +++ /dev/null @@ -1,1139 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: TestHazelnupp Namespace Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    -
    - -
    -
    TestHazelnupp Namespace Reference
    -
    -
    - - - - - - - - - - -

    -Functions

     TEST_CLASS (_Abbreviations)
     
     TEST_CLASS (_Basics)
     
     TEST_CLASS (_Constraints)
     
     TEST_CLASS (_Conversion)
     
    -

    Function Documentation

    - -

    ◆ TEST_CLASS() [1/4]

    - -
    -
    - - - - - - - - -
    TestHazelnupp::TEST_CLASS (_Abbreviations )
    -
    - -

    Definition at line 9 of file Abbreviations.cpp.

    -
    10  {
    -
    11  public:
    -
    12 
    -
    13  // Tests keys exist after parsing
    -
    14  TEST_METHOD(KeysExist)
    -
    15  {
    -
    16  // Setup
    -
    17  ArgList args({
    -
    18  "/my/fake/path/wahoo.out",
    -
    19  "-ms",
    -
    20  "billybob",
    -
    21  "-mv",
    -
    22  "-mf",
    -
    23  "-23.199",
    -
    24  "-mi",
    -
    25  "199",
    -
    26  "-mnl",
    -
    27  "1",
    -
    28  "2",
    -
    29  "3",
    -
    30  "4",
    -
    31  "-msl",
    -
    32  "apple",
    -
    33  "banana",
    -
    34  "pumpkin",
    -
    35  });
    -
    36 
    -
    37  // Exercise
    -
    38  Hazelnupp nupp;
    -
    39  nupp.SetCrashOnFail(false);
    -
    40 
    -
    41  nupp.RegisterAbbreviation("-ms", "--my_string");
    -
    42  nupp.RegisterAbbreviation("-mv", "--my_void");
    -
    43  nupp.RegisterAbbreviation("-mi", "--my_int");
    -
    44  nupp.RegisterAbbreviation("-mf", "--my_float");
    -
    45  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
    -
    46  nupp.RegisterAbbreviation("-msl", "--my_str_list");
    -
    47 
    -
    48  nupp.Parse(C_Ify(args));
    -
    49 
    -
    50  // Verify
    -
    51  Assert::IsTrue(nupp.HasParam("--my_string"));
    -
    52  Assert::IsTrue(nupp.HasParam("--my_void"));
    -
    53  Assert::IsTrue(nupp.HasParam("--my_float"));
    -
    54  Assert::IsTrue(nupp.HasParam("--my_int"));
    -
    55  Assert::IsTrue(nupp.HasParam("--my_num_list"));
    -
    56  Assert::IsTrue(nupp.HasParam("--my_str_list"));
    -
    57 
    -
    58  return;
    -
    59  }
    -
    60 
    -
    61  // Tests keys are of the correct type after parsing
    -
    62  TEST_METHOD(CorrectType)
    -
    63  {
    -
    64  // Setup
    -
    65  ArgList args({
    -
    66  "/my/fake/path/wahoo.out",
    -
    67  "-ms",
    -
    68  "billybob",
    -
    69  "-mv",
    -
    70  "-mf",
    -
    71  "-23.199",
    -
    72  "-mi",
    -
    73  "199",
    -
    74  "-mnl",
    -
    75  "1",
    -
    76  "2",
    -
    77  "3",
    -
    78  "4",
    -
    79  "-msl",
    -
    80  "apple",
    -
    81  "banana",
    -
    82  "pumpkin",
    -
    83  });
    -
    84 
    -
    85  // Exercise
    -
    86  Hazelnupp nupp;
    -
    87  nupp.SetCrashOnFail(false);
    -
    88 
    -
    89  nupp.RegisterAbbreviation("-ms", "--my_string");
    -
    90  nupp.RegisterAbbreviation("-mv", "--my_void");
    -
    91  nupp.RegisterAbbreviation("-mi", "--my_int");
    -
    92  nupp.RegisterAbbreviation("-mf", "--my_float");
    -
    93  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
    -
    94  nupp.RegisterAbbreviation("-msl", "--my_str_list");
    -
    95 
    -
    96  nupp.Parse(C_Ify(args));
    -
    97 
    -
    98  // Verify
    -
    99  Assert::IsTrue(nupp["--my_string"].GetDataType() == DATA_TYPE::STRING);
    -
    100  Assert::IsTrue(nupp["--my_void"].GetDataType() == DATA_TYPE::VOID);
    -
    101  Assert::IsTrue(nupp["--my_float"].GetDataType() == DATA_TYPE::FLOAT);
    -
    102  Assert::IsTrue(nupp["--my_int"].GetDataType() == DATA_TYPE::INT);
    -
    103  Assert::IsTrue(nupp["--my_num_list"].GetDataType() == DATA_TYPE::LIST);
    -
    104  Assert::IsTrue(nupp["--my_str_list"].GetDataType() == DATA_TYPE::LIST);
    -
    105 
    -
    106  return;
    -
    107  }
    -
    108 
    -
    109  // Tests keys have the correct value after parsing
    -
    110  TEST_METHOD(CorrectValues)
    -
    111  {
    -
    112  // Setup
    -
    113  ArgList args({
    -
    114  "/my/fake/path/wahoo.out",
    -
    115  "-ms",
    -
    116  "billybob",
    -
    117  "-mv",
    -
    118  "-mf",
    -
    119  "-23.199",
    -
    120  "-mi",
    -
    121  "199",
    -
    122  "-mnl",
    -
    123  "1",
    -
    124  "2",
    -
    125  "3",
    -
    126  "4",
    -
    127  "-msl",
    -
    128  "apple",
    -
    129  "banana",
    -
    130  "pumpkin",
    -
    131  });
    -
    132 
    -
    133  // Exercise
    -
    134  Hazelnupp nupp;
    -
    135  nupp.SetCrashOnFail(false);
    -
    136 
    -
    137  nupp.RegisterAbbreviation("-ms", "--my_string");
    -
    138  nupp.RegisterAbbreviation("-mv", "--my_void");
    -
    139  nupp.RegisterAbbreviation("-mi", "--my_int");
    -
    140  nupp.RegisterAbbreviation("-mf", "--my_float");
    -
    141  nupp.RegisterAbbreviation("-mnl", "--my_num_list");
    -
    142  nupp.RegisterAbbreviation("-msl", "--my_str_list");
    -
    143 
    -
    144  nupp.Parse(C_Ify(args));
    -
    145 
    -
    146  // Verify
    -
    147  Assert::AreEqual(nupp["--my_string"].GetString(), std::string("billybob"));
    -
    148  Assert::AreEqual(nupp["--my_float"].GetFloat32(), -23.199);
    -
    149  Assert::AreEqual(nupp["--my_int"].GetInt32(), 199);
    -
    150  Assert::AreEqual(nupp["--my_num_list"].GetList()[0]->GetInt32(), 1);
    -
    151  Assert::AreEqual(nupp["--my_num_list"].GetList()[1]->GetInt32(), 2);
    -
    152  Assert::AreEqual(nupp["--my_num_list"].GetList()[2]->GetInt32(), 3);
    -
    153  Assert::AreEqual(nupp["--my_num_list"].GetList()[3]->GetInt32(), 4);
    -
    154  Assert::AreEqual(nupp["--my_str_list"].GetList()[0]->GetString(), std::string("apple"));
    -
    155  Assert::AreEqual(nupp["--my_str_list"].GetList()[1]->GetString(), std::string("banana"));
    -
    156  Assert::AreEqual(nupp["--my_str_list"].GetList()[2]->GetString(), std::string("pumpkin"));
    -
    157 
    -
    158  return;
    -
    159  }
    -
    160  };
    -
    -
    -
    - -

    ◆ TEST_CLASS() [2/4]

    - -
    -
    - - - - - - - - -
    TestHazelnupp::TEST_CLASS (_Basics )
    -
    - -

    Definition at line 10 of file Basics.cpp.

    -
    11  {
    -
    12  public:
    -
    13 
    -
    14  // Tests the application path gets exported correctly
    -
    15  TEST_METHOD(ApplicationPathWorks)
    -
    16  {
    -
    17  // Setup
    -
    18  ArgList args({
    -
    19  "/my/fake/path/wahoo.out"
    -
    20  });
    -
    21 
    -
    22  // Exercise
    -
    23  Hazelnupp nupp(C_Ify(args));
    -
    24  nupp.SetCrashOnFail(false);
    -
    25 
    -
    26  // Verify
    -
    27  Assert::AreEqual(std::string("/my/fake/path/wahoo.out"), nupp.GetExecutableName());
    -
    28 
    -
    29  return;
    -
    30  }
    -
    31 
    -
    32  // Edgecase test: We only have one param.
    -
    33  TEST_METHOD(Only_One_Param)
    -
    34  {
    -
    35  // Setup
    -
    36  ArgList args({
    -
    37  "/my/fake/path/wahoo.out",
    -
    38  "--dummy"
    -
    39  });
    -
    40 
    -
    41  // Exercise
    -
    42  Hazelnupp nupp(C_Ify(args));
    -
    43  nupp.SetCrashOnFail(false);
    -
    44 
    -
    45  // Verify
    -
    46  Assert::IsTrue(nupp.HasParam("--dummy"));
    -
    47 
    -
    48  return;
    -
    49  }
    -
    50 
    -
    51  // Edgecase test: We begin with an actual value, instead of an argument.
    -
    52  TEST_METHOD(Weird_Case_1)
    -
    53  {
    -
    54  // Setup
    -
    55  ArgList args({
    -
    56  "/my/fake/path/wahoo.out",
    -
    57  "dummy"
    -
    58  });
    -
    59 
    -
    60  // Exercise
    -
    61  Hazelnupp nupp(C_Ify(args));
    -
    62  nupp.SetCrashOnFail(false);
    -
    63 
    -
    64  // Verify (no exception)
    -
    65 
    -
    66  return;
    -
    67  }
    -
    68 
    -
    69  // Edgecase test: We begin with first an actual value, and then an argument.
    -
    70  TEST_METHOD(Weird_Case_2)
    -
    71  {
    -
    72  // Setup
    -
    73  ArgList args({
    -
    74  "/my/fake/path/wahoo.out",
    -
    75  "dummy",
    -
    76  "--dummy"
    -
    77  });
    -
    78 
    -
    79  // Exercise
    -
    80  Hazelnupp nupp(C_Ify(args));
    -
    81  nupp.SetCrashOnFail(false);
    -
    82 
    -
    83  // Verify
    -
    84  Assert::IsTrue(nupp.HasParam("--dummy"), L"Failed has-param");
    -
    85  Assert::IsTrue(nupp["--dummy"].GetDataType() == DATA_TYPE::VOID, L"Failed type");
    -
    86 
    -
    87  return;
    -
    88  }
    -
    89 
    -
    90  // Tests keys exist after parsing
    -
    91  TEST_METHOD(KeysExist)
    -
    92  {
    -
    93  // Setup
    -
    94  ArgList args({
    -
    95  "/my/fake/path/wahoo.out",
    -
    96  "--my_string",
    -
    97  "billybob",
    -
    98  "--my_void",
    -
    99  "--my_float",
    -
    100  "-23.199",
    -
    101  "--my_int",
    -
    102  "199",
    -
    103  "--my_num_list",
    -
    104  "1",
    -
    105  "2",
    -
    106  "3",
    -
    107  "4",
    -
    108  "--my_str_list",
    -
    109  "apple",
    -
    110  "banana",
    -
    111  "pumpkin",
    -
    112  });
    -
    113 
    -
    114  // Exercise
    -
    115  Hazelnupp nupp(C_Ify(args));
    -
    116  nupp.SetCrashOnFail(false);
    -
    117 
    -
    118  // Verify
    -
    119  Assert::IsTrue(nupp.HasParam("--my_string"));
    -
    120  Assert::IsTrue(nupp.HasParam("--my_void"));
    -
    121  Assert::IsTrue(nupp.HasParam("--my_float"));
    -
    122  Assert::IsTrue(nupp.HasParam("--my_int"));
    -
    123  Assert::IsTrue(nupp.HasParam("--my_num_list"));
    -
    124  Assert::IsTrue(nupp.HasParam("--my_str_list"));
    -
    125 
    -
    126  return;
    -
    127  }
    -
    128 
    -
    129  // Tests keys are of the correct type after parsing
    -
    130  TEST_METHOD(CorrectType)
    -
    131  {
    -
    132  // Setup
    -
    133  ArgList args({
    -
    134  "/my/fake/path/wahoo.out",
    -
    135  "--my_string",
    -
    136  "billybob",
    -
    137  "--my_void",
    -
    138  "--my_float",
    -
    139  "-23.199",
    -
    140  "--my_int",
    -
    141  "199",
    -
    142  "--my_num_list",
    -
    143  "1",
    -
    144  "2",
    -
    145  "3",
    -
    146  "4",
    -
    147  "--my_str_list",
    -
    148  "apple",
    -
    149  "banana",
    -
    150  "pumpkin",
    -
    151  });
    -
    152 
    -
    153  // Exercise
    -
    154  Hazelnupp nupp(C_Ify(args));
    -
    155  nupp.SetCrashOnFail(false);
    -
    156 
    -
    157  // Verify
    -
    158  Assert::IsTrue(nupp["--my_string"].GetDataType() == DATA_TYPE::STRING);
    -
    159  Assert::IsTrue(nupp["--my_void"].GetDataType() == DATA_TYPE::VOID);
    -
    160  Assert::IsTrue(nupp["--my_float"].GetDataType() == DATA_TYPE::FLOAT);
    -
    161  Assert::IsTrue(nupp["--my_int"].GetDataType() == DATA_TYPE::INT);
    -
    162  Assert::IsTrue(nupp["--my_num_list"].GetDataType() == DATA_TYPE::LIST);
    -
    163  Assert::IsTrue(nupp["--my_str_list"].GetDataType() == DATA_TYPE::LIST);
    -
    164 
    -
    165  return;
    -
    166  }
    -
    167 
    -
    168  // Tests keys have the correct value after parsing
    -
    169  TEST_METHOD(CorrectValues)
    -
    170  {
    -
    171  // Setup
    -
    172  ArgList args({
    -
    173  "/my/fake/path/wahoo.out",
    -
    174  "--my_string",
    -
    175  "billybob",
    -
    176  "--my_void",
    -
    177  "--my_float",
    -
    178  "-23.199",
    -
    179  "--my_int",
    -
    180  "199",
    -
    181  "--my_num_list",
    -
    182  "1",
    -
    183  "2",
    -
    184  "3",
    -
    185  "4",
    -
    186  "--my_str_list",
    -
    187  "apple",
    -
    188  "banana",
    -
    189  "pumpkin",
    -
    190  });
    -
    191 
    -
    192  // Exercise
    -
    193  Hazelnupp nupp(C_Ify(args));
    -
    194  nupp.SetCrashOnFail(false);
    -
    195 
    -
    196  // Verify
    -
    197  Assert::AreEqual(nupp["--my_string"].GetString(), std::string("billybob"));
    -
    198  Assert::AreEqual(nupp["--my_float"].GetFloat32(), -23.199);
    -
    199  Assert::AreEqual(nupp["--my_int"].GetInt32(), 199);
    -
    200  Assert::AreEqual(nupp["--my_num_list"].GetList()[0]->GetInt32(), 1);
    -
    201  Assert::AreEqual(nupp["--my_num_list"].GetList()[1]->GetInt32(), 2);
    -
    202  Assert::AreEqual(nupp["--my_num_list"].GetList()[2]->GetInt32(), 3);
    -
    203  Assert::AreEqual(nupp["--my_num_list"].GetList()[3]->GetInt32(), 4);
    -
    204  Assert::AreEqual(nupp["--my_str_list"].GetList()[0]->GetString(), std::string("apple"));
    -
    205  Assert::AreEqual(nupp["--my_str_list"].GetList()[1]->GetString(), std::string("banana"));
    -
    206  Assert::AreEqual(nupp["--my_str_list"].GetList()[2]->GetString(), std::string("pumpkin"));
    -
    207 
    -
    208  return;
    -
    209  }
    -
    210 
    -
    211  // Tests that an HazelnuppInvalidKeyException gets raised, if an invalid gey is tried to access
    -
    212  TEST_METHOD(Exception_On_Invalid_Key)
    -
    213  {
    -
    214  // Setup
    -
    215  ArgList args({
    -
    216  "/my/fake/path/wahoo.out",
    -
    217  "--my_string",
    -
    218  "billybob",
    -
    219  "--my_void",
    -
    220  "--my_float",
    -
    221  "-23.199",
    -
    222  "--my_int",
    -
    223  "199",
    -
    224  "--my_num_list",
    -
    225  "1",
    -
    226  "2",
    -
    227  "3",
    -
    228  "4",
    -
    229  "--my_str_list",
    -
    230  "apple",
    -
    231  "banana",
    -
    232  "pumpkin",
    -
    233  });
    -
    234 
    -
    235  Hazelnupp nupp(C_Ify(args));
    -
    236  nupp.SetCrashOnFail(false);
    -
    237 
    -
    238  // Exercise, Verify
    -
    239  Assert::ExpectException<HazelnuppInvalidKeyException>(
    -
    240  [args]
    -
    241  {
    -
    242  Hazelnupp nupp(C_Ify(args));
    -
    243  nupp["--borrnana"];
    -
    244  }
    -
    245  );
    -
    246 
    -
    247  return;
    -
    248  }
    -
    249  };
    -
    -
    -
    - -

    ◆ TEST_CLASS() [3/4]

    - -
    -
    - - - - - - - - -
    TestHazelnupp::TEST_CLASS (_Constraints )
    -
    - -

    Definition at line 10 of file Constraints.cpp.

    -
    11  {
    -
    12  public:
    -
    13 
    -
    14  // Tests that default values get added
    -
    15  TEST_METHOD(DefaultValues_GetAdded)
    -
    16  {
    -
    17  // Setup
    -
    18  ArgList args({
    -
    19  "/my/fake/path/wahoo.out",
    -
    20  "--dummy",
    -
    21  "123"
    -
    22  });
    -
    23 
    -
    24  // Exercise
    -
    25  Hazelnupp nupp;
    -
    26  nupp.SetCrashOnFail(false);
    -
    27 
    -
    28  nupp.RegisterConstraints({
    -
    29  ParamConstraint::Require("--elenor-int", {"5994"}),
    -
    30  ParamConstraint::Require("--federich-float", {"420.69"}),
    -
    31  ParamConstraint::Require("--siegbert-string", {"banana"}),
    -
    32  ParamConstraint::Require("--lieber-liste", {"banana", "apple", "59"})
    -
    33  });
    -
    34 
    -
    35  nupp.Parse(C_Ify(args));
    -
    36 
    -
    37  // Verify
    -
    38  Assert::IsTrue(nupp.HasParam("--elenor-int"));
    -
    39  Assert::IsTrue(nupp["--elenor-int"].GetDataType() == DATA_TYPE::INT);
    -
    40  Assert::AreEqual(nupp["--elenor-int"].GetInt32(), 5994);
    -
    41 
    -
    42  Assert::IsTrue(nupp.HasParam("--federich-float"));
    -
    43  Assert::IsTrue(nupp["--federich-float"].GetDataType() == DATA_TYPE::FLOAT);
    -
    44  Assert::AreEqual(nupp["--federich-float"].GetFloat32(), 420.69);
    -
    45 
    -
    46  Assert::IsTrue(nupp.HasParam("--siegbert-string"));
    -
    47  Assert::IsTrue(nupp["--siegbert-string"].GetDataType() == DATA_TYPE::STRING);
    -
    48  Assert::AreEqual(nupp["--siegbert-string"].GetString(), std::string("banana"));
    -
    49 
    -
    50  Assert::IsTrue(nupp.HasParam("--lieber-liste"));
    -
    51  Assert::IsTrue(nupp["--lieber-liste"].GetDataType() == DATA_TYPE::LIST);
    -
    52  Assert::AreEqual(nupp["--lieber-liste"].GetList()[0]->GetString(), std::string("banana"));
    -
    53  Assert::AreEqual(nupp["--lieber-liste"].GetList()[1]->GetString(), std::string("apple"));
    -
    54  Assert::AreEqual(nupp["--lieber-liste"].GetList()[2]->GetInt32(), 59);
    -
    55 
    -
    56  return;
    -
    57  }
    -
    58 
    -
    59  // Tests that the default values do not override actually set values
    -
    60  TEST_METHOD(DefaultValues_DefaultDoesntOverride)
    -
    61  {
    -
    62  // Setup
    -
    63  ArgList args({
    -
    64  "/my/fake/path/wahoo.out",
    -
    65  "--dummy",
    -
    66  "--elenor-int",
    -
    67  "5994",
    -
    68  "--federich-float",
    -
    69  "420.69",
    -
    70  "--siegbert-string",
    -
    71  "banana",
    -
    72  "--lieber-liste",
    -
    73  "banana",
    -
    74  "apple",
    -
    75  "59"
    -
    76  });
    -
    77 
    -
    78  // Exercise
    -
    79  Hazelnupp nupp;
    -
    80  nupp.SetCrashOnFail(false);
    -
    81 
    -
    82  nupp.RegisterConstraints({
    -
    83  ParamConstraint::Require("--elenor-int", {"6871"}),
    -
    84  ParamConstraint::Require("--federich-float", {"-199.44"}),
    -
    85  ParamConstraint::Require("--siegbert-string", {"bornana"}),
    -
    86  ParamConstraint::Require("--lieber-liste", {"bornana", "ollpe", "5"})
    -
    87  });
    -
    88 
    -
    89  nupp.Parse(C_Ify(args));
    -
    90 
    -
    91  // Verify
    -
    92  Assert::IsTrue(nupp.HasParam("--elenor-int"));
    -
    93  Assert::IsTrue(nupp["--elenor-int"].GetDataType() == DATA_TYPE::INT);
    -
    94  Assert::AreEqual(nupp["--elenor-int"].GetInt32(), 5994);
    -
    95 
    -
    96  Assert::IsTrue(nupp.HasParam("--federich-float"));
    -
    97  Assert::IsTrue(nupp["--federich-float"].GetDataType() == DATA_TYPE::FLOAT);
    -
    98  Assert::AreEqual(nupp["--federich-float"].GetFloat32(), 420.69);
    -
    99 
    -
    100  Assert::IsTrue(nupp.HasParam("--siegbert-string"));
    -
    101  Assert::IsTrue(nupp["--siegbert-string"].GetDataType() == DATA_TYPE::STRING);
    -
    102  Assert::AreEqual(nupp["--siegbert-string"].GetString(), std::string("banana"));
    -
    103 
    -
    104  Assert::IsTrue(nupp.HasParam("--lieber-liste"));
    -
    105  Assert::IsTrue(nupp["--lieber-liste"].GetDataType() == DATA_TYPE::LIST);
    -
    106  Assert::AreEqual(nupp["--lieber-liste"].GetList()[0]->GetString(), std::string("banana"));
    -
    107  Assert::AreEqual(nupp["--lieber-liste"].GetList()[1]->GetString(), std::string("apple"));
    -
    108  Assert::AreEqual(nupp["--lieber-liste"].GetList()[2]->GetInt32(), 59);
    -
    109 
    -
    110  return;
    -
    111  }
    -
    112 
    -
    113  // Tests that data types get forced according to the constraints
    -
    114  TEST_METHOD(ForceTypes)
    -
    115  {
    -
    116  // Setup
    -
    117  ArgList args({
    -
    118  "/my/fake/path/wahoo.out",
    -
    119  "--dummy",
    -
    120  "--num-apples",
    -
    121  "39.75",
    -
    122  "--table-height",
    -
    123  "400",
    -
    124  "--license-plate",
    -
    125  "193273",
    -
    126  "--fav-fruits",
    -
    127  "apple",
    -
    128  "--indices",
    -
    129  "9",
    -
    130  "--force",
    -
    131  "plsdontuseme"
    -
    132  });
    -
    133 
    -
    134  // Exercise
    -
    135  Hazelnupp nupp;
    -
    136  nupp.SetCrashOnFail(false);
    -
    137 
    -
    138  nupp.RegisterConstraints({
    - - - - - - -
    145  });
    -
    146 
    -
    147  nupp.Parse(C_Ify(args));
    -
    148 
    -
    149  // Verify
    -
    150  Assert::IsTrue(nupp.HasParam("--num-apples"));
    -
    151  Assert::IsTrue(nupp["--num-apples"].GetDataType() == DATA_TYPE::INT);
    -
    152  Assert::AreEqual(nupp["--num-apples"].GetInt32(), 39);
    -
    153 
    -
    154  Assert::IsTrue(nupp.HasParam("--table-height"));
    -
    155  Assert::IsTrue(nupp["--table-height"].GetDataType() == DATA_TYPE::FLOAT);
    -
    156  Assert::AreEqual(nupp["--table-height"].GetFloat32(), 400.0);
    -
    157 
    -
    158  Assert::IsTrue(nupp.HasParam("--license-plate"));
    -
    159  Assert::IsTrue(nupp["--license-plate"].GetDataType() == DATA_TYPE::STRING);
    -
    160  Assert::AreEqual(nupp["--license-plate"].GetString(), std::string("193273"));
    -
    161 
    -
    162  Assert::IsTrue(nupp.HasParam("--fav-fruits"));
    -
    163  Assert::IsTrue(nupp["--fav-fruits"].GetDataType() == DATA_TYPE::LIST);
    -
    164  Assert::AreEqual(nupp["--fav-fruits"].GetList()[0]->GetString(), std::string("apple"));
    -
    165 
    -
    166  Assert::IsTrue(nupp.HasParam("--indices"));
    -
    167  Assert::IsTrue(nupp["--indices"].GetDataType() == DATA_TYPE::LIST);
    -
    168  Assert::AreEqual(nupp["--indices"].GetList()[0]->GetInt32(), 9);
    -
    169 
    -
    170  Assert::IsTrue(nupp.HasParam("--force"));
    -
    171  Assert::IsTrue(nupp["--force"].GetDataType() == DATA_TYPE::VOID);
    -
    172 
    -
    173  return;
    -
    174  }
    -
    175 
    -
    176  // Tests that an HazelnuppConstraintMissingValue gets raised if a required parameter
    -
    177  // is missing and does not have a default parameter
    -
    178  TEST_METHOD(Exception_MissingImportant_Parameter_WithoutDefault)
    -
    179  {
    -
    180  // Setup
    -
    181  ArgList args({
    -
    182  "/my/fake/path/wahoo.out",
    -
    183  "--dummy",
    -
    184  "--federich-float",
    -
    185  "420.69",
    -
    186  "--siegbert-string",
    -
    187  "banana",
    -
    188  "--lieber-liste",
    -
    189  "banana",
    -
    190  "apple",
    -
    191  "59"
    -
    192  });
    -
    193 
    -
    194  Assert::ExpectException<HazelnuppConstraintMissingValue>(
    -
    195  [args]
    -
    196  {
    -
    197  Hazelnupp nupp;
    -
    198  nupp.SetCrashOnFail(false);
    -
    199 
    -
    200  nupp.RegisterConstraints({
    -
    201  ParamConstraint::Require("--elenor-int"),
    -
    202  });
    -
    203 
    -
    204  nupp.Parse(C_Ify(args));
    -
    205  }
    -
    206  );
    -
    207 
    -
    208  return;
    -
    209  }
    -
    210 
    -
    211  // Tests that an HazelnuppConstraintTypeMissmatch gets raised if a required parameter
    -
    212  // is missing of the wrong type and cannot be converted
    -
    213  TEST_METHOD(Exception_TypeMismatch_Parameter_NotConvertable)
    -
    214  {
    -
    215  // Setup
    -
    216  ArgList args({
    -
    217  "/my/fake/path/wahoo.out",
    -
    218  "--dummy",
    -
    219  "--elenor-int",
    -
    220  "hello"
    -
    221  "--federich-float",
    -
    222  "420.69",
    -
    223  "--siegbert-string",
    -
    224  "banana",
    -
    225  "--lieber-liste",
    -
    226  "banana",
    -
    227  "apple",
    -
    228  "59"
    -
    229  });
    -
    230 
    -
    231  Assert::ExpectException<HazelnuppConstraintTypeMissmatch>(
    -
    232  [args]
    -
    233  {
    -
    234  Hazelnupp nupp;
    -
    235  nupp.SetCrashOnFail(false);
    -
    236 
    -
    237  nupp.RegisterConstraints({
    - -
    239  });
    -
    240 
    -
    241  nupp.Parse(C_Ify(args));
    -
    242  }
    -
    243  );
    -
    244 
    -
    245  return;
    -
    246  }
    -
    247 
    -
    248  // Tests that everything can be converted to void
    -
    249  TEST_METHOD(Weird_Load_Conversions_ToVoid)
    -
    250  {
    -
    251  // Setup
    -
    252  ArgList args({
    -
    253  "/my/fake/path/wahoo.out",
    -
    254  "--dummy",
    -
    255  "--void1",
    -
    256  "--void2",
    -
    257  "12",
    -
    258  "--void3",
    -
    259  "9.5",
    -
    260  "--void4",
    -
    261  "hello",
    -
    262  "--void5",
    -
    263  "foo",
    -
    264  "baz"
    -
    265  });
    -
    266 
    -
    267  Hazelnupp nupp;
    -
    268  nupp.SetCrashOnFail(false);
    -
    269 
    -
    270  nupp.RegisterConstraints({
    - - - - - -
    276  });
    -
    277 
    -
    278 
    -
    279  // Exercise
    -
    280  nupp.Parse(C_Ify(args));
    -
    281 
    -
    282  // Verify
    -
    283  Assert::IsTrue(nupp["--void1"].GetDataType() == DATA_TYPE::VOID);
    -
    284  Assert::IsTrue(nupp["--void2"].GetDataType() == DATA_TYPE::VOID);
    -
    285  Assert::IsTrue(nupp["--void3"].GetDataType() == DATA_TYPE::VOID);
    -
    286  Assert::IsTrue(nupp["--void4"].GetDataType() == DATA_TYPE::VOID);
    -
    287  Assert::IsTrue(nupp["--void5"].GetDataType() == DATA_TYPE::VOID);
    -
    288 
    -
    289  return;
    -
    290  }
    -
    291 
    -
    292  // Tests that everything a void can be converted to an empty list
    -
    293  TEST_METHOD(Weird_Load_Conversions_VoidToEmptyList)
    -
    294  {
    -
    295  // Setup
    -
    296  ArgList args({
    -
    297  "/my/fake/path/wahoo.out",
    -
    298  "--dummy",
    -
    299  "--empty-list",
    -
    300  });
    -
    301 
    -
    302  Hazelnupp nupp;
    -
    303  nupp.SetCrashOnFail(false);
    -
    304 
    -
    305  nupp.RegisterConstraints({
    - -
    307  });
    -
    308 
    -
    309 
    -
    310  // Exercise
    -
    311  nupp.Parse(C_Ify(args));
    -
    312 
    -
    313  // Verify
    -
    314  Assert::IsTrue(nupp["--empty-list"].GetDataType() == DATA_TYPE::LIST);
    -
    315  Assert::AreEqual(std::size_t(0), nupp["--empty-list"].GetList().size());
    -
    316 
    -
    317  return;
    -
    318  }
    -
    319  };
    -
    -
    -
    - -

    ◆ TEST_CLASS() [4/4]

    - -
    -
    - - - - - - - - -
    TestHazelnupp::TEST_CLASS (_Conversion )
    -
    - -

    Definition at line 10 of file Conversion.cpp.

    -
    11  {
    -
    12  public:
    -
    13 
    -
    14  // Tests that string conversion methods work
    -
    15  TEST_METHOD(Convert_String)
    -
    16  {
    -
    17  // Setup
    -
    18  ArgList args({
    -
    19  "/my/fake/path/wahoo.out",
    -
    20  "--pud",
    -
    21  "hello"
    -
    22  });
    -
    23 
    -
    24  // Exercise
    -
    25  Hazelnupp nupp(C_Ify(args));
    -
    26  nupp.SetCrashOnFail(false);
    -
    27 
    -
    28  // Verify
    -
    29  const Hazelnupp* ptnupp = &nupp;
    -
    30 
    -
    31  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    32  [ptnupp]
    -
    33  {
    -
    34  (*ptnupp)["--pud"].GetInt64();
    -
    35  }
    -
    36  , L"Int64");
    -
    37 
    -
    38  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    39  [ptnupp]
    -
    40  {
    -
    41  (*ptnupp)["--pud"].GetInt32();
    -
    42  }
    -
    43  , L"Int32");
    -
    44 
    -
    45  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    46  [ptnupp]
    -
    47  {
    -
    48  (*ptnupp)["--pud"].GetFloat64();
    -
    49  }
    -
    50  , L"Float64");
    -
    51 
    -
    52  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    53  [ptnupp]
    -
    54  {
    -
    55  (*ptnupp)["--pud"].GetFloat32();
    -
    56  }
    -
    57  , L"Float32");
    -
    58 
    -
    59  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    60  [ptnupp]
    -
    61  {
    -
    62  (*ptnupp)["--pud"].GetList();
    -
    63  }
    -
    64  , L"List");
    -
    65 
    -
    66 
    -
    67  return;
    -
    68  }
    -
    69 
    -
    70  // Tests that void conversion methods work
    -
    71  TEST_METHOD(Convert_Void)
    -
    72  {
    -
    73  // Setup
    -
    74  ArgList args({
    -
    75  "/my/fake/path/wahoo.out",
    -
    76  "--pud"
    -
    77  });
    -
    78 
    -
    79  // Exercise
    -
    80  Hazelnupp nupp(C_Ify(args));
    -
    81  nupp.SetCrashOnFail(false);
    -
    82 
    -
    83  // Verify
    -
    84  const Hazelnupp* ptnupp = &nupp;
    -
    85 
    -
    86  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    87  [ptnupp]
    -
    88  {
    -
    89  (*ptnupp)["--pud"].GetInt64();
    -
    90  }
    -
    91  , L"Int64");
    -
    92 
    -
    93  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    94  [ptnupp]
    -
    95  {
    -
    96  (*ptnupp)["--pud"].GetInt32();
    -
    97  }
    -
    98  , L"Int32");
    -
    99 
    -
    100  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    101  [ptnupp]
    -
    102  {
    -
    103  (*ptnupp)["--pud"].GetFloat64();
    -
    104  }
    -
    105  , L"Float64");
    -
    106 
    -
    107  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    108  [ptnupp]
    -
    109  {
    -
    110  (*ptnupp)["--pud"].GetFloat32();
    -
    111  }
    -
    112  , L"Float32");
    -
    113 
    -
    114  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    115  [ptnupp]
    -
    116  {
    -
    117  (*ptnupp)["--pud"].GetString();
    -
    118  }
    -
    119  , L"String");
    -
    120 
    -
    121  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    122  [ptnupp]
    -
    123  {
    -
    124  (*ptnupp)["--pud"].GetList();
    -
    125  }
    -
    126  , L"List");
    -
    127 
    -
    128 
    -
    129  return;
    -
    130  }
    -
    131 
    -
    132  // Tests that int conversion methods work
    -
    133  TEST_METHOD(Convert_Int)
    -
    134  {
    -
    135  // Setup
    -
    136  ArgList args({
    -
    137  "/my/fake/path/wahoo.out",
    -
    138  "--pud",
    -
    139  "39"
    -
    140  });
    -
    141 
    -
    142  // Exercise
    -
    143  Hazelnupp nupp(C_Ify(args));
    -
    144  nupp.SetCrashOnFail(false);
    -
    145 
    -
    146  // Verify
    -
    147  const Hazelnupp* ptnupp = &nupp;
    -
    148 
    -
    149  Assert::AreEqual(39ll, nupp["--pud"].GetInt64(), L"Int64");
    -
    150  Assert::AreEqual(39, nupp["--pud"].GetInt32(), L"Int32");
    -
    151  Assert::IsTrue(39.0l == nupp["--pud"].GetFloat64(), L"Float64");
    -
    152  Assert::AreEqual(39.0, nupp["--pud"].GetFloat32(), L"Float32");
    -
    153  Assert::AreEqual(std::string("39"), nupp["--pud"].GetString(), L"String");
    -
    154 
    -
    155  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    156  [ptnupp]
    -
    157  {
    -
    158  (*ptnupp)["--pud"].GetList();
    -
    159  }
    -
    160  , L"List");
    -
    161 
    -
    162 
    -
    163  return;
    -
    164  }
    -
    165 
    -
    166  // Tests that float conversion methods work
    -
    167  TEST_METHOD(Convert_Float)
    -
    168  {
    -
    169  // Setup
    -
    170  ArgList args({
    -
    171  "/my/fake/path/wahoo.out",
    -
    172  "--pud",
    -
    173  "39.5"
    -
    174  });
    -
    175 
    -
    176  // Exercise
    -
    177  Hazelnupp nupp(C_Ify(args));
    -
    178  nupp.SetCrashOnFail(false);
    -
    179 
    -
    180  // Verify
    -
    181  const Hazelnupp* ptnupp = &nupp;
    -
    182 
    -
    183  Assert::AreEqual(39ll, nupp["--pud"].GetInt64(), L"Int64");
    -
    184  Assert::AreEqual(39, nupp["--pud"].GetInt32(), L"Int32");
    -
    185  Assert::IsTrue(39.5l == nupp["--pud"].GetFloat64(), L"Float64");
    -
    186  Assert::AreEqual(39.5, nupp["--pud"].GetFloat32(), L"Float32");
    -
    187  Assert::AreEqual(std::string("39.5"), nupp["--pud"].GetString(), L"String");
    -
    188 
    -
    189  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    190  [ptnupp]
    -
    191  {
    -
    192  (*ptnupp)["--pud"].GetList();
    -
    193  }
    -
    194  , L"List");
    -
    195 
    -
    196 
    -
    197  return;
    -
    198  }
    -
    199 
    -
    200  // Tests that list conversion methods work
    -
    201  TEST_METHOD(Convert_List)
    -
    202  {
    -
    203  // Setup
    -
    204  ArgList args({
    -
    205  "/my/fake/path/wahoo.out",
    -
    206  "--pud",
    -
    207  "apple",
    -
    208  "1",
    -
    209  "2",
    -
    210  "3"
    -
    211  });
    -
    212 
    -
    213  // Exercise
    -
    214  Hazelnupp nupp(C_Ify(args));
    -
    215  nupp.SetCrashOnFail(false);
    -
    216 
    -
    217  // Verify
    -
    218  const Hazelnupp* ptnupp = &nupp;
    -
    219 
    -
    220  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    221  [ptnupp]
    -
    222  {
    -
    223  (*ptnupp)["--pud"].GetInt64();
    -
    224  }
    -
    225  , L"Int64");
    -
    226 
    -
    227  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    228  [ptnupp]
    -
    229  {
    -
    230  (*ptnupp)["--pud"].GetInt32();
    -
    231  }
    -
    232  , L"Int32");
    -
    233 
    -
    234  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    235  [ptnupp]
    -
    236  {
    -
    237  (*ptnupp)["--pud"].GetFloat64();
    -
    238  }
    -
    239  , L"Float64");
    -
    240 
    -
    241  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    242  [ptnupp]
    -
    243  {
    -
    244  (*ptnupp)["--pud"].GetFloat32();
    -
    245  }
    -
    246  , L"Float32");
    -
    247 
    -
    248  Assert::ExpectException<HazelnuppValueNotConvertibleException>(
    -
    249  [ptnupp]
    -
    250  {
    -
    251  (*ptnupp)["--pud"].GetString();
    -
    252  }
    -
    253  , L"String");
    -
    254 
    -
    255  return;
    -
    256  }
    -
    257  };
    -
    -
    -
    -
    - -
    void RegisterConstraints(const std::vector< ParamConstraint > &constraints)
    Will register parameter constraints.
    Definition: Hazelnupp.cpp:352
    - - -
    static ParamConstraint TypeSafety(const std::string &key, DATA_TYPE wantedType, bool constrainType=true)
    Constructs a type-safety constraint.
    - -
    static ParamConstraint Require(const std::string &key, const std::vector< std::string > &defaultValue={}, bool required=true)
    Constructs a require constraint.
    -
    #define C_Ify(vector)
    Definition: helper.h:4
    -
    void SetCrashOnFail(bool crashOnFail)
    Sets whether to crash the application, and print to stderr, when an exception is raised whilst parsin...
    Definition: Hazelnupp.cpp:379
    -
    std::vector< const char * > ArgList
    Definition: helper.h:6
    - -
    The main class to interface with.
    Definition: Hazelnupp.h:9
    -
    void Parse(const int argc, const char *const *argv)
    Will parse command line arguments.
    Definition: Hazelnupp.cpp:33
    - - - - diff --git a/docs/namespacemembers.html b/docs/namespacemembers.html deleted file mode 100644 index 64c8abb..0000000 --- a/docs/namespacemembers.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Namespace Members - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    Here is a list of all namespace members with links to the namespace documentation for each member:
    -
    - - - - diff --git a/docs/namespacemembers_enum.html b/docs/namespacemembers_enum.html deleted file mode 100644 index e85a2ba..0000000 --- a/docs/namespacemembers_enum.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Namespace Members - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    - - - - diff --git a/docs/namespacemembers_func.html b/docs/namespacemembers_func.html deleted file mode 100644 index 6312e01..0000000 --- a/docs/namespacemembers_func.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Namespace Members - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
      -
    • DataTypeToString() -: Hazelnp -
    • -
    -
    - - - - diff --git a/docs/namespacemembers_vars.html b/docs/namespacemembers_vars.html deleted file mode 100644 index 1c9d4a8..0000000 --- a/docs/namespacemembers_vars.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Namespace Members - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    - - - - diff --git a/docs/namespaces.html b/docs/namespaces.html deleted file mode 100644 index 77b6fc8..0000000 --- a/docs/namespaces.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Namespace List - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    Namespace List
    -
    -
    -
    Here is a list of all namespaces with brief descriptions:
    -
    [detail level 12]
    - - - -
     NHazelnp
     NInternal
     NPlaceholders
    -
    -
    - - - - diff --git a/docs/nav_f.png b/docs/nav_f.png deleted file mode 100644 index 700ee6e5e3d6a924d122e2a615ed26c14fd6365b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQlXwMjv*C{Z|??jH5l+PU)W;1 zc|+-3@p6OUzXECh8rl%m11B qVXu}k)VZd-bz#)0+_nDqcRuyp8tHg9raS?l1q`09elF{r5}E+c{xJ{$ diff --git a/docs/nav_g.png b/docs/nav_g.png deleted file mode 100644 index 2093a237a94f6c83e19ec6e5fd42f7ddabdafa81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KG5>+b6Mw<&;$T;Ssg|I diff --git a/docs/nupp_small.png b/docs/nupp_small.png deleted file mode 100644 index 68785e083ffb6dd4ccb46e45232c45ba33d16c36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32245 zcmV*vKtR8VP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=00004XF*Lt006O$eEU(80000WV@Og>004R=004l4008;_004mL004C` z008P>0026e000+nl3&F}0046kNklZ)q$zf+U=NzS7g|Y-4Pkxvz1+_QeTbn_#%U7z`o_gaV2v?kcP{@6P7gG&?zUPsge{=l!Fq z(`-;c5)$mur_|HE9jZ>9-+9vSc^;v)=8ZPq^1co(jaPLDK>w^y!VkXDk9lb=TpH7W zalvu-9RqE^?*f0fc}x2kAOZE$JR$PZnz%HkNez7w>2WLYiJP~`1^(KJz7VJ`0p!y7 zSyHKf8K5a;l)(}CX;S2>i96pJUU{_hfp0ngYtxMpq6q;Iew{lK;)WqwuYFT0UMPtFcW~#( zKU$Xf&|BW$z!f*f#g<=fAsCWm(k`Wv#xx98Z;WDE=IX{)YxTNog3O#3wy(S?wP|9^ zzU}Ti28>H8)}>K5zVKkrtS>y$69)LVe|0~%bXBB%-PK{FA?WBfE`J??Vg2Lx4$Q03 z9!%2|t71u`^A~=rjsN*a?TJ`pc*}|_jc_=wnVhi6Wfiuq$>kih0)ZeJGkDLhG_rWD zMKmr*rc7gWsPs!cyE9(`-gXHfuZ`g-Ugq&?0>SvggFT=6!h=26mtXtZ)`N?JA-P8= z?)~zQ4t}w-A^4Wtx1`*$(GoM~h6sk`#@7Wn?i`R9{AW7Du4f(}{P$Gz1wsg1SEH2TY+s)4SrO(g3Q5Nn z3zx2mie!WJZoC-DPlb2Oe4T;fV&0XP^Ifl~E^L}&aX4c9spII69mx0GvNXKpsbYzL z+IU?up|!qlY{a?l9Up8Y5|c(I$=G+lO2f@>O~kfuoA{r1e#QQJWO;{*LV+CMvAdhlk#>@comxjZ;@6Ua~w&k)Jv#t4OdJBb}pv1+;bqumZ9*o3Upe*p>c7ASnMxqlI16JAu0|saUTLI9^Dd zdNHciOH#p%Ft-DHzPk1BxAn4PmjU#(4uzD~zcp)Kh|8{t^QQMSrMl)vuU@{fV!=TvjaJ@HVi=Oyb7Gu6oyB!ELbw!5E`cBviw?cVGt8YEBc8A@ zEs2!g=VA%T>;*y2oGfl>?+X9n&;4#f#2YkHiY`1_$|VW%3IIdA%#Cr6&v4QsDREL^lQOsS+;u|C55WfpsOkCD&0L}C)H1p?2Y zO(ZNFM=*DBkgnMlM~+U=FcD-p>NMSb_|QL}J*h^2?dBza@mkHjVTjI1)bJOy$)+pX zc=E|Xo_u16%PwoivMj(v2!TS=*%_wqY?ea@Ct0~NNvY%ziAatf%h1#uptCy++5iMv zfzqHgELjyn3c~Z21{fHbq@^vys`a6F0*?TPFG-M>zUVJxWdAsZ`HPVl=l%CH(bLk+ zhTgMeRfOdm0<68-G*_%oTzBic8dtsfy^VyU{*I|36f!X_Nj7IAB}k!hm8MX1NF*(! z)JQ2fbt(hEn#wtX|WIZ7X)|9;Z+!F))xv2w1W-ffXn^%xY>i>F9{k z)Nax`OL6(N5kg^a5qOJ25()_#8!d)M@)(9j7#h3e;Kd8p!-#H>0bMzy9T~6WA^x(1HD7P8?cP`-2UFCylrc|BvOeqBpWxi zqFmUwcO0!9z{M~HmL*9f16+Ac3(1s4X39aMSg|rmIAReD8dw2=RR)L!fqfDV)ftoyz_@Jqlh;5UBO0U}$(_*qEK=O1q88}!T4l>!$&4q zvNS<58Njp*y5cQSKcFjOjf0MS|_kQj!+<(t|V9V>F|Xd1&%2%&s~ToQ>|tXd;=N>Fk&LP9cSVVa)g@oE`JP@1u^ z0{ixkF*aIc-uwhJXU5T50+QMDgETZ5U6EM$Q@6Z5g$U>LH$R^ht*xP}fPV$DKT804 zu~OrF|Mug?Li7bbb0MGzKo@N1Pez8suN+x@{GSHT7`H^C=9(*SPS`?V2?L}dXlx9z ze0c-=4~)^&Y>`R{EYm^=FL1VMbpww*+D|fJkjWIWOoKgpCYiq=&g{9dI&dfjh9#J@ zFvx)!p*JmF8KHX-JoR7}$5!qucrOM5rb#%CK6z?V#1j%}SV$>770aImX#iT#(iUd@ zWle0~K1@1YV&&>atbjL5p4inDb;>Zjsm!Dc^cYMFvQD{Ci*-Q8ITFG-@6=jkbfLn)2cngvTE{L05Ha>XJ?k4_-8WYs1!@Cx3KG+J=k`Zn>z zQv+x<&dQaIILg3~Ms*?t2q_RqX3dV1Oj$g?eV7M+c!nj*lFXSCL*q%1P)K4JFf~=+ zV9yx6y;G!80XALHN=s`5tvm;SkQ(KJkQKuDlm&7qzQ$`!2I5aq$|rCV*g(A?1# zI`y*vke31u@gg5D_PzQ7&qWP5^os#hFf0p^xM0~ji@9^+NK;7H(HJHe5)8xJHKn0h zy{3sr9_i!g(KO3fG=NYTh6Ew$o)sq?F?itqJ{B*Ev0_CEA+<0>r$Bs_Wb6|p_MZ2uHHc8oGMRw9`QaQVg-W^~1n(!g~ENRa+D zDsNg40+g#6nJ97kbe1Jc5+qYWnp&;M(F3`6c65by{45&j7XrkEf_!q?zsZ`{kSh8-s+Sgm zR3vIJe{Pb!d&h`IO&Xg*zI`E){_bj+-cCECE5gdv4Ltee5SMLmnKM60SshEKON7Io z_scL1gaCxMSX@UjGMwY^;YkMj^R#z_*|4FBa3nx5Y!C_?gu}+0{@)WlUFKGCQ**ny zQY%4v!g;B-SP-z24OU4S!Y<^L6%1Jv%M5^!NFn|6 z^>%&Ng-|HK@)gabQbC@3c9H^YCP0o}*NQ))+uUDIL|mv=iV;Dbl7PCPJ1uw0K79%12OF9_{NRp`lot+Vm9LcaOC}{`;!8gLC6i9)uk{B#o-b65H@btDJM#oF6 zT$v(lSWIO~B$A$|$Fw8@L9u8va5l@~Lz4^*6=-Pr_wB6-oUImam=7qx!%g|q5QyS-XkrVro>g=zY77nW(z8R%8&x36emth^8EG@ z0;b8PD_dzug|Kab^4Y-2M#H-9_7o?NHVd&XJ5B1vaw*xw}$U!r&`LuWeEbw#jkhvDH8eP^aTK9d98Gb5~6)k$Mx2qC0*Qrfde zTvxMZW1J-`Bg7JdzB5ytJX=Bv5&Grd3Up?-(*Gg?gA(Z8a9w<1TU)d+HBnk?m?9Yr z3ZWGh>422X=t|Ju9;UZ9&4K;n^z@7~cV3)%^OMBm0nieS@OBUZrIM=JE44Sb=7}K% z2v17xcz%T8;UdeHrI<4(iI4`aEijC#|HO4P%hp7A^Ooku`@S`D|GXt3Lk4X2K4VWE zcvg)sU;DFXq}Lq}?dfaoAJ1Lky6QHm^)*WCS(dqNu=D)otI^ z;0oR1Xyz4MciDvP7`vtlnFGBegO(HrwQ1ZrvnBq_rbTU|J^=Ma&RkdjRWN&YoKQ%x zf8PX!g3bIz3A7e?wG3*Ir3I~RF>ZZRh@Jyu?09~heBPl{bU1uCjpJw_Uw@hXTG@D$c+g8`S||A;{FrP zDYWjm{XGpL)ogmMWrK<&1PBBymM&{%?z{viPoz0|EX|R_X*xP0%$uK}r6r7MdM2vv zs0x*&795^*1=n>M9LmwNf1I;tbF_Dax%IXgB$6Q<+jCNA1Ej8Mze0GM!!@@hS+PEB z9NeGgk-LgS6GrUhG4~_O*Yflm5+E0l9=sTJ>dBsg#Oa~*TWv>u$kuwL1gpgqYDPd< zvjb8@1=4n~21_td((WkQ%_B`E1k&`Pz6fv~rCirlLZS^rL_%7ddE1RGEb4ENtLRUxs5x(>(F`0I`@!S9g@|?g*~qdY_X5(-25Q z;5dr0u^jzIB~Q@DjDRO8#?IdjG~o9Y410+(g@-GUEUzFd6(XU1@=6j<>b)< zp$IHkWic_NNvB=sBI`9m4X^8sWTan+)*-&R_4tBpzVruL>vskPf%zUFXf%blpC~wy z*ZQEN`$t`xU9AIvaohUEgYUZaisqSJtwt;wM*9AH*LBF{i*~VOi>X41LeVw`M<>LA zBd0lf@+^Cgo*`2x#c=gzOFP%~_KgRI`zQKimi%0wtvAbKqP?(e?9StdxoXjhSa;{l zAj+u<60HTTtx*~p0vzZWEVJuU!@rrgV%VNd)I1k-5aqAZz>@j}r<|P*mB5vN&{`lQ@ z418^Lz+D~QSR~aPrc|^sO#^9o?rKrvdabC8Xj~Tz(`3$^24>GrGC5hG_jsBUy;B@M zH0evj025;c3dI7WBSp^kXUR_4ghD0_$q3KfS7QBD0Xk>IQK~*B>;0BybjV@XGgBPd zpJ(W-O(Z5+by<`RSBL36HO}%?Ngn!kp3+1qGi@C;0!tiQUy+`)-K`Ig_4&5eS2k~H zKlOSB$i?gqao2MvnupVcPimz<*lG#2JS3u>mOvshKfo6olED=7<})W zu83Z>W>KuGrLoPnOCB|%vcdo>Amia+xbovd0JC`OHES^~lXR}gcYgTP&=$yd%Q$by3WKz;Qh_1bZ2uHJ2gW&e zG|j424Rm(L5W@6q2;ph#>B$nokm2Qoxb@Ovy3Q_qgWq*s1_!h3-95(8P=N&t6D(iR zh-I39!Q4fmLMUW(<#X1H3rRlSceLLbjj5Mu1 zpnxEmjIefXgykz7CMF8(e13$1fgDdhIZPmE5Q|yNo|T}hJ4z&K@ehB}kCcMUr0c7r zkk2Uw&z3lIqQvRr1$vJZ=s#Iv?vgMo*GHK-FGS}oi(pXm*rWZlcLwR|im>qpga7lX zsb4(RH`JGEw35-dvC^{S42@2pN#(LmEYXOS9)qRJI10S303xVal;`O!QknYy{L!Iz zJFfbdm?X3*E+QS4_fb~~c4f6b38Ek*EvYy+ty#?4WpmZid0nErt)Wf%$pwXczH;-< zdon^)AB8|W4zBAGG6X;Wwrg8|?j6@V|MZ_fu)liu6QUiJy)h_bc|#e8rxb_xXBitU zVOp?sbqsv3jIQy4c?m?4*|U>$c11aHe3ECL86nY=X2r@B9UW0mZxApxUL+Ls;vQ0* zUkfd(H?HGwrZ3Chy)5hrU1l$+L~)ZvoWZ zcML2GhxvHXVVAP`=gnK%YbR&_#F%raF&SGHOq6)`xnZunqLox52w_#E#|v>2l+q|b zN`sb`2wmMVN+rdWSG5p{h6o1Dii&yvcgGnTu=(hp&){D^b(X*Q=t;DO;Xxb25Tu$+ zI%Wjecx{43DqEDO)QX$j1L_dGLI;NXD?&Ya28(i&jF!UUZi5w>j`CJ>aYS>1#g2>9`n z>W-~k#rSxEeLFKu6|ziB+H`hASiYixhQ?4$T(df?fMDpX&BuT7I8I65EhJ0rlAaw; zA*UuNB6ath-q}7}`MQYONH)u{HUe!@fP^Se7Il2yxec zj~AQT`S`3ksc-wSpHsZTH3)vJ20B`6!ojeRQerzcuIuuxt;gEOv&C-)VBxJvX*J5S zFBJ|>X|}uQcipgl@-IL3!IX9!={PQ>LJ_Ssss?fN3`D^!$ec@XVCC41ihKOJVupj_C(hgtxhqGLJONy&*OCb$W zQMGhM<Bs<PB)oo9CV#;hO8(kgmYA%xU-Wg+XE(o`WoJAqD0>@U^Hn@%^U#hu(LL*RY+d9a^WRdG{ zY9}7G5QYWXi|@O>J*ZrS<7i3+hy8oUab3;4c`>Yj!Od@LG@p4a^N%NvBg!tAohf?EH#mAdXBDch4ljTPq zl!o1T&0ZJ&_s2izy!E>EO{HSV2ZBPCC510Ns?Yt$Iu)y4h6rCc3E_EIw5kF_34xFj zltKuBT`KXBEw?nj{ie&g?N|Sja8|P-CI|sn7@C=3*!I9UJD*JR=AUn2+1e;t3$He3 zrAQ~ZN+S`ZQV}*?8D{BZfulzzI5?c<#EB^e2J;m2F8QLuu@!-UBo?zcb6C=M6q1bw z>o>IdDXLX{eSE~>=z%;vyR+_2m&$m92CNRQhrSQaCl9%cJ;!))5rigG=vT1)BF7h$bw zz_g_QwCc!kUHImI3~|kEN#-pHk@Kna6m(@nDQ_;-TjoimXSNM7nJ#kujqOCk7KUm0 zoHdO$Jk?!lk4bH4#fg&{3I&JdD;j*Spk)5iuxxBK-QI(R1!E)5qF6l0)Ram8@gk@K zz*WFgKQSZSRW3>?f`NcIdUn+48=Lx8ToS%LA=?C1V|RO2a}0w!KJ!sl&Fiwx0Y@1a zJ|L9qdb>xBnsq)qq}KirLLjw3`-KyXfaQhVl|o7B1wynJ;hojez~BDP`}80DELa{JG9^3Vf)JooGf>o0FcsA}-@f=L23yaORcb+P-m;YasOFh1h&2cK@C z=!2pRsOrX64?Zb1d-seoG?eFt8`_CR0~Icp)_xpQgYwj4N;VQQRjykE~gGDKYTe3Yc7!ob0lO*SO z18Qsy<#@pcVOc2Ug^r~!L9~=8rI1qMxDIc>Ws~@S-+h?vr-!&PSiLk$!pb1bFyX1a zS^n;KPw>8vcCcb?v_@waHGwiuLfVeTv0>qYBrPpb49oP?MceH-N=29Sgu`P$I!ibrS+%+eAq)axlMnx4 z2M_;X;__U^y?o~U5UECkP#8=L4jvjIn{m14D+2^2ozydF)36Tz+{A z@k9`<4TKaIQLjMMs$l+2$W6K2^|cY+_Q7VF+AMMzx9TESx(-Mca0t!NpvPXm?uIrJ zsUXrY>!>Ydcd(QKB|Y!p;X{+Ow1jAC4&ge6hi9#;o0ReZSt`10e{PJYAI&m%vGGha z*;4$8xp}|vV2=i9Of=~~{J-D7*;e|aZ%IhPqB<{=dGgQLg#O_Zzhp0&*>05$@baN5 z_C^&Po`{vWB?nb1f@M@y06mSLSXQs3K)9YRXM_TH9x&x`)qPMXt$iut-8{Qk;_v?8 zmw5AU{w;%fXbbynJOBHe40uaiu&bc>!l(Oq$1k*S>pL22T(sqQfnIQWXdKsD zRh4-dbJ+GshM)UL8~K7__WU3p`gn)8Gy4Ej%FCayZG~M@Xn#SaGev&%@L6I}gR8D; z!!%6{)5LW(@r1#4HjvMr3y#{OETL@2VaJXU z7A%U>))uKsFwXA|Hw@?-%#zL8EM3~*6Gy!br$Vaq&r55~$&(ojBS18$nZMY1*f-oY zPNv%m zmrPYE>I*ImZ_OwsCQCg0U>_ZwA=YhZ!Zgf^fi0z{uNU*Wl0xe$m#t3?P|UkreN8LL z#t^^t$xi*1+X7!pz+S;O+mf_n(qRs}XEJpwJ z-Opxu?A{6f;&ZbxEP+#~s=yTjoTg6YGNk6%(KN+^!;&TKAUuXa*+HQ7xw?vS6-N$F z($yUy7PoL5iB_JPrj=LS(Z!P_r%z8|JBqn;lbr5?p?>Sb?Ol47l;T<7p4Sv0Uwr6b z<#J98j{J5=kX#p$vD)2zxJaqbwcEb*hrehjM^*LGI)mJ|GnB3aM;S0$f)*O5XnVR( z%`R5!y~1{phD6~<_iBi(0*#g)D73F?XpTXAL5Rr(q7C_D`2WPc4NBf3G{%BoP zM!f*Es05FW7-DSc%=X~yj;03Ze9}W}v{oKC&Zla*zB(oauI+eCMMKuPM1%kwg+L%I ziE?Y+qm-|{2t@g}w5$QCK)Ehgu3LdJe!yf&(HOq)<m9?a8oV1lc!X(JN0Fr*1WQ^+e)jV8bRv36V=lyWKA4v#-H##jDfoVUEI z12dpFdUTQ#y%`Q2oS>~eLT6`$j*bYSuvy7JcOCe@|1`?HB@y2GKbk1y)VT=+oSUH| zrQpozDYVwio)xdGlZyo_h0q-DP1DvMB9RQ>I?~Hj^o@5V6jDOpnJj1fa?G6#%XI0Bc%y7hPUfz z@>$O=b6l6FpBdocd!|^vK1Qm^3uvxiA7n6$NpFipYU zrya&e3_kw(&Wc)8_gKb?uE&VdioP>hTH7Lo!+wJQH0n(a$rmXEQ&UBThYGA;-{MIR zQ6*X`p)d?Mb0*7~Gg;=%j}wnul|ZZOYOH`@&f*ZGLnX#W+(F>)UK16o*8Whg`pu;= zQ<#;V-TSwat5r!8-L!I1s2XgmkA&Ao$?F$wjZIQkwfy%h+eR3M=N%HllO9r3R4a)@ z2|w^6v@bd8e*-_qp>htcX5pM>`g^h$POI`qK)@Um9{AQ6Yp;k^T%STfvEUL68Wlp| z-tAd_@QpG4=rc2k#3lKxs?)Xgw0S{$H-C6I&#|LvF2ACMK)^%_vvS_&Y|g?Hn8%K$ znVPb>;;J?bX`bVi(omU`r?(A~ow9MJg531Mcpa_8Fig5$!EH0Y&FSe)j5W|sFQ0xV1yu-D=|J^;R zCRn&AK{RS14O#PBqDmK$iXG1nGdP&zn(NvK1O$C2ob!+sJ;I_Du;}VevVKE5H{aaN z=^m3C-_pR^D`R!wsFMWZeB3h_8O|g9#jY=qY*n`}Y0asVQ*?Gl2uI8cWk*Ud4HzHK zbK*pXrAw1EG4OMyvMeB{kqtwVp1mJ=MXGXz5LZa@=}Al>J?G5qMqa z1)C1qR6K@Fb@#d0NJ>aq@YR3or&KC=Q7s^swFyT|iUrNT{nc3(u88pNUv8$DQ*{hl z;pb&AjRPeO!O&2S@rfdfmL#dXN!QL*J&!;dg5DEp99J=aK@uUQ|NUiNng=?=(Cphc z&e0>2Tzz#L@pzE;{7MVo`qCJm{fj;x{N6Y_w@ooQ?wkV_$AKpv%rH5sc*oB-Q^;Rr zlJxllDW^|mX=x1+3R#{msjHr@^N~-pQzgd6igb5J{l#A`oS~GP)GrjlSK~pOme0#%ch&cG_;s2`cB(lyZ74z-@E&cfu>g)AmV&je^S=F} z9M^x18p7kWUASfuD6MHoCUE`0=8GBYq~`FRBH#MzDRyihVtgz|CR-vJG5E@7M*;ZF zKk4*sEFTP2A&V4VR$tjg?A4@#6DKmXw1i0{Lf&Gp*_A~_fvMgVrCfTCrsZG#P0C-|!`&Ze=&V)wII{`r6P@%^ujo@YaZ?|*fa zH@~lm_O1YqtuGi*)YGUaLO{t@Oiq?)Y6?}1b6rbg(e=@GDPeFhhm_FR90Eb5>WXCv z`Uj?PwPNP1D26mJ4Cx0JHN~RKp~I7$JeehtFquCu#?0Aau77iq%dUwBJG;X-ufH<2 z23}fWr5Cb6DhjaDig+{uAWbQk&WHvBUQ&>!?+bs|E@)(9EbPHqpZ_bT@8{+JSJW-X z^`(brWNW3t6g4TT)$p#i9kh@rDG`Q&7J3>mb@ek;RjhK5N>+B;7dK%YCUhEb^hr%? zSBc)^0~AXxrw%H1KkM+9pPNHGX;gMwQ3-H(#n;LUUg9;Z5eN$T5)e4f2sc>*U$T zGVFdX$7R>V&$-t9JF}!G6j$Gpq*zcF1V`Q9x@wc;vL#%lX>1I7^DF(}o^QN~bIdEv z;9!naV}MY|tfVNLNJ=G}da}sD1Czw!77G`}2?S(C3Tq@| zLk{7H(c9h?>H^;6Gk;G2V}SFDs8~V>U9^kLwP*v%U#ym(Ld@*wn{aapyp zjjOJ1!w?2f-dE&ZEaz1;Y`o`tG!m?McI!X zous8DNGcWdBx((PT?oa~+Xgv)EW^#WcF@us_LHWnc8TLC&h+N_x4%BiC;qC9#VgP4 z#PH}n6I^~>{DRV>*6A?4B!-YMK3>E!C9!Crasit9AY$$3N+pM}(E=SE;hIc5jWiS^ zBRPtBhZ!?MzKZHe4#&1RbZ~;^mH>0-MhOI^7j^dm;yRiY>!XCDV(H%J(|_QU^2>uE z)c|w>4X>DrB@mQKCE6^pQEQzDTV@3uWi?B=U_^qdu`y*jw)65rEM*r>`EDB*esQ#!&=3$j{=+n>h7d=0!_2v1u6io3m$gbkB@=hI!3AN~t+`V1oX$Ic~hEom4V} zQB#xGV;d+eOVfKa$LOF2!%m#K5pTqNw&` zT;<#!rChXf{R)+ubh=2f=+fRELZd*tXsr-JbN1{M%`HK~Vb7DPTo<(B^qDEFfS|K8 zEAavE}q&CQ;w5O^VMh(%8 z%6W+Me0zDNRn#j(GB!4WQBsJP*xh?kOz`w08CGqGaBQFAkN&=mU|3SfsdK7-)Ou?D z_&(aN@>M957#l6Hc3rc#h^K++9D`oM&|nU&HJzQ&3T3|hTNC4X_U;|y@{P@;8bV%b za3%ZGTWmvv1r8scWOOvo^=}XJ=f5++%5`aOe{Um;S4I#5#)fhzE$N;Yq*Qe4r3JNM z&^2)_?WG0y?-&~`(AFOE;Fdu@C@7wLZWPz4rOa#6 zX`6s0dGygiuS$yY3S?)e6v3dRrzhig`0{*N<>g|Ul0ZNbjta48gJAZuAdlZawcwF^ zN`LFx{OPHa13v`5y?IOfH-9V}r2J&i6^=&hkZB@uJ>B2m@`My9M@dmbED~B*ZjkVw zBc?5AQ3XMHA$xqIvgb#l9fc@U&&zfRRXTPVV3h?`aU4+nZc#5i4AW$AXdJ8HB41*! zr`D3ld^H4dKisXdxcIBYU9QlNWgn1+T>rOc2J0z(S+>>a1MF-Yf(D30R+ z#4c%09M3U1>CoI{5{a0&uBgOBG(I&&Dk4dn9b5D4ex^ij5)4U38>oQ6jU|UX@U8P% z120;FD6MEoH4{V6nG!+7gejO!a&p{J^4%A&jwUwY2sFQ zd+k)|4TfcU;8O}|8Pzn~y6>!7xMEr!N%`--fi$6)k*FEfnt0G)$5UB;`C}d4;#V~w z5ElkX`68qg3=HImrz~%=3vrHGHC-hv6iN&Z=2+)PnQJ{j<70US`tw|UZJVe5RvZzE zlP5E5+d52VXP8@V?I4k`&`7j4h$kdtLpHa)vyo6pQYWAbdibsBt?}m!Dn_91k>OnVgzYw#D>|cPU7qQ9_>$D>g(a6tthiEnc{>Nx6N@LC6WTz7qrOS;S!9vjW06f`yla9vfCZz1S8FhOHufad04g=%9+7#PU% z#Nz|3S=+$;`3ba=XbcR)s7T%Jc|o53QJT5Sg3M^Q80xp_I}Py`8`le*SQ2%~emZY&M#K@?PX$GcI z;WZ29r#O6YlEJ|e-Q7u#ZDDAvpkU7IILSnS}qdI~)CP^MTc z6u$Orzb8I@Xn%8EDc6ywULhMqN`s-XL0pZa{Uq_)g@-Q+Bg$c9B10x$BpMZ+V|X21 z6onhxPSc>VoyKfz+qP}nY~0wk(b%?aTi<+t?$7(oojd2u*?X<^ZiaH~(s*Qy5qXf1 ziV{5qG2d3I>AdxS{jz!KG6+~zzb4n35+^Y>NRRmkw2K}h zUD{bG2K*>%LFK60#BxyOZAG=G(eu^pMh>hFr()gH>nrLE5%S4gl;-{&-k(qcQWrRA zg2Bwqp^{*2?lD(}@xUz!=oAHJAN6(9M=J^@Z3MHg0I0t|4uh9#1r{?ZD(@}%kN55G zhVN(OZ|Zea!>^VBNwb(sx?88UAO$5fb^@&0%ZkQctW|@=C@JZ`M-7Y$e!IGY`OLgK zvW07S^p30BH}SIa(;XqhLRi523XoVZ+WG`|dk&ddhkpy1vUr?-bK@SKEhGc`07QDz zumRZd;}|&_iV!G?R%+WQ-?!<{ZONj{4iXG%)R>>48c>I+jT>Z%UCR3R6GLVo1n+B+}#*v;Ci7p}?ui|+5PJhkV-X(1Gbs?*Dh z<68`-R$;(I3Nn2$zDVfoxic$RaYTcYMiS3eUWZ;8n`JZu?cAHb8--|Xi5*5JFRQY= zrq$Zqob}L{B|WC{!PU$Rr~)j0%a_%_^AmSiy5Q!{b}x%)jFd9=R8wVI8U+z4_sw#R z=*TZ_j}Uz~@G-f6B!HK7p%MkN8u4~N(7cH!bI951^3@~c%+{7LC60ATu0Hkn)oD#* z&+Tv=yK`u+LT7L7FP5fmRZ$~rfH|~GmQ=l)ICG35tIv-@^%{zS_CmpviO`M`aMdts=IK&o%LH@<01ix%)EI)KiR4ZqoN#o!j&=>cTR}0LdwX^FG7mpRfjQwQ&&_FB_!5oR z-1Q!8T@h}3Ng3dhE@x81ce601G>|}HN`45S+q_%f2m`ma%=U0f`U5A$V$7SEr{?ex z;Mz7xU8&S+5lJq9$@zX|}%Z zLAoCwh*e#r?w=9@f8J; z8)#H2%#5Zk?b9>*f&v8i4w^Et_8!WRARqwOJiBAv@E#ww@pTkf4I_rDFVgdwDi|T? z^os$$qTUKLWx;O>d1XT{Mt)wz8>&jTY%hVX*en&k6;%ZE0jY;Ij!tI-&_gr;SCORT)mayOOGWRl!>`L3|mKtXyn$BP)63{{tK(U+2&L~WU z@e>niQE^L?B^0r6M2dq(YaTGeE0i^oN;xWqU91hUdlvPiJ5wf%_md)KOR13R~gN64f*@i+#N#IT6^0ZrEpS$ z)|(D-c$o#v#B)bS%QtA6DEjT0wYBeM9#72H`vxSJYjnhDmyu!N`^De7sz^2=wDis6p7u3&DNq*br6k24ku$xne28W_N1A3F zNOd#uleihXTabkN>+Y+2WPH#UeQUJ z-1?t^4!2!jN@9c76cAcz(5NT$v3yi1b*ZQ&>n$AD760$pMLPPVt;X& z+x0sJ8vGxiMwoHb%luQ1iZAr?vr+{kP9oUc9LBN4G*enN=*)wQN_D#}piuJrN}F?- zA~~~@)4vZ?i3LsU=NH*@PP>^Y^cw>k<@B zS0Lkk{7+62^5F}7U#mR>sWS|1rd!gUPJ=;+lZzM%<7WlM;3&bcMZWdJ8>E52_m{sJ zX>6Vq;qV`6hel#snl!)-aV$tRBe>{PS^}w#gv?C$QO+a`NYN}5dA(NYN;90F}mT$nh zW1oHq<@Zkz%yC(Vd%N_Jk-TDUifUMs(gOAd@-e>m6PysJb1e_8r!DUxzZVOz->DnX z{StV}xW?4l%GIMvmh#STRj}Vpwx-ptZ9gB*^8ebE*x09ZO4UJBBXyDqdzWHfV0Q7>`_ptYavZd6hJb<<54zlY7K}> zU5woIxDIVxy&nyC0d0=%- z!SZL(^SZWd!`8$0Tydq|HlDenym!&XYaM7x-9Cc_KjD=3MBGD92}CZkvrZ+Nkl`uX z*E6fVx>$+ckKjwdXMTERae&K$?f~1*ty+ya2Qx93piqDe__2ZV2H*7<;?6#|l{Cs& z0`j%q_(;ci$wh0TVkJAi%lC_Yly<2fV(3u`y%IjCChZsB$Y3Sr6t7&l=s(a|3+2MpNN~|V#x8d_{!wKv%IJF83 zlU-BKi6Ra?-#{t;D8v%Rcy<;cDkD(R14k%*gMVbqCnif)QoJ=l)#sSe+(2+RghwAd zA^BH{P?zQhGlHRA&9;==0$JIqJZ-rubZ=(Kew|;h=+~2K+vn|8cjp`|j(Aa8Q8YL_PiDQXsyP}tD{2?lH!1gs*td7DAm*pakJ2+4flzo_j(#U4^ zpbaVkaiK_j%43W*C40Y+)@m;j0xK1z>bewJ)+&(rr+yEQkL?5k*3#8#=`5(xNu8M7 zv-p@`c(?5IQqu=rBQL2J%++N1D@w@HF{x@rpUE7nxPZ#Wtdhm@*8ux$;?e!h&)Jek z&uTwI4U7TKZ>0`eVs#$UaK$o49FAns`dZ+4xLOe5zr%zh70)+WMNI1U{rhf8Xl-!* zi5*T#Bg5kWzE7Da&`1ur!0=Dz;HPC$XAD9eMZf)94!;g_Y}3~whrA9)NuWu0Q%BN! zh1&kpyoQm`QMdK%2Ez7jLY5$dYSlTn1Z=b+e{!${M6eRqWpip#41owdME|-|G>86U zo#4~bPC%|ebtj~(EV&Dsy$msoQ*S=AJte?PM;R=ruBb*!I&c1E_e{eQ&~1QawA^hw zPVIB^vtYR61!hnr5+3P*`!l0ES9>WDGddcDb2b0}i)OsqUOm`Ih5bQ-4pd?Y6}j8# zn%~{FsvEDr`_6~!<2pA9A5{=$G1F#yG6kBCmdKGo>KEfN{%_b5W+qvDqnh!@@>bhLeg@2!E7B+7A zQu5s$MS3^i>Av)K=nF~r+Pm}nSE6u2osf^oEfVdaY`VO-N*oYw<&Wfh$`|4LO25TG z2Nymb;wOWX;)Wvf%n~kNuCc(a>Zd*JW1MJ#gsfiFI$zL}z1A?e=B83*lh^#KpZ{xK z7-8ksRG}0(I$Fo}cjY=Pdy=hfl0^1jODqi0SSgR-1H35&i*%j*3{!k*W=0EUwsQui zeK&jXyY&Dh!Jdc*6c_8U#iM*#%f8BDagYNpn4~k10ec8ItU@y@*xHK`0f{C>B5ta$ zb)MOLD9{7H*#zUUjI_)K4ts8dQMj@c%Nr^LZ*prFzQluYPsjITF1D>#!4Q9Dmz=ZH zK)#}DWO~YknCo;_P^kmhtr5u^OH%L@qM1>CT-birX$7Lf$dv4I%#)LokvJBcU&>>f z0i1WSx}QGpy4^0iH>b{$m73KWq}4k0&|`7AWzp`V@=qFjj~zTk#Td1Z?2?eCqGZpf zow7Fp1|EOaz4bxsOLijW+mcJe&nQlIDMpTSC&piRp(GTJHapea z1}vX2^+i;ZHrhqatRuCYwr-&t6Ozl*-S&6t?{g+*=ke}3xVxG~Idtq#gCiBr*O+BU ztY%hmjj1kf-xuLUk@m$|HOI3FcH4dxo7vP;36q|pR==Nhou{)u`I-hKir$Uu;{H`q zS}?Hpv2R(mtca|Lln^8p#0HGCeSt{X`cIQ6ixrlYHMV01s?_+@s(YLPdOZf80VIG@ z1rtiM8y>fmG>?A1o}&L1qjkA|vz`Uoc=p;1KFNL0<1E$s`v0bn#uuVesLQla;KIl$ zaWNytlR$qmSwkA6Pndjmu|FzI)xQVou4M>5T1)_~B7CBe8A_xd`-9Jp{eI*JkAQjl zZ5eCie9;12wEM=zxS2H}4veybjb$Wn*xh2>LqV{)y4BUm!q-h@XlC&f9-~HH?`#oa zTdAA`cwb|ruI_KYFb_ScGXrHf^zRgusWFd)o=v8Inpwn3St=KB7MA(710Oa1S@xc? zPP|`lD&FH~7;OeXcK=vy-KL-~Iy_|1-jH{>#6C#36rv!tx1#dq)*4D=aXchrUuF)+ zU>KHxb>Yi6D9b>rXyaB{npX_7$e&s*pd*5quqJ~`fpR|&O$74my>!a1l%?LNrPn8p zZ9a-6N#M7>{jh2kThpV9#gOJ^&@&6kJ@x|aI+o#el{+oj8O!z%6Vm#eTzDQHK>YVN zYPg!ti@cCtn!)a2bCVCuGfGe8)w6wN%xj)3{SqIyKCZ)6SA6(^cKzy44ao+U_z*!V zu+pSdu>(&wa8z2Y*xgDZ^jRm%jpgjIzX+N3k>|DEq2rZnPh(Cqn1axU&W*KpF63~g zjqUZEni9;bxC>EDgK|u`j13COeUMe<_wkBg+;z@Kd~Qx$L$4u!2$0y9(qkkJH*zti z1w$<8)wPYlO5`i43PwFL^4WZiXBV-Hj1C3?t0w+YlWTDejr~s1@~akyGGa@SfCH>$wvBqrC}ByU z>U0d)m@-zcp%LUZR$~4>rWcQIsrDLc9H;A}9rX3N4u17MV1k=2m6=cls_QmmMe1D0 z?A=Hx+9==Y+8c0KL=lO}dc9sx{JRgtpq4O3ky^NnD*u*r1V}W+B^A z+$P*u84ITKVO`&-7RA~ooYE>67l$NXG`okl$=Z82b)jFeJshwnAvEemp|={MPuR;) z0KM8|cp%Ya1&z%@ExLt^oF~7gPuv417V)|sb$1XU1tp?AEiW;NDbdgXsphPn_I8E4 zdp?4CmlD*e(YXui^7XI(s_$`-ua^YH_!TJE1viTo49(E; z2_ZNt_mdRs@SqN=@u_K$DJ7AawW7A2ASz7Os@^H-N;p*rjHMS1S)r*c!SWOw2I*>S zq`^wrMxxX)p_p%C9X5b!$X+0A-g zw6--@rAy@Z?uH63x9a@myjJSZx5}QsFfBoZ&@Wk`fDfm7YOz7(zx4bsgI3~)dR4TN6(2kS`fNZ~!+HQ*`%7&?qw2(2ExLi&qD2d%O(Hr}MxsuFS<6nXk;tFF z{yZfhjff9H)j5#SAVuI2&~As4pb`GXiG}9t`0Wflzp>CD?M5oZn^WvQh(Js z4pE3kiJMG`d#r>vW>fKH|0IQ0EU7QncGp`%_skhR;>Ld zk?xyD!{KYEXVj-Qk1S*n%_aq3C^z~~u1z5uZ3rxANOS(dy<}mx>gWXg)}dobId?%a zy3U($>PA9YxzvMF9??%_mz#I%Y}_bDZ9LC71SUzXld;cx3&-^8ktS6at5{ABgHT1x zdoJqY4nY;pWISwcBWv%EwUCzQ2E0^#h0nZO*}6rkTt9<)2m8P#&mK5U;v|kdJ-x68 z$hhm5AhW+52K>PxpF*}~$Z-COCtBJ>3N`_?-RV5KP$0*xdus66_GERG-9R*qf^^YV zW7FUj`A4S?Ov8L~40&$Ju@S@23Of=ixqBif7p>oC_@hPa{=o?p@h<_6d% ztfxBVYpIk!1+#_zR=>%1OcR|k!&(x*vj&OCOIoqO7wqKZ_@<>C`~ZPtM(%0o=!XSo z00n6(267aR-+!8U;#i9Zs>6X=d9rA)pcT2Aq|02-mAU*qv!LluuFzT#EG=1SbVMIo z1cV4W^Gt=tEQdcC`<%$JQ0g@dy(5W=c--uh^GOrC$wa&2iGl6K?=FivF)lB*{S{>@ zeH5nnE%%Qyc2_*)Emxa~=gW)%Ni{w~Xw)i2Y2AG!=nLG}8}S0x^m3;T|F#bf#DBaTiH1s?{a?PC0e6b4 zx|hLsogRAv%Xcm5HtS76Z8=WSqWzkiMLF&D{W?oxua7Nq4$nFv zfbX^TohdT(D%}yv7X7Iwp2`WuGZml_5hcSi+4}Td{VqJtMComS zufs_ly3CsHjk_6+cnIgytmU{4& z^rzyJnQ1*<5$pi(03b2e@j}b2-u*W#WDq(e3Bw}P+$|XvKyuX>IR{ny`jkv!XxYv! zq|%o;k1PE^R3_G<6fYwhPB5md5s!pEyR>)ZKlY|;ydIW9CGnO_v>f5K6Ph}})-1Fd6?+{WG{8(cJ! z6S4$l&#sHkcodR1cX`dGaaCbBxeN>D=(t>C>P?){QjC>P6&7To%{`WUPSwJ_r%aD| z6bvr&7&bP@9Fhq!Q`1s<7|I_&3Y4Ov_E$d78JhB2PEXlPCLU2U@Rrcb8(}nyNbQnU zKaY-l>XZ4tq7(lYdO9w^q>Y#_S>oo^eUA1c=gHJ@igMNDj0Q0VxLHVurHm!@ zfI@40?9h=|02PvLe__2qn}h?mmyr^Zviv9iAoEfSLV31_TQ~UamxWTLdDX^@L3n7) z!_7{tD>3{)4}Z+f4d~t;#I1XVp4=>_5VAPsb*adJy}OT{je=ht*Tp(N94NIm&ORWT z6*0F)tmWq$LMO>EavV2t6X-6JL&3zllM*4E<%mZrNJOkdvob5s(I5!_bdnrsTIbub zvzpSo)N?;w&B9;v<0!~{ShvgZYlgnDN_#xYEy!W#+~EPGIwfAyys?Oib|p#ouB>P( zba75$f{qYIxRV7X%zQTRbu?OVp4?->2!B!WvHa!2=Y_V*z9v;#l{L|f`eq)j9~z`I zTJishqRLm6h-nqhg1AXo11zxWx15HMk~MN2+$1y zYLx%oD#4Kn*db7;%!C|ud{e|vQUJOzEn{<$Kd-lB_R5l5x$jEiparqLDb{Y^EaZO# zimw2e&Yq06GQ@>uOz&IO~5a`YU|jf^Yte@X6RUksc`cr0yAy!&)A1^@b*a2yJ?9Wv-7g57v< zPa6B}7kpvW9uKrbeU6CFQq!X2k^7wG1@j68&FEKkAcLMtCe8apbgN4je{pVnP@jJL zd0P7O$S*KGy+=93x|5{T`D(GK%_DYe*%zER?@w!6PkcWc946TxMq&|mt5+Je=som! z!D&XWo>|s(pz{gc{f4ED{;}Hhpj~a@QSg?Kk0-u(pvGUAlg|$u_;QB|tc0B&fAPcd z7!+AZY=S2D`%Uqb>gblG^%Rz***US$yrSwzvJBcf>oY>MM7CcW>jIXV>xQqlpa@Ox z3cMjil*#L`%Uid6>B}ElDZZaZ1l?c1w7~-c4E|a)EU}FAHIOu2)P00g0xe77rE|hx zU8Dodu_i&*XZ>&~1KB_g1=-WXU>GfZzSa>;aEpd_s~jiYZEN-?RJ2wJaYW>MXF#gi2c@c{^>d9pkvw zyZHuob`fuvJb^6Ww(e(AtE;;$RX!lNGR{IwwBi(2auh8-IdZZXZ-KI|_P1v7-LK2$ zgCRcziK;uyINTYq6N35@=7wP3pN>M7KhDvaF?(Ju`<$FKohD!srrMUeQDJ1NEnyV! z-6t+8OFF+E@3RjGG&=nrm0*{gxp6^_t0klV+Wt+}?|jwN@_q`rx|UBt%A>6<6AR+zY%WPEY*{>_`6WuM`&kTv zSqYC8joU)1omeUQu~k(CBGW2RGFSutl4)R+`)@f+n&=1>_B%M3K+KQP*?E-$!xTyn zq?Gf$P}s#h3;>^nS1Hh{Q(T%2hIYQfJUM$Hu2O9y0-e8$S8~>*saRZwNa91th@Mn1 z=kfzOkZ1%*Vj${1xBKwkNDcvM(J*}pvO&P9Ia1+Hgh>~B{ZSoLW1<+PoEprrmb0ff zMdElg@TZ<|_%F|kadFIn4FH_E?UCi-{}y7^_>Ui@c#-@SBCdo=gq{~i|YvD1E*1n@JSI^K_-I(H!VvzjtN!st{X5AvSe(@j~dr)wh z9P%X0Cx=2P?oI~tyu5ZrB^9|k{+JhiO0{}w5x;4SF4oiaKWFWUTc5hj%ddd&!w3alfJ=Lx zaHuAmedX;Oq#$75);ydZjbh>?QUgD7V~Df5+E4Nwpqowv11H<;m_GpIN?JnL+hnn0xZQMO@49SEZ*#r& zdQzK(*GJb}$1$>nJ4L}ZE6t9c;Ig^$k#4M+8h|vA9djifl$EcUUxmrn>E^1(@%kEj z(9g-oiD^hl?NfDX7R5^cBB7cLanLe-X`@(*=ECENGj&*p&?lT`X%2!8hM&AYVCbjo z2YbE6srP|YsxaS6>>+*&8T`7qR^zO5@0GH2_ROEg3NwbT)b&dwos3LzeC$Y_R*;4k z!?MQbTbX*S?{{iSTff$6xs)d2@;$b5-8Es zQD3D)z1)IGX?D`Qlnf@vTB@NP;n=eq%Fs;aF<@||6=Xr>7gI;exC!(xYeJ6$5Q0Dp zuoA|>1AoJ;at+zDF_+BTHauPG@2JGgC|S;vc~kDw_Qu!eu zujd+DF{Zyv8KtU=b3~48qC%ZfrP{i;PRgpCm$|CzD7QpXHd!H;B}fQ$NErx-oAi~? z^tDFzy>IF|-%V?y-RC?ysO-T6`gi^0%E|uuhv^SCps#U@4AGz+q*GLKIG824!|je| zekWlr<%NG|mgC%NOpdV8uuP5L0rmEFPocLZ#Dy_P<<1ZV|_E=6&aRQceA-fvfh<;s;k`+-7Y_Ek1v)w4*nrmPL;bT!={+q-lQgJ-b8Uo#M5%X zAHV`yQIyFY@VTrJFNO_xIYyl|6{4a|f#N(9gZjIAO$i9{(G`qN3^}yD%$1`*7JPJ2 zr^MY$o{%792lFGBY@>^Y)r*`Y!qw>9+>j_9;w7EktC~MEIh@mkxZf!qN09W^dVu7pyGlU<;pD5_QO~Zf3v$H|)4a6%(j3j2yp~dunrbaM+GpXP7;dIO=WY;J)FfI_39OevOwx3A5;--5sGTI5?Y zC6ceA=jIb@fP~I>ElI-`l$5D&%k$m_qw>5B;p9-%y4eSC+@b2|gLkOF9L#HKD?Sd7 zAtw8!?#78>lb{L!3M-)L&urx!8QI1diq`A+hgV_$%~ckCi2Y3}f#P6=!Ai>k3J}w=SV25aYKj%IIA>e24;KE_1=a`zB3%J>$`Zy zd)AWP={Y!TWVNc%Ux3>W4kjXeAV-(1-SK`2&PAvI6y&W`0P5(rGj2^R6g7|8dumhadt#Aon5j@b^dTPId`O zfdFKtA>Is{2pK)H4b%&4=im?Z>FRf>UzbT|5URxTKm=7_b`(w*i%x|i_4rdX;vN%SMfZu*{6KsU1_E!Lo{@nJ{(Pk-RF^=AF*Es4NCKg ztx+2aG%J7}KDpXB(a;3og}b?uawKU%3I-{folE|4chGcdO&(7F759iW9>&63<>~{d z!@tXVx37EQ!N4E}hi>t>IKzoZXWaY%C8M$u<)?nNYgjoyrw(C}E2&#%Eu4tw~yT%~F3qQPrNsSe(UPwrgCcWJ?V9+zrO#ejxBdNf`?cwAh;e|aDx zA(4QktIpOcQ@!2*$fft82oO>T0`R}<#KNSGY|>#%Hk0w`!R?xw2#Ab8&mpx2c45m5 ztnbsj^404T^=x@`UgUoI{JggHN89Y3o#p`oBj+oCHYABE3n>t&O@#`5C{_fjc@g^Rwu*0Vzm>XnZMKbk&*4Y@((vVLVaSV&Y{jy zu@Tk3S!1$5Fo+mDae(wz*hm_MfsCpKt=5HU2SdnLYTus`UDe)YT=4o@%pe`u>WI48 zcRl6+s~-K+QXOjwie)IaaHZZfiJ!mjvrffiGRjchq%aQD4elQcsf#!VJs zU#l`tt1E7O&+?L<*T2hVI1yW*-5zVl*D}^X3(d43wVL5$Sc*v1YCGcPmhTqDcU;Yx zMmIXZHK?WZ^hl;^4b2Bd?i!k)!h)owB<<>4BeK2G8eD&?*Ze;g4Ow-BDyM>s2$n<; zyP+ur1|0Aon#`=$3k{0mZ7k!}008ftYj!*SCbJzTmb9Z$%T-2r@mjIMhM0Tibnex# zoJVT(fsP3PBLt6lpjO`$J`nkxK?-f?p+kO7GeUgFvFyERTIaQaEzAG`in+|091< z&NjhIN7*R8T3^w}y0PlWzgnq^#dX*rMmv2ZAuJshSAB}T4Fs{XxKe*>BN0Vor5z5X zVgP)es`iEq36=Y9EfGL?V=xp+i{Al=y+&^Pf9nB{Uag%z>>Nv{mwR(ck~-TdQ9Lw* zum8T3Zc4(QU0XAHS|?#2so#6h5OeG*+?pxeA#H@>sCWnyU3gOXMOlOgaZoWITqR?p zNe$o7<3)dg0%mi!I~hW>ev)q1UM5C)>2zOm5#2%4_~XMS*#}`pZ`}b1K#HBroOGx$ zO;DoZS5<`{V?q`Ta~st&8b0YD49@kj0?RJ7S74aeeP8y^S}6tyAbG)KN`v|{yCi1x zTs7+=Z51LG5ZLMUf$qRk3K9$$qqi+AWQ8|7SAanVTC9s?($fE50uWoi#}fmbj6wjA z3LvSyEU1^!|~#nv@$gY#%TU=sy@XEC59Trk|#rOx9(6w zE|kf5eJJ#hx$LrIOhnVzzw;PeZ32plP=O35M~yFFh}>mqc2gE_plW(~D!c#59pJ3& zz4gBNXf3@~EXg+@Cgiy(#8(82x)48D6yP9W4AP?BD@Ke5E}t%`1)u#7sR zke)U}b|0wDx}gvUn)at~&}juieILgK`&HkVWP(z*Ld$bX9G?sv$2kdUZp znxKrmo@&f^P-L7>s#@i+vGwBx4tb)zT5DZ+l}&7c`CDPg=*QaF(Pf)n>KIZhWEHh~ z1EDw-hThPl{4GbZLS|k?fJC^*V{KF>c70CA#Zskm_ccliQH#x8%HujI#u+)cmXI&+ zik^?jo^v$0pCau=Z+jCD)8hSo{)ubH2~V_HA$%n|;BrrxXanMs(IJD#O|%S+radVq zugQzn8jdc6W7*pIQqmki)b?*a@o@Mi-k2&0hda}lqAVh6q$Z8}I=`eQxGKyRhKAx} zsD+2Eq$c)QLMAVdFgr4+v=rrs4mbXyWKjUY>ec42c~#s=)5;V>9#X_}nr(Iqhv$l{ zj?)xi+qzW*7I0y>u=L@0BpS4v@JonE?OoxD5%AkR%B>YN)vuJxlb&z<{+A6}wiUvGAK6ucygbdkR+BM=4#a z>0eW2Aou6-Hy|?D+*z8jV5t%I8`KQ^M;0T1>>fn;Jg0FsF*`yfY~*ubLq_Iqe}@VW$j4_fLLC-s{SncvNo&vb{J}| zI{!#Dn7OkeMFRm&ful;@R&^pphLW6r3yc40K2FP#oB?9ZTj0KN59eP;p=x!^=2UDH+_brK-aX*j(U&| zn2uBEZ1>A7S1B;j*P0L#$2iTFRMk&cDJ%;pDKQ|pa%isq@j%R?Ar2v$thv2}|E^jr zsK@yzT)89ewhXT5=4-IM?Is&MCo<=}&l*9E)f~?v5G5|chXP3~tQtt}Ck zbWBU8R+N%j27sJ^`3g_-C76Ia^%5u*0SJlR`!flE4Mr9;)Yx9uSZ#{X1sy)K^K#k< zol-Zt`W)E);_2W^<>=sxjhkM@En_*5FO#5hlAr@vx_48t*XPXrqU)pTlw>EbvPu&!tQINlzFPxA+= z!@8-Y*`SCW>z11xh1wv^>z~<8NHCOL5a*o-AO2RB#dw>K|JX%(3QLLlfPXjwEpImR z-$M^0n~ITB!EjVn*wW!QurVfe2EN{5yZGALgq(rnk0Mo1ex`h`zC2;^kdRyWXjwf7 zbm(MDoA{GoeIAUhEYH((8B!5EbdGC zQ&sW+lWgo))66=aaJyU?WlAoF5i^~OxFSW%@1G)#di6|l67_EO5nylRE1jNEfEdjn z-9IJtREG74Psy}yTWm;qCq&SGy9dSRLYf2ioO;AJ6$_H^clGGRKS?4M>5|)rz1v|W z-6Y#bFCtz*6NYF%FBzplv$7{IX?Oet5AYlR)UQv#twu0p3Q$5X6BB2}GTTe=i9?w(HxmQi)Umdq38~Xs)^|)extNx(I zWbE^K14U+LL%Xza+o2f<<~}_=i~Bg7bg&tu;g`U|3SqB3uDwF4zsEU41O3f^2`1}i;Bje#Hy^3#5E5azfT)1XSmG4UVIaQT$i25#CnM~ z>wC|yCx`1amBk7lBvr(L8d8Qw!UCYd2Dr0e!qU=w=3-Kc)2o;UW(=Za7e5OJVS64c z6@!QeQ!_Nsw#KAb-j~WAD!YF~)`CuOv2{0VccUy0kYbc`#(?T(VAu0mfGh41Xg}$9 zUetbF9UtckeQl!;1eiRmCaE?rR+XAuA{A;44#GyotO9)n96XxYMNFc2_&Q%(+&Pxx z^Qc`a`b+sDVHaoNa1m+XOq^G^@;9IP)cDJNy-L+Nbpt3IpMWEZ3IM^p1SR=S<7eyh zHrAhmP2j9v$21xdjoF(Es4mDubczS8v&CPMCj)jSPN5t%%u~c$-}5RrwmS(d^h>J4 zFc`AInGUu(E+;M&-6&zSK!?AZabLUUtRs5WJT{iwz+`zGPyP%=Y8%g*8z**^MFDac z?uwvGGs&l9tIF(EW3|Kpo+Ahbk|(3jnY7nW?=cgb+@roAL7>8KX8``a!&4vIY>9+0 z0KjmHYyOIgUS?@p=HhF+bk%ua$}qN@kD|xti1XcgH(pE(eUjb4HJhIpOZjDY&mX^t z1N;b6K+pYG*8?j7pdJ62#V3X)>9h)Z-JX!wjmUn;d_HkQiJpv~jwSy2b=uYf9v2zq z*)6|rnR>6sNWSL6Ex$b;zWYaNHN1KSU3w4=GT5s%CN=NM32`nCAWQtoq-2s=g;<(AVe|@opHB@#Mbg~0sz@vSY_eHfkaBwgL zhN{&V+}sw8qanfb&iMu$?zPXhG|5|>#QE#KXNe%XkO4p^$y{}=svJ0Pd<#XB#1Dtd9 zu|X@fn9MW${XqeJldwQ^U|NS;!0gIhQZg+32DLCDQs1LY++@}mpe+NIwXSv(!~Te^ zS0g(i8mq6VT9miYd~du@aqTC-(E8{9i3w6MXH{TRW)kXe1X#4Hs(fGb^DCWe^}iL^ zN<~I?yxsA;EWNydFMIkp&c0C~v-ZWszVF_H0-C*Fm%w)<+U~R30o&2_bG?^}HgmEI z?_2RNZ|=LIP~L}1@3s1FA2;3XqwHY@U-PhdU>{TSQ={=aD~UikgMpo*Knj&MU`+h* ztot1RObZhQo>;jE|B%BTM8a;4+t4?*FW5J~sjmWhkBcHdR*qd>PL|`%?!(c=>Tm1M zi}Ai4cho1{-JhMv(0K%1rV45TH?0V&tX_w}Vo3jyLCk0U>kE~ij`ts!@6!mmKl#lG zFr8WV{WU8(w${HGSk1Z>!R>BzSK(W1(U$fObngkE__MBL;$szL3 z#*{ScWExKHm($L0$G}V_u#k6_lGo}TO$?hH$p}iMYc^|UUI+X6hJ78ZF`k1hBpLFQ_=h$)Nm{;Z%Ui?z_6y0!H#3~k^E&^Gx8ot20q4zy zd@8r~?p}YQ-&MNKtJA%Bc9EjGi|duVS;(St%Z~gb<;l5&Zqo3KSg3iw?({PRGw?iU zH9Brab1ONs+pV&9=YuU0vltKw{xyj*abgQ*vZqfuIYDi)_}X_sVgJv7dEhqzo^T=C zq}Kl@73v}mJu8%oo&5S_cags8UAD;`mTlU;FJ}V4N}s?s9?Lu!vS8)+nRvNW)jjaM z;56B}>wi^5U~wLnVCFDln!H-;EP)%+VmRe^;=`}y?RcliI(Yr~Yn7E=-CE}1+#xQ3 z;1NHHN4Ak~QuY8?!~}*NM_7Wg+1V5w#%}_b;cN}ZW?)FBWTFIa$5rFBSMLYdo$YY5 z_V?i&aQVJmrus%pvi+>|YJZ13T>KThE{XxzqfuZ7D6y{C4>QEZE$_8c&eeauIlN`q z?0eVy01+n}%MF+PbIxG`$!m=V+6wCNy+JY-m;{6|xYPNlEffD~jkG^ve1SG`v0LBa zUxGo;0_*1Eld(+nElw`d<3}NbE!w$B`x8v3u>kFP#lf8rpXLG6ViD0i={*RK(H-iMW l!~8pi_U0WbdtU_KxFN0IQ%-oZfH|7q#D!&kR|)C`{0DEXaQpxO diff --git a/docs/open.png b/docs/open.png deleted file mode 100644 index 2011ce11312fb54e8c1d8139850efcf1d52cadb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{VPM$7~Ar*{o=N{x_P~>4z*F4dm z8?i3;$Hs-$B1(!Y^5-+pzU#@)uwHTPb^Zr!&q7!p9Jz6o$>GQ^&9^S~`X~86K4kwc Wz;Pz(kQO7*GzL#sKbLh*2~7a}x+nMm diff --git a/docs/pages.html b/docs/pages.html deleted file mode 100644 index ab71acb..0000000 --- a/docs/pages.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Related Pages - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    Related Pages
    -
    -
    -
    Here is a list of all related documentation pages:
    - - -
     Hazelnupp
    -
    -
    - - - - diff --git a/docs/readme_8md.html b/docs/readme_8md.html deleted file mode 100644 index 79490f2..0000000 --- a/docs/readme_8md.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: readme.md File Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    -
    -
    -
    readme.md File Reference
    -
    -
    -
    - - - - diff --git a/docs/search/all_0.html b/docs/search/all_0.html deleted file mode 100644 index 26dd244..0000000 --- a/docs/search/all_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_0.js b/docs/search/all_0.js deleted file mode 100644 index 7040121..0000000 --- a/docs/search/all_0.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['addincompatibilities_0',['AddIncompatibilities',['../structHazelnp_1_1ParamConstraint.html#ae335d099a2735b77239ad7eec5136991',1,'Hazelnp::ParamConstraint::AddIncompatibilities(const std::string &incompatibleParameters)'],['../structHazelnp_1_1ParamConstraint.html#a207eead7df641c7741082687db654e55',1,'Hazelnp::ParamConstraint::AddIncompatibilities(const std::initializer_list< std::string > &incompatibleParameters)']]], - ['addrequire_1',['AddRequire',['../structHazelnp_1_1ParamConstraint.html#ac23b54cad8636b3f64a27b51161b8749',1,'Hazelnp::ParamConstraint']]], - ['addtypesafety_2',['AddTypeSafety',['../structHazelnp_1_1ParamConstraint.html#ae057d0d8186c0a7936405096a58be981',1,'Hazelnp::ParamConstraint']]], - ['addvalue_3',['AddValue',['../classHazelnp_1_1ListValue.html#af8787d266aa353d3f96e2c76cce76c41',1,'Hazelnp::ListValue']]] -]; diff --git a/docs/search/all_1.html b/docs/search/all_1.html deleted file mode 100644 index 8eb215b..0000000 --- a/docs/search/all_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_1.js b/docs/search/all_1.js deleted file mode 100644 index 3dabdd9..0000000 --- a/docs/search/all_1.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['clearabbreviation_4',['ClearAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a31f690bd95d5469d38af816183cbe3e7',1,'Hazelnp::CmdArgsInterface']]], - ['clearabbreviations_5',['ClearAbbreviations',['../classHazelnp_1_1CmdArgsInterface.html#a019e48f48427e7caa76c964bd0f117d0',1,'Hazelnp::CmdArgsInterface']]], - ['clearconstraint_6',['ClearConstraint',['../classHazelnp_1_1CmdArgsInterface.html#a112d2d5e3fd1cf1507592389c8454984',1,'Hazelnp::CmdArgsInterface']]], - ['clearconstraints_7',['ClearConstraints',['../classHazelnp_1_1CmdArgsInterface.html#ad472671fb12450b8d929418fbbffbe40',1,'Hazelnp::CmdArgsInterface']]], - ['cleardescription_8',['ClearDescription',['../classHazelnp_1_1CmdArgsInterface.html#a62889ce1faa90d0f20be3ae45803baa0',1,'Hazelnp::CmdArgsInterface']]], - ['cleardescriptions_9',['ClearDescriptions',['../classHazelnp_1_1CmdArgsInterface.html#a328dbc265e7ffa9ab526ed8aa755e107',1,'Hazelnp::CmdArgsInterface']]], - ['cmdargsinterface_10',['CmdArgsInterface',['../classHazelnp_1_1CmdArgsInterface.html',1,'Hazelnp::CmdArgsInterface'],['../structHazelnp_1_1ParamConstraint.html#a01773a2aa9845fd639f63468586b67b0',1,'Hazelnp::ParamConstraint::CmdArgsInterface()'],['../classHazelnp_1_1CmdArgsInterface.html#aa1189c249bf0d8a4fbd5fb8f03a30212',1,'Hazelnp::CmdArgsInterface::CmdArgsInterface()'],['../classHazelnp_1_1CmdArgsInterface.html#ad79ff83ead06900eb7b45d6c563703d9',1,'Hazelnp::CmdArgsInterface::CmdArgsInterface(const int argc, const char *const *argv)']]], - ['cmdargsinterface_2ecpp_11',['CmdArgsInterface.cpp',['../CmdArgsInterface_8cpp.html',1,'']]], - ['cmdargsinterface_2eh_12',['CmdArgsInterface.h',['../CmdArgsInterface_8h.html',1,'']]], - ['constraintype_13',['constrainType',['../structHazelnp_1_1ParamConstraint.html#a88a4a4c215723259c71853992d09acac',1,'Hazelnp::ParamConstraint']]], - ['contains_14',['Contains',['../classHazelnp_1_1Internal_1_1StringTools.html#a4f1ff9fb44995407ea45b8c7c67ffeb6',1,'Hazelnp::Internal::StringTools']]] -]; diff --git a/docs/search/all_10.html b/docs/search/all_10.html deleted file mode 100644 index 6fd3a4a..0000000 --- a/docs/search/all_10.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_10.js b/docs/search/all_10.js deleted file mode 100644 index 52427b9..0000000 --- a/docs/search/all_10.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['what_118',['What',['../classHazelnp_1_1HazelnuppException.html#aa86c415a0f2b4ea5f11892145d1ea83e',1,'Hazelnp::HazelnuppException']]] -]; diff --git a/docs/search/all_11.html b/docs/search/all_11.html deleted file mode 100644 index f78343b..0000000 --- a/docs/search/all_11.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_11.js b/docs/search/all_11.js deleted file mode 100644 index e38cc88..0000000 --- a/docs/search/all_11.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['_7ecmdargsinterface_119',['~CmdArgsInterface',['../classHazelnp_1_1CmdArgsInterface.html#aadc75b3b6c9662cfbd4a936468d50466',1,'Hazelnp::CmdArgsInterface']]], - ['_7efloatvalue_120',['~FloatValue',['../classHazelnp_1_1FloatValue.html#a02e61e453c3e8e32d4d527799c11fd4a',1,'Hazelnp::FloatValue']]], - ['_7eintvalue_121',['~IntValue',['../classHazelnp_1_1IntValue.html#af69f25847b0666f9d6c1bb1fed18d917',1,'Hazelnp::IntValue']]], - ['_7elistvalue_122',['~ListValue',['../classHazelnp_1_1ListValue.html#a91f1450f299d46b3301774a6b4eb6c18',1,'Hazelnp::ListValue']]], - ['_7eparameter_123',['~Parameter',['../classHazelnp_1_1Parameter.html#a6e2ade42a712f1d3675653329266e42d',1,'Hazelnp::Parameter']]], - ['_7estringvalue_124',['~StringValue',['../classHazelnp_1_1StringValue.html#a5176062e2110d121466a6855fdc65d6d',1,'Hazelnp::StringValue']]], - ['_7evalue_125',['~Value',['../classHazelnp_1_1Value.html#a977dea61ee5b00b6c6d77ad6ad2c8d4c',1,'Hazelnp::Value']]], - ['_7evoidvalue_126',['~VoidValue',['../classHazelnp_1_1VoidValue.html#a6024b40919c3a6acea92be0439be2db0',1,'Hazelnp::VoidValue']]] -]; diff --git a/docs/search/all_12.html b/docs/search/all_12.html deleted file mode 100644 index dd9ff1d..0000000 --- a/docs/search/all_12.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_12.js b/docs/search/all_12.js deleted file mode 100644 index a02268b..0000000 --- a/docs/search/all_12.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['_7efloatvalue_103',['~FloatValue',['../classFloatValue.html#a5c6c7a2c805ac0207d325edd28a5db1c',1,'FloatValue']]], - ['_7ehazelnupp_104',['~Hazelnupp',['../classHazelnupp.html#a25f8810d24d647b6a57e2dd00ead42be',1,'Hazelnupp']]], - ['_7eintvalue_105',['~IntValue',['../classIntValue.html#a45514417be35da78376822a0dd50f488',1,'IntValue']]], - ['_7elistvalue_106',['~ListValue',['../classListValue.html#a91f1450f299d46b3301774a6b4eb6c18',1,'ListValue']]], - ['_7eparameter_107',['~Parameter',['../classParameter.html#a6e2ade42a712f1d3675653329266e42d',1,'Parameter']]], - ['_7estringvalue_108',['~StringValue',['../classStringValue.html#a829a8f064ec6b31b57d1dbebc8cd05d8',1,'StringValue']]], - ['_7evalue_109',['~Value',['../classValue.html#aceb26b90be781020c0c71ae5d16ca06f',1,'Value']]], - ['_7evoidvalue_110',['~VoidValue',['../classVoidValue.html#a8229e255a6fc31da4a4ec7aba97d4111',1,'VoidValue']]] -]; diff --git a/docs/search/all_2.html b/docs/search/all_2.html deleted file mode 100644 index b26d916..0000000 --- a/docs/search/all_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_2.js b/docs/search/all_2.js deleted file mode 100644 index 64f28e6..0000000 --- a/docs/search/all_2.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['data_5ftype_15',['DATA_TYPE',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803f',1,'Hazelnp']]], - ['datatype_2eh_16',['DataType.h',['../DataType_8h.html',1,'']]], - ['datatypetostring_17',['DataTypeToString',['../namespaceHazelnp.html#a7fb1e5ad9e2ecb6c0025beb19f11621b',1,'Hazelnp']]], - ['deepcopy_18',['Deepcopy',['../classHazelnp_1_1FloatValue.html#ab071916339a0d5a266d821ebbc8f12b0',1,'Hazelnp::FloatValue::Deepcopy()'],['../classHazelnp_1_1IntValue.html#aa599004242b27f8f3e246b88742b034e',1,'Hazelnp::IntValue::Deepcopy()'],['../classHazelnp_1_1ListValue.html#a51c89ff315026b03d908345c6f58169d',1,'Hazelnp::ListValue::Deepcopy()'],['../classHazelnp_1_1StringValue.html#a1952487a786fb53cb0b9aefdb3367268',1,'Hazelnp::StringValue::Deepcopy()'],['../classHazelnp_1_1Value.html#aec9bc16f1630734c79bc69e916622dc6',1,'Hazelnp::Value::Deepcopy()'],['../classHazelnp_1_1VoidValue.html#ac36e85add840057659ec24484548165f',1,'Hazelnp::VoidValue::Deepcopy()']]], - ['defaultvalue_19',['defaultValue',['../structHazelnp_1_1ParamConstraint.html#a1d3a627b3a23fe0db3a368e51dbcd5a7',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/all_3.html b/docs/search/all_3.html deleted file mode 100644 index b61b96f..0000000 --- a/docs/search/all_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_3.js b/docs/search/all_3.js deleted file mode 100644 index 30f3d13..0000000 --- a/docs/search/all_3.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['float_20',['FLOAT',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fae738c26bf4ce1037fa81b039a915cbf6',1,'Hazelnp']]], - ['floatvalue_21',['FloatValue',['../classHazelnp_1_1FloatValue.html',1,'Hazelnp::FloatValue'],['../classHazelnp_1_1FloatValue.html#a6bb35564e3331a3feb57b08caad0df44',1,'Hazelnp::FloatValue::FloatValue()']]], - ['floatvalue_2ecpp_22',['FloatValue.cpp',['../FloatValue_8cpp.html',1,'']]], - ['floatvalue_2eh_23',['FloatValue.h',['../FloatValue_8h.html',1,'']]] -]; diff --git a/docs/search/all_4.html b/docs/search/all_4.html deleted file mode 100644 index 06de155..0000000 --- a/docs/search/all_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_4.js b/docs/search/all_4.js deleted file mode 100644 index 3b9f8e1..0000000 --- a/docs/search/all_4.js +++ /dev/null @@ -1,21 +0,0 @@ -var searchData= -[ - ['g_5femptystring_24',['g_emptyString',['../namespaceHazelnp_1_1Placeholders.html#a90536f0cd5261b18da736e954c6b8b79',1,'Hazelnp::Placeholders']]], - ['generatedocumentation_25',['GenerateDocumentation',['../classHazelnp_1_1CmdArgsInterface.html#a9b9bc5c4443799ea847077e9cefb1927',1,'Hazelnp::CmdArgsInterface']]], - ['getabbreviation_26',['GetAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a1486bfef870e6502aefc23b11ce6caaf',1,'Hazelnp::CmdArgsInterface']]], - ['getasosstring_27',['GetAsOsString',['../classHazelnp_1_1FloatValue.html#a6c9a4b70a7618252f56d9062c483531c',1,'Hazelnp::FloatValue::GetAsOsString()'],['../classHazelnp_1_1IntValue.html#a7d7dbda9a051084600d3eabdac96ee45',1,'Hazelnp::IntValue::GetAsOsString()'],['../classHazelnp_1_1ListValue.html#a5b1f8af329e48c5469fee16634b7889c',1,'Hazelnp::ListValue::GetAsOsString()'],['../classHazelnp_1_1StringValue.html#a71869ee46b88a3cbb9571f481f0c216d',1,'Hazelnp::StringValue::GetAsOsString()'],['../classHazelnp_1_1Value.html#ae1fdc694ed1c2b3080ad3929efda0a0e',1,'Hazelnp::Value::GetAsOsString()'],['../classHazelnp_1_1VoidValue.html#a44b1917d9ba41ee91e2131432e01ec90',1,'Hazelnp::VoidValue::GetAsOsString()']]], - ['getbriefdescription_28',['GetBriefDescription',['../classHazelnp_1_1CmdArgsInterface.html#a1945208a97707b2e3c654424f0760441',1,'Hazelnp::CmdArgsInterface']]], - ['getcatchhelp_29',['GetCatchHelp',['../classHazelnp_1_1CmdArgsInterface.html#a1026d98c23659b6d3d108b231806a1e3',1,'Hazelnp::CmdArgsInterface']]], - ['getconstraint_30',['GetConstraint',['../classHazelnp_1_1CmdArgsInterface.html#adec82884377a5193f68dcc7b6ef69d8b',1,'Hazelnp::CmdArgsInterface']]], - ['getcrashonfail_31',['GetCrashOnFail',['../classHazelnp_1_1CmdArgsInterface.html#a3e60c7a90c11bdc634d0f5d0dba5064c',1,'Hazelnp::CmdArgsInterface']]], - ['getdatatype_32',['GetDataType',['../classHazelnp_1_1Value.html#adbb80bf6d455a316e6e5103353429993',1,'Hazelnp::Value']]], - ['getdescription_33',['GetDescription',['../classHazelnp_1_1CmdArgsInterface.html#a89bc3f54d7ff0740549dbdf7b7f727e3',1,'Hazelnp::CmdArgsInterface']]], - ['getexecutablename_34',['GetExecutableName',['../classHazelnp_1_1CmdArgsInterface.html#afe83a815b21d37b3d2a6d0ef67137faf',1,'Hazelnp::CmdArgsInterface']]], - ['getfloat32_35',['GetFloat32',['../classHazelnp_1_1FloatValue.html#a1653ab3f4fa1700cf1b618ac6552ea81',1,'Hazelnp::FloatValue::GetFloat32()'],['../classHazelnp_1_1IntValue.html#ad0734e4cf67bac0bcc58251a4b3e56c4',1,'Hazelnp::IntValue::GetFloat32()'],['../classHazelnp_1_1ListValue.html#a637fec02ed7f7325554e494fc7cd4e86',1,'Hazelnp::ListValue::GetFloat32()'],['../classHazelnp_1_1StringValue.html#a31fc4d2517a7454c1e9f329df2f14be7',1,'Hazelnp::StringValue::GetFloat32()'],['../classHazelnp_1_1Value.html#a64eeb2943ccea6e16ce4e6f53a6e9b6d',1,'Hazelnp::Value::GetFloat32()'],['../classHazelnp_1_1VoidValue.html#a6d39d2983e54e1a407c66e303273aa48',1,'Hazelnp::VoidValue::GetFloat32()']]], - ['getfloat64_36',['GetFloat64',['../classHazelnp_1_1FloatValue.html#add33b370ef691ccb2f0957d0fe4ef6f9',1,'Hazelnp::FloatValue::GetFloat64()'],['../classHazelnp_1_1IntValue.html#a5ceb2030e8a2a665953fdd4f1715e6a5',1,'Hazelnp::IntValue::GetFloat64()'],['../classHazelnp_1_1ListValue.html#a571178db1c9d23f6c685ea8898dbb60e',1,'Hazelnp::ListValue::GetFloat64()'],['../classHazelnp_1_1StringValue.html#a74bedb828c901a4895062f62303b9653',1,'Hazelnp::StringValue::GetFloat64()'],['../classHazelnp_1_1Value.html#af645b9d78970d102360be37fc18e9e8a',1,'Hazelnp::Value::GetFloat64()'],['../classHazelnp_1_1VoidValue.html#a18b6f0d697c5f9286372a05927e4759c',1,'Hazelnp::VoidValue::GetFloat64()']]], - ['getint32_37',['GetInt32',['../classHazelnp_1_1FloatValue.html#a565741e80cd99a4d2af861ddc3c2dc99',1,'Hazelnp::FloatValue::GetInt32()'],['../classHazelnp_1_1IntValue.html#a163f21536fa49491aa0ae03c8091344a',1,'Hazelnp::IntValue::GetInt32()'],['../classHazelnp_1_1ListValue.html#a565c2b86fcfb3a13de29e59d95a358e7',1,'Hazelnp::ListValue::GetInt32()'],['../classHazelnp_1_1StringValue.html#ac8b53a7792ff1ed048722e2e404f3e6b',1,'Hazelnp::StringValue::GetInt32()'],['../classHazelnp_1_1Value.html#a2cb73333bdeca657dfbf6c8b2e50a5ef',1,'Hazelnp::Value::GetInt32()'],['../classHazelnp_1_1VoidValue.html#a5b7f50c390ef8f3636ba211a72a78065',1,'Hazelnp::VoidValue::GetInt32()']]], - ['getint64_38',['GetInt64',['../classHazelnp_1_1FloatValue.html#a762520d504d4564c48cf3bbefbb0f183',1,'Hazelnp::FloatValue::GetInt64()'],['../classHazelnp_1_1IntValue.html#ae0643023dfd56eafe2e3da5a4ba13080',1,'Hazelnp::IntValue::GetInt64()'],['../classHazelnp_1_1ListValue.html#a9a7a1161ddeb3e56eaafee5f10f75995',1,'Hazelnp::ListValue::GetInt64()'],['../classHazelnp_1_1StringValue.html#aabdc7d681945403d24df6a8fe27948af',1,'Hazelnp::StringValue::GetInt64()'],['../classHazelnp_1_1Value.html#a92d75905211e964cb900bdc868ed12a7',1,'Hazelnp::Value::GetInt64()'],['../classHazelnp_1_1VoidValue.html#a3806945596866f3630dc5426a6b55e58',1,'Hazelnp::VoidValue::GetInt64()']]], - ['getlist_39',['GetList',['../classHazelnp_1_1FloatValue.html#a60b2698f28f1aacac0b67b6453c89fd1',1,'Hazelnp::FloatValue::GetList()'],['../classHazelnp_1_1IntValue.html#acc74ba6070a516a4bcad10bb113d6fa2',1,'Hazelnp::IntValue::GetList()'],['../classHazelnp_1_1ListValue.html#ad578d9088c0375cd9b9c6658e5d9ba1f',1,'Hazelnp::ListValue::GetList()'],['../classHazelnp_1_1StringValue.html#a2b2810350b5eb7e58062ad095320aa69',1,'Hazelnp::StringValue::GetList()'],['../classHazelnp_1_1Value.html#a358092f951e817cd2a878225b5b1c869',1,'Hazelnp::Value::GetList()'],['../classHazelnp_1_1VoidValue.html#aba53ae37d415959b583f33f3e381be16',1,'Hazelnp::VoidValue::GetList()']]], - ['getstring_40',['GetString',['../classHazelnp_1_1FloatValue.html#afd5d078683f410cb9d450c61f12f250d',1,'Hazelnp::FloatValue::GetString()'],['../classHazelnp_1_1IntValue.html#a3631e3b16f010889e942c0c0f72d403c',1,'Hazelnp::IntValue::GetString()'],['../classHazelnp_1_1ListValue.html#aeaf80c07236045a77d72349ebcfc3b89',1,'Hazelnp::ListValue::GetString()'],['../classHazelnp_1_1StringValue.html#a7ed55493cfd25274f8571c1ea45f93e5',1,'Hazelnp::StringValue::GetString()'],['../classHazelnp_1_1Value.html#a1446705c062026f03866d0f452c39501',1,'Hazelnp::Value::GetString()'],['../classHazelnp_1_1VoidValue.html#a5af0c47a873b84226df47a90e63b2acd',1,'Hazelnp::VoidValue::GetString()']]], - ['getvalue_41',['GetValue',['../classHazelnp_1_1FloatValue.html#a2ad79d8bfe75e45120d1fce132a89b8f',1,'Hazelnp::FloatValue::GetValue()'],['../classHazelnp_1_1IntValue.html#a89967cafbdeb21362336067b772808c7',1,'Hazelnp::IntValue::GetValue()'],['../classHazelnp_1_1ListValue.html#a7907ae7433e4011157f1b31dd5339702',1,'Hazelnp::ListValue::GetValue()'],['../classHazelnp_1_1Parameter.html#a4ab8ba022bde4a0175e5ceb8e3a598af',1,'Hazelnp::Parameter::GetValue()'],['../classHazelnp_1_1StringValue.html#a521a573887a3f31718f74e71ff01e86e',1,'Hazelnp::StringValue::GetValue()']]] -]; diff --git a/docs/search/all_5.html b/docs/search/all_5.html deleted file mode 100644 index 2544c4e..0000000 --- a/docs/search/all_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_5.js b/docs/search/all_5.js deleted file mode 100644 index 72a3052..0000000 --- a/docs/search/all_5.js +++ /dev/null @@ -1,20 +0,0 @@ -var searchData= -[ - ['hasabbreviation_42',['HasAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a58b81709e631cee5f3db3f3f48611fe9',1,'Hazelnp::CmdArgsInterface']]], - ['hasdescription_43',['HasDescription',['../classHazelnp_1_1CmdArgsInterface.html#a5003f826ee31c6365bf4b6e8b2c8d9f1',1,'Hazelnp::CmdArgsInterface']]], - ['hasparam_44',['HasParam',['../classHazelnp_1_1CmdArgsInterface.html#a3a7fa36fe69ee8bf3b400983a21ecd24',1,'Hazelnp::CmdArgsInterface']]], - ['hazelnp_45',['Hazelnp',['../namespaceHazelnp.html',1,'']]], - ['hazelnupp_2evcxproj_2efilelistabsolute_2etxt_46',['Hazelnupp.vcxproj.FileListAbsolute.txt',['../Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)'],['../Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)']]], - ['hazelnupp_5fversion_47',['HAZELNUPP_VERSION',['../Version_8h.html#a5ade51e925f9cad08d64d4021c8312a0',1,'Version.h']]], - ['hazelnuppconstraintexception_48',['HazelnuppConstraintException',['../classHazelnp_1_1HazelnuppConstraintException.html',1,'Hazelnp::HazelnuppConstraintException'],['../classHazelnp_1_1HazelnuppConstraintException.html#a4d08002a96bf9b3da3c6e931a51960e9',1,'Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException()'],['../classHazelnp_1_1HazelnuppConstraintException.html#a944f0e6a384e032a762c5892964e1cc0',1,'Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException(const std::string &msg)']]], - ['hazelnuppconstraintincompatibleparameters_49',['HazelnuppConstraintIncompatibleParameters',['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html',1,'Hazelnp::HazelnuppConstraintIncompatibleParameters'],['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html#a3eceb69d0d4794252ab41b0d2b22ef3d',1,'Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters()'],['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html#ad9427954049ceb66f42130ac8476dc46',1,'Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters(const std::string &key1, const std::string &key2)']]], - ['hazelnuppconstraintmissingvalue_50',['HazelnuppConstraintMissingValue',['../classHazelnp_1_1HazelnuppConstraintMissingValue.html',1,'Hazelnp::HazelnuppConstraintMissingValue'],['../classHazelnp_1_1HazelnuppConstraintMissingValue.html#aad4a7b5573790ddfbe1a453aef71eb10',1,'Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue()'],['../classHazelnp_1_1HazelnuppConstraintMissingValue.html#a192ef8133047beadf8fc9f585d384c04',1,'Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue(const std::string &key, const std::string &paramDescription="")']]], - ['hazelnuppconstrainttypemissmatch_51',['HazelnuppConstraintTypeMissmatch',['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html',1,'Hazelnp::HazelnuppConstraintTypeMissmatch'],['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#ab7c9e9afd9d3286e563a7656785242e8',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch()'],['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#a603d91c9af39e53b54e5aa288266cfe4',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch(const std::string &msg)'],['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#abd5ae6630884725b614e8fe603cccdc5',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch(const std::string &key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string &paramDescription="")']]], - ['hazelnuppexception_52',['HazelnuppException',['../classHazelnp_1_1HazelnuppException.html',1,'Hazelnp::HazelnuppException'],['../classHazelnp_1_1HazelnuppException.html#a0b21fd5d4f22e5e677b74eb0acd7c6ff',1,'Hazelnp::HazelnuppException::HazelnuppException()'],['../classHazelnp_1_1HazelnuppException.html#a816f823fe2ebd35076049e33b9f3c05c',1,'Hazelnp::HazelnuppException::HazelnuppException(const std::string &msg)']]], - ['hazelnuppexception_2eh_53',['HazelnuppException.h',['../HazelnuppException_8h.html',1,'']]], - ['hazelnuppinvalidkeyexception_54',['HazelnuppInvalidKeyException',['../classHazelnp_1_1HazelnuppInvalidKeyException.html',1,'Hazelnp::HazelnuppInvalidKeyException'],['../classHazelnp_1_1HazelnuppInvalidKeyException.html#ab23be8f7cb84129fa85ed1e7a0b280a0',1,'Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException()'],['../classHazelnp_1_1HazelnuppInvalidKeyException.html#a18a08dc4efe80a378216460db5769891',1,'Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException(const std::string &msg)']]], - ['hazelnuppvaluenotconvertibleexception_55',['HazelnuppValueNotConvertibleException',['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html',1,'Hazelnp::HazelnuppValueNotConvertibleException'],['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html#a0babee1bb5cec9fdd4abfd86995561f4',1,'Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException()'],['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html#a7ba376cd7fc7edcb934ee0257d4867f2',1,'Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException(const std::string &msg)']]], - ['hazelnupp_56',['Hazelnupp',['../index.html',1,'']]], - ['internal_57',['Internal',['../namespaceHazelnp_1_1Internal.html',1,'Hazelnp']]], - ['placeholders_58',['Placeholders',['../namespaceHazelnp_1_1Placeholders.html',1,'Hazelnp']]] -]; diff --git a/docs/search/all_6.html b/docs/search/all_6.html deleted file mode 100644 index 43f14ea..0000000 --- a/docs/search/all_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_6.js b/docs/search/all_6.js deleted file mode 100644 index 038c769..0000000 --- a/docs/search/all_6.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['incompatibility_59',['Incompatibility',['../structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871',1,'Hazelnp::ParamConstraint::Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)'],['../structHazelnp_1_1ParamConstraint.html#a6bb383f8945fb99cbd2370fd9a4bc6fc',1,'Hazelnp::ParamConstraint::Incompatibility(const std::string &incompatibleParameters)']]], - ['incompatibleparameters_60',['incompatibleParameters',['../structHazelnp_1_1ParamConstraint.html#acf45734665238b51483f77701039108c',1,'Hazelnp::ParamConstraint']]], - ['index_2emd_61',['index.md',['../index_8md.html',1,'']]], - ['int_62',['INT',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92',1,'Hazelnp']]], - ['intvalue_63',['IntValue',['../classHazelnp_1_1IntValue.html',1,'Hazelnp::IntValue'],['../classHazelnp_1_1IntValue.html#ac1174f807ce2c085f5a24baed4e3c1ba',1,'Hazelnp::IntValue::IntValue()']]], - ['intvalue_2ecpp_64',['IntValue.cpp',['../IntValue_8cpp.html',1,'']]], - ['intvalue_2eh_65',['IntValue.h',['../IntValue_8h.html',1,'']]], - ['isnumeric_66',['IsNumeric',['../classHazelnp_1_1Internal_1_1StringTools.html#a1abf1454a223165acfb52f2a246c8215',1,'Hazelnp::Internal::StringTools']]] -]; diff --git a/docs/search/all_7.html b/docs/search/all_7.html deleted file mode 100644 index af52f82..0000000 --- a/docs/search/all_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_7.js b/docs/search/all_7.js deleted file mode 100644 index 463500e..0000000 --- a/docs/search/all_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['key_67',['Key',['../classHazelnp_1_1Parameter.html#a7acd68ce06eec06ab286b1a062f9c8d6',1,'Hazelnp::Parameter']]] -]; diff --git a/docs/search/all_8.html b/docs/search/all_8.html deleted file mode 100644 index cf2b5df..0000000 --- a/docs/search/all_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_8.js b/docs/search/all_8.js deleted file mode 100644 index a6acfb2..0000000 --- a/docs/search/all_8.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['list_68',['LIST',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa298cb25408234de02baf2085803a464a',1,'Hazelnp']]], - ['listvalue_69',['ListValue',['../classHazelnp_1_1ListValue.html',1,'Hazelnp::ListValue'],['../classHazelnp_1_1ListValue.html#a6082aaa506b31496720a168da8ab2708',1,'Hazelnp::ListValue::ListValue()']]], - ['listvalue_2ecpp_70',['ListValue.cpp',['../ListValue_8cpp.html',1,'']]], - ['listvalue_2eh_71',['ListValue.h',['../ListValue_8h.html',1,'']]] -]; diff --git a/docs/search/all_9.html b/docs/search/all_9.html deleted file mode 100644 index 690785a..0000000 --- a/docs/search/all_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_9.js b/docs/search/all_9.js deleted file mode 100644 index 7ed3fb9..0000000 --- a/docs/search/all_9.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['message_72',['message',['../classHazelnp_1_1HazelnuppException.html#aa905cabcd12f542dfc67638732737e88',1,'Hazelnp::HazelnuppException']]] -]; diff --git a/docs/search/all_a.html b/docs/search/all_a.html deleted file mode 100644 index f2f3d3a..0000000 --- a/docs/search/all_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_a.js b/docs/search/all_a.js deleted file mode 100644 index cc5576d..0000000 --- a/docs/search/all_a.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['operator_20double_73',['operator double',['../classHazelnp_1_1FloatValue.html#ae02de376bbb2b76e0f9d16b1fc4de06d',1,'Hazelnp::FloatValue']]], - ['operator_20int_74',['operator int',['../classHazelnp_1_1IntValue.html#ab30a38c8f58cefd7cbf365c4aeae79bd',1,'Hazelnp::IntValue']]], - ['operator_20long_20double_75',['operator long double',['../classHazelnp_1_1FloatValue.html#ad0d4c589190fbab7e6c4d8fcc130ac1b',1,'Hazelnp::FloatValue']]], - ['operator_20long_20long_20int_76',['operator long long int',['../classHazelnp_1_1IntValue.html#a45b283dae9904ad0643035d3ee5883eb',1,'Hazelnp::IntValue']]], - ['operator_3c_3c_77',['operator<<',['../classHazelnp_1_1Parameter.html#a11b3529badcbf99b46262772472495c7',1,'Hazelnp::Parameter::operator<<()'],['../classHazelnp_1_1Value.html#ad29db86c4a2dec5bc8d0006031b07211',1,'Hazelnp::Value::operator<<()']]], - ['operator_5b_5d_78',['operator[]',['../classHazelnp_1_1CmdArgsInterface.html#af5e43c1067fb6c1074d9be3427c7a415',1,'Hazelnp::CmdArgsInterface']]], - ['string_79',['string',['../classHazelnp_1_1StringValue.html#a23449775f14f828d29b115de040a696b',1,'Hazelnp::StringValue']]], - ['vector_3c_20value_20_2a_20_3e_80',['vector< Value * >',['../classHazelnp_1_1ListValue.html#a5d92ff2b9a1fa92fbc303ac4d07765d0',1,'Hazelnp::ListValue']]] -]; diff --git a/docs/search/all_b.html b/docs/search/all_b.html deleted file mode 100644 index 14f3403..0000000 --- a/docs/search/all_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_b.js b/docs/search/all_b.js deleted file mode 100644 index 0a9380b..0000000 --- a/docs/search/all_b.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['paramconstraint_81',['ParamConstraint',['../structHazelnp_1_1ParamConstraint.html',1,'Hazelnp::ParamConstraint'],['../structHazelnp_1_1ParamConstraint.html#afa9e1b4378c9fa1b4a7b5b792c062cbe',1,'Hazelnp::ParamConstraint::ParamConstraint()=default'],['../structHazelnp_1_1ParamConstraint.html#aea39497a14939fa887c236ee1e755cb3',1,'Hazelnp::ParamConstraint::ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::initializer_list< std::string > &defaultValue, bool required, const std::initializer_list< std::string > &incompatibleParameters)']]], - ['paramconstraint_2eh_82',['ParamConstraint.h',['../ParamConstraint_8h.html',1,'']]], - ['parameter_83',['Parameter',['../classHazelnp_1_1Parameter.html',1,'Hazelnp::Parameter'],['../classHazelnp_1_1Parameter.html#a0c9faefc26cc9d8c886ef71e39e2f90c',1,'Hazelnp::Parameter::Parameter()']]], - ['parameter_2ecpp_84',['Parameter.cpp',['../Parameter_8cpp.html',1,'']]], - ['parameter_2eh_85',['Parameter.h',['../Parameter_8h.html',1,'']]], - ['parse_86',['Parse',['../classHazelnp_1_1CmdArgsInterface.html#a1f4845041e08b3335510de44fafaee19',1,'Hazelnp::CmdArgsInterface']]], - ['parsenumber_87',['ParseNumber',['../classHazelnp_1_1Internal_1_1StringTools.html#a3cc71bfffcad9a4334e74aac69dbfd68',1,'Hazelnp::Internal::StringTools']]], - ['placeholders_2eh_88',['Placeholders.h',['../Placeholders_8h.html',1,'']]] -]; diff --git a/docs/search/all_c.html b/docs/search/all_c.html deleted file mode 100644 index da60ab8..0000000 --- a/docs/search/all_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_c.js b/docs/search/all_c.js deleted file mode 100644 index 56eccd5..0000000 --- a/docs/search/all_c.js +++ /dev/null @@ -1,10 +0,0 @@ -var searchData= -[ - ['registerabbreviation_89',['RegisterAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#aaccf591a74408aeb4363033fe8cb2224',1,'Hazelnp::CmdArgsInterface']]], - ['registerconstraint_90',['RegisterConstraint',['../classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2',1,'Hazelnp::CmdArgsInterface']]], - ['registerdescription_91',['RegisterDescription',['../classHazelnp_1_1CmdArgsInterface.html#a6589d2e818ba32f2a3e5b5a6a5e2bf1e',1,'Hazelnp::CmdArgsInterface']]], - ['replace_92',['Replace',['../classHazelnp_1_1Internal_1_1StringTools.html#ac45f8b6d0572443e9d2597447091b000',1,'Hazelnp::Internal::StringTools::Replace(const std::string &str, const char find, const std::string &subst)'],['../classHazelnp_1_1Internal_1_1StringTools.html#afaebf388806c331db0757231b0366fd7',1,'Hazelnp::Internal::StringTools::Replace(const std::string &str, const std::string &find, const std::string &subst)']]], - ['require_93',['Require',['../structHazelnp_1_1ParamConstraint.html#a8a7e5d7ddffc3cfbb54ac6823dd7eded',1,'Hazelnp::ParamConstraint']]], - ['required_94',['required',['../structHazelnp_1_1ParamConstraint.html#a8ccf3ebecc2d9d0105e181814af2943c',1,'Hazelnp::ParamConstraint']]], - ['requiredtype_95',['requiredType',['../structHazelnp_1_1ParamConstraint.html#a203b6fd1b9788a529aa0f15fe94fd24a',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/all_d.html b/docs/search/all_d.html deleted file mode 100644 index bc376fe..0000000 --- a/docs/search/all_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_d.js b/docs/search/all_d.js deleted file mode 100644 index d87175a..0000000 --- a/docs/search/all_d.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['setbriefdescription_96',['SetBriefDescription',['../classHazelnp_1_1CmdArgsInterface.html#a67ba6cb3176884c85dd56fc9084ab66a',1,'Hazelnp::CmdArgsInterface']]], - ['setcatchhelp_97',['SetCatchHelp',['../classHazelnp_1_1CmdArgsInterface.html#abf553ed4acabf9e1db357715bc10533c',1,'Hazelnp::CmdArgsInterface']]], - ['setcrashonfail_98',['SetCrashOnFail',['../classHazelnp_1_1CmdArgsInterface.html#a16a3a02f77d240d8cf51cd4ee1797113',1,'Hazelnp::CmdArgsInterface']]], - ['splitstring_99',['SplitString',['../classHazelnp_1_1Internal_1_1StringTools.html#aaf3aae30ed06c37d18f79b8450061ad1',1,'Hazelnp::Internal::StringTools::SplitString(const std::string &str, const char delimiter)'],['../classHazelnp_1_1Internal_1_1StringTools.html#a8cb6e05d822c184a8e982327c01fdb03',1,'Hazelnp::Internal::StringTools::SplitString(const std::string &str, const std::string &delimiter)']]], - ['string_100',['STRING',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa63b588d5559f64f89a416e656880b949',1,'Hazelnp']]], - ['stringtools_101',['StringTools',['../classHazelnp_1_1Internal_1_1StringTools.html',1,'Hazelnp::Internal']]], - ['stringtools_2ecpp_102',['StringTools.cpp',['../StringTools_8cpp.html',1,'']]], - ['stringtools_2eh_103',['StringTools.h',['../StringTools_8h.html',1,'']]], - ['stringvalue_104',['StringValue',['../classHazelnp_1_1StringValue.html',1,'Hazelnp::StringValue'],['../classHazelnp_1_1StringValue.html#a24dad2deec92b51bf60a11400cc8c204',1,'Hazelnp::StringValue::StringValue()']]], - ['stringvalue_2ecpp_105',['StringValue.cpp',['../StringValue_8cpp.html',1,'']]], - ['stringvalue_2eh_106',['StringValue.h',['../StringValue_8h.html',1,'']]] -]; diff --git a/docs/search/all_e.html b/docs/search/all_e.html deleted file mode 100644 index 2e3c74d..0000000 --- a/docs/search/all_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_e.js b/docs/search/all_e.js deleted file mode 100644 index c5c481a..0000000 --- a/docs/search/all_e.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['tolower_107',['ToLower',['../classHazelnp_1_1Internal_1_1StringTools.html#a10f61d7d8bcbfee50882bae801c0e68c',1,'Hazelnp::Internal::StringTools']]], - ['type_108',['type',['../classHazelnp_1_1Value.html#ae5760a30c237095db595c466372e3c23',1,'Hazelnp::Value']]], - ['typesafety_109',['TypeSafety',['../structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/all_f.html b/docs/search/all_f.html deleted file mode 100644 index 246f8ab..0000000 --- a/docs/search/all_f.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/all_f.js b/docs/search/all_f.js deleted file mode 100644 index 8fa7ea1..0000000 --- a/docs/search/all_f.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['value_110',['Value',['../classHazelnp_1_1Value.html',1,'Hazelnp::Value'],['../classHazelnp_1_1Value.html#a8455d65bb2d939e850d6772dfbf8bfec',1,'Hazelnp::Value::Value()']]], - ['value_2ecpp_111',['Value.cpp',['../Value_8cpp.html',1,'']]], - ['value_2eh_112',['Value.h',['../Value_8h.html',1,'']]], - ['version_2eh_113',['Version.h',['../Version_8h.html',1,'']]], - ['void_114',['VOID',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa6d0c9fc747131795e6e5d0c5119f12cb',1,'Hazelnp']]], - ['voidvalue_115',['VoidValue',['../classHazelnp_1_1VoidValue.html',1,'Hazelnp::VoidValue'],['../classHazelnp_1_1VoidValue.html#a75abf334b7f55cd149d2bb1962f2d8f1',1,'Hazelnp::VoidValue::VoidValue()']]], - ['voidvalue_2ecpp_116',['VoidValue.cpp',['../VoidValue_8cpp.html',1,'']]], - ['voidvalue_2eh_117',['VoidValue.h',['../VoidValue_8h.html',1,'']]] -]; diff --git a/docs/search/classes_0.html b/docs/search/classes_0.html deleted file mode 100644 index f7e4c14..0000000 --- a/docs/search/classes_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_0.js b/docs/search/classes_0.js deleted file mode 100644 index d085b18..0000000 --- a/docs/search/classes_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['cmdargsinterface_127',['CmdArgsInterface',['../classHazelnp_1_1CmdArgsInterface.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_1.html b/docs/search/classes_1.html deleted file mode 100644 index c7ff4b3..0000000 --- a/docs/search/classes_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_1.js b/docs/search/classes_1.js deleted file mode 100644 index 0f471bc..0000000 --- a/docs/search/classes_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['floatvalue_128',['FloatValue',['../classHazelnp_1_1FloatValue.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_2.html b/docs/search/classes_2.html deleted file mode 100644 index 0d1e8a0..0000000 --- a/docs/search/classes_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_2.js b/docs/search/classes_2.js deleted file mode 100644 index a85677e..0000000 --- a/docs/search/classes_2.js +++ /dev/null @@ -1,10 +0,0 @@ -var searchData= -[ - ['hazelnuppconstraintexception_129',['HazelnuppConstraintException',['../classHazelnp_1_1HazelnuppConstraintException.html',1,'Hazelnp']]], - ['hazelnuppconstraintincompatibleparameters_130',['HazelnuppConstraintIncompatibleParameters',['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html',1,'Hazelnp']]], - ['hazelnuppconstraintmissingvalue_131',['HazelnuppConstraintMissingValue',['../classHazelnp_1_1HazelnuppConstraintMissingValue.html',1,'Hazelnp']]], - ['hazelnuppconstrainttypemissmatch_132',['HazelnuppConstraintTypeMissmatch',['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html',1,'Hazelnp']]], - ['hazelnuppexception_133',['HazelnuppException',['../classHazelnp_1_1HazelnuppException.html',1,'Hazelnp']]], - ['hazelnuppinvalidkeyexception_134',['HazelnuppInvalidKeyException',['../classHazelnp_1_1HazelnuppInvalidKeyException.html',1,'Hazelnp']]], - ['hazelnuppvaluenotconvertibleexception_135',['HazelnuppValueNotConvertibleException',['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_3.html b/docs/search/classes_3.html deleted file mode 100644 index 2102545..0000000 --- a/docs/search/classes_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_3.js b/docs/search/classes_3.js deleted file mode 100644 index 63570b9..0000000 --- a/docs/search/classes_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['intvalue_136',['IntValue',['../classHazelnp_1_1IntValue.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_4.html b/docs/search/classes_4.html deleted file mode 100644 index 095ab59..0000000 --- a/docs/search/classes_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_4.js b/docs/search/classes_4.js deleted file mode 100644 index 8d56088..0000000 --- a/docs/search/classes_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['listvalue_137',['ListValue',['../classHazelnp_1_1ListValue.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_5.html b/docs/search/classes_5.html deleted file mode 100644 index fc9cdc9..0000000 --- a/docs/search/classes_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_5.js b/docs/search/classes_5.js deleted file mode 100644 index d8ca1d2..0000000 --- a/docs/search/classes_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['paramconstraint_138',['ParamConstraint',['../structHazelnp_1_1ParamConstraint.html',1,'Hazelnp']]], - ['parameter_139',['Parameter',['../classHazelnp_1_1Parameter.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_6.html b/docs/search/classes_6.html deleted file mode 100644 index 1ecfddd..0000000 --- a/docs/search/classes_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_6.js b/docs/search/classes_6.js deleted file mode 100644 index 45d58d8..0000000 --- a/docs/search/classes_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['stringtools_140',['StringTools',['../classHazelnp_1_1Internal_1_1StringTools.html',1,'Hazelnp::Internal']]], - ['stringvalue_141',['StringValue',['../classHazelnp_1_1StringValue.html',1,'Hazelnp']]] -]; diff --git a/docs/search/classes_7.html b/docs/search/classes_7.html deleted file mode 100644 index 0fc6fc3..0000000 --- a/docs/search/classes_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/classes_7.js b/docs/search/classes_7.js deleted file mode 100644 index bce960f..0000000 --- a/docs/search/classes_7.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['value_142',['Value',['../classHazelnp_1_1Value.html',1,'Hazelnp']]], - ['voidvalue_143',['VoidValue',['../classHazelnp_1_1VoidValue.html',1,'Hazelnp']]] -]; diff --git a/docs/search/close.png b/docs/search/close.png deleted file mode 100644 index 9342d3dfeea7b7c4ee610987e717804b5a42ceb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN diff --git a/docs/search/defines_0.html b/docs/search/defines_0.html deleted file mode 100644 index 2deb369..0000000 --- a/docs/search/defines_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/defines_0.js b/docs/search/defines_0.js deleted file mode 100644 index 749ea17..0000000 --- a/docs/search/defines_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['hazelnupp_5fversion_269',['HAZELNUPP_VERSION',['../Version_8h.html#a5ade51e925f9cad08d64d4021c8312a0',1,'Version.h']]] -]; diff --git a/docs/search/enums_0.html b/docs/search/enums_0.html deleted file mode 100644 index 9669700..0000000 --- a/docs/search/enums_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enums_0.js b/docs/search/enums_0.js deleted file mode 100644 index 560bed7..0000000 --- a/docs/search/enums_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['data_5ftype_261',['DATA_TYPE',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803f',1,'Hazelnp']]] -]; diff --git a/docs/search/enumvalues_0.html b/docs/search/enumvalues_0.html deleted file mode 100644 index 9286248..0000000 --- a/docs/search/enumvalues_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enumvalues_0.js b/docs/search/enumvalues_0.js deleted file mode 100644 index c907e26..0000000 --- a/docs/search/enumvalues_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['float_262',['FLOAT',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fae738c26bf4ce1037fa81b039a915cbf6',1,'Hazelnp']]] -]; diff --git a/docs/search/enumvalues_1.html b/docs/search/enumvalues_1.html deleted file mode 100644 index e22a79f..0000000 --- a/docs/search/enumvalues_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enumvalues_1.js b/docs/search/enumvalues_1.js deleted file mode 100644 index 8c7d2eb..0000000 --- a/docs/search/enumvalues_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['int_263',['INT',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92',1,'Hazelnp']]] -]; diff --git a/docs/search/enumvalues_2.html b/docs/search/enumvalues_2.html deleted file mode 100644 index 01a77bf..0000000 --- a/docs/search/enumvalues_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enumvalues_2.js b/docs/search/enumvalues_2.js deleted file mode 100644 index bdf636f..0000000 --- a/docs/search/enumvalues_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['list_264',['LIST',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa298cb25408234de02baf2085803a464a',1,'Hazelnp']]] -]; diff --git a/docs/search/enumvalues_3.html b/docs/search/enumvalues_3.html deleted file mode 100644 index 4e761d6..0000000 --- a/docs/search/enumvalues_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enumvalues_3.js b/docs/search/enumvalues_3.js deleted file mode 100644 index 3546288..0000000 --- a/docs/search/enumvalues_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['string_265',['STRING',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa63b588d5559f64f89a416e656880b949',1,'Hazelnp']]] -]; diff --git a/docs/search/enumvalues_4.html b/docs/search/enumvalues_4.html deleted file mode 100644 index e2977a0..0000000 --- a/docs/search/enumvalues_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/enumvalues_4.js b/docs/search/enumvalues_4.js deleted file mode 100644 index 2ba184f..0000000 --- a/docs/search/enumvalues_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['void_266',['VOID',['../namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa6d0c9fc747131795e6e5d0c5119f12cb',1,'Hazelnp']]] -]; diff --git a/docs/search/files_0.html b/docs/search/files_0.html deleted file mode 100644 index 737608e..0000000 --- a/docs/search/files_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_0.js b/docs/search/files_0.js deleted file mode 100644 index c39b3f4..0000000 --- a/docs/search/files_0.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['cmdargsinterface_2ecpp_147',['CmdArgsInterface.cpp',['../CmdArgsInterface_8cpp.html',1,'']]], - ['cmdargsinterface_2eh_148',['CmdArgsInterface.h',['../CmdArgsInterface_8h.html',1,'']]] -]; diff --git a/docs/search/files_1.html b/docs/search/files_1.html deleted file mode 100644 index f27a62d..0000000 --- a/docs/search/files_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_1.js b/docs/search/files_1.js deleted file mode 100644 index 6f56f1a..0000000 --- a/docs/search/files_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['datatype_2eh_149',['DataType.h',['../DataType_8h.html',1,'']]] -]; diff --git a/docs/search/files_2.html b/docs/search/files_2.html deleted file mode 100644 index a45066e..0000000 --- a/docs/search/files_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_2.js b/docs/search/files_2.js deleted file mode 100644 index bcc52cd..0000000 --- a/docs/search/files_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['floatvalue_2ecpp_150',['FloatValue.cpp',['../FloatValue_8cpp.html',1,'']]], - ['floatvalue_2eh_151',['FloatValue.h',['../FloatValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_3.html b/docs/search/files_3.html deleted file mode 100644 index 1076bc5..0000000 --- a/docs/search/files_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_3.js b/docs/search/files_3.js deleted file mode 100644 index b40d41b..0000000 --- a/docs/search/files_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['hazelnupp_2evcxproj_2efilelistabsolute_2etxt_152',['Hazelnupp.vcxproj.FileListAbsolute.txt',['../Debug_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)'],['../Release_2Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)']]], - ['hazelnuppexception_2eh_153',['HazelnuppException.h',['../HazelnuppException_8h.html',1,'']]] -]; diff --git a/docs/search/files_4.html b/docs/search/files_4.html deleted file mode 100644 index e5cd7f4..0000000 --- a/docs/search/files_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_4.js b/docs/search/files_4.js deleted file mode 100644 index 76779b1..0000000 --- a/docs/search/files_4.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['index_2emd_154',['index.md',['../index_8md.html',1,'']]], - ['intvalue_2ecpp_155',['IntValue.cpp',['../IntValue_8cpp.html',1,'']]], - ['intvalue_2eh_156',['IntValue.h',['../IntValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_5.html b/docs/search/files_5.html deleted file mode 100644 index 2cc480f..0000000 --- a/docs/search/files_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_5.js b/docs/search/files_5.js deleted file mode 100644 index 217867c..0000000 --- a/docs/search/files_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['listvalue_2ecpp_157',['ListValue.cpp',['../ListValue_8cpp.html',1,'']]], - ['listvalue_2eh_158',['ListValue.h',['../ListValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_6.html b/docs/search/files_6.html deleted file mode 100644 index 6510245..0000000 --- a/docs/search/files_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_6.js b/docs/search/files_6.js deleted file mode 100644 index 763cafb..0000000 --- a/docs/search/files_6.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['paramconstraint_2eh_159',['ParamConstraint.h',['../ParamConstraint_8h.html',1,'']]], - ['parameter_2ecpp_160',['Parameter.cpp',['../Parameter_8cpp.html',1,'']]], - ['parameter_2eh_161',['Parameter.h',['../Parameter_8h.html',1,'']]], - ['placeholders_2eh_162',['Placeholders.h',['../Placeholders_8h.html',1,'']]] -]; diff --git a/docs/search/files_7.html b/docs/search/files_7.html deleted file mode 100644 index 819f7b8..0000000 --- a/docs/search/files_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_7.js b/docs/search/files_7.js deleted file mode 100644 index 19a75fb..0000000 --- a/docs/search/files_7.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['stringtools_2ecpp_163',['StringTools.cpp',['../StringTools_8cpp.html',1,'']]], - ['stringtools_2eh_164',['StringTools.h',['../StringTools_8h.html',1,'']]], - ['stringvalue_2ecpp_165',['StringValue.cpp',['../StringValue_8cpp.html',1,'']]], - ['stringvalue_2eh_166',['StringValue.h',['../StringValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_8.html b/docs/search/files_8.html deleted file mode 100644 index fa1a27f..0000000 --- a/docs/search/files_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_8.js b/docs/search/files_8.js deleted file mode 100644 index 3a46a00..0000000 --- a/docs/search/files_8.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['value_2ecpp_167',['Value.cpp',['../Value_8cpp.html',1,'']]], - ['value_2eh_168',['Value.h',['../Value_8h.html',1,'']]], - ['version_2eh_169',['Version.h',['../Version_8h.html',1,'']]], - ['voidvalue_2ecpp_170',['VoidValue.cpp',['../VoidValue_8cpp.html',1,'']]], - ['voidvalue_2eh_171',['VoidValue.h',['../VoidValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_9.html b/docs/search/files_9.html deleted file mode 100644 index 3af3e47..0000000 --- a/docs/search/files_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_9.js b/docs/search/files_9.js deleted file mode 100644 index fd06a3e..0000000 --- a/docs/search/files_9.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['paramconstraint_2eh_145',['ParamConstraint.h',['../ParamConstraint_8h.html',1,'']]], - ['parameter_2ecpp_146',['Parameter.cpp',['../Parameter_8cpp.html',1,'']]], - ['parameter_2eh_147',['Parameter.h',['../Parameter_8h.html',1,'']]] -]; diff --git a/docs/search/files_a.html b/docs/search/files_a.html deleted file mode 100644 index 17f65ad..0000000 --- a/docs/search/files_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_a.js b/docs/search/files_a.js deleted file mode 100644 index 51ad956..0000000 --- a/docs/search/files_a.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['readme_2emd_148',['readme.md',['../readme_8md.html',1,'']]] -]; diff --git a/docs/search/files_b.html b/docs/search/files_b.html deleted file mode 100644 index aaa7731..0000000 --- a/docs/search/files_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_b.js b/docs/search/files_b.js deleted file mode 100644 index 31af2b3..0000000 --- a/docs/search/files_b.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['stringtools_2ecpp_149',['StringTools.cpp',['../StringTools_8cpp.html',1,'']]], - ['stringtools_2eh_150',['StringTools.h',['../StringTools_8h.html',1,'']]], - ['stringvalue_2ecpp_151',['StringValue.cpp',['../StringValue_8cpp.html',1,'']]], - ['stringvalue_2eh_152',['StringValue.h',['../StringValue_8h.html',1,'']]] -]; diff --git a/docs/search/files_c.html b/docs/search/files_c.html deleted file mode 100644 index 79e7963..0000000 --- a/docs/search/files_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_c.js b/docs/search/files_c.js deleted file mode 100644 index ecd6060..0000000 --- a/docs/search/files_c.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['test_5fhazelnupp_2evcxproj_2efilelistabsolute_2etxt_153',['Test_Hazelnupp.vcxproj.FileListAbsolute.txt',['../Debug_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)'],['../Release_2Test__Hazelnupp_8vcxproj_8FileListAbsolute_8txt.html',1,'(Global Namespace)']]] -]; diff --git a/docs/search/files_d.html b/docs/search/files_d.html deleted file mode 100644 index 94b2ff2..0000000 --- a/docs/search/files_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/files_d.js b/docs/search/files_d.js deleted file mode 100644 index d261589..0000000 --- a/docs/search/files_d.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['value_2ecpp_154',['Value.cpp',['../Value_8cpp.html',1,'']]], - ['value_2eh_155',['Value.h',['../Value_8h.html',1,'']]], - ['voidvalue_2ecpp_156',['VoidValue.cpp',['../VoidValue_8cpp.html',1,'']]], - ['voidvalue_2eh_157',['VoidValue.h',['../VoidValue_8h.html',1,'']]] -]; diff --git a/docs/search/functions_0.html b/docs/search/functions_0.html deleted file mode 100644 index e17c711..0000000 --- a/docs/search/functions_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_0.js b/docs/search/functions_0.js deleted file mode 100644 index 2137edf..0000000 --- a/docs/search/functions_0.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['addincompatibilities_172',['AddIncompatibilities',['../structHazelnp_1_1ParamConstraint.html#ae335d099a2735b77239ad7eec5136991',1,'Hazelnp::ParamConstraint::AddIncompatibilities(const std::string &incompatibleParameters)'],['../structHazelnp_1_1ParamConstraint.html#a207eead7df641c7741082687db654e55',1,'Hazelnp::ParamConstraint::AddIncompatibilities(const std::initializer_list< std::string > &incompatibleParameters)']]], - ['addrequire_173',['AddRequire',['../structHazelnp_1_1ParamConstraint.html#ac23b54cad8636b3f64a27b51161b8749',1,'Hazelnp::ParamConstraint']]], - ['addtypesafety_174',['AddTypeSafety',['../structHazelnp_1_1ParamConstraint.html#ae057d0d8186c0a7936405096a58be981',1,'Hazelnp::ParamConstraint']]], - ['addvalue_175',['AddValue',['../classHazelnp_1_1ListValue.html#af8787d266aa353d3f96e2c76cce76c41',1,'Hazelnp::ListValue']]] -]; diff --git a/docs/search/functions_1.html b/docs/search/functions_1.html deleted file mode 100644 index 0ddac0a..0000000 --- a/docs/search/functions_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_1.js b/docs/search/functions_1.js deleted file mode 100644 index 3b85ea8..0000000 --- a/docs/search/functions_1.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['clearabbreviation_176',['ClearAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a31f690bd95d5469d38af816183cbe3e7',1,'Hazelnp::CmdArgsInterface']]], - ['clearabbreviations_177',['ClearAbbreviations',['../classHazelnp_1_1CmdArgsInterface.html#a019e48f48427e7caa76c964bd0f117d0',1,'Hazelnp::CmdArgsInterface']]], - ['clearconstraint_178',['ClearConstraint',['../classHazelnp_1_1CmdArgsInterface.html#a112d2d5e3fd1cf1507592389c8454984',1,'Hazelnp::CmdArgsInterface']]], - ['clearconstraints_179',['ClearConstraints',['../classHazelnp_1_1CmdArgsInterface.html#ad472671fb12450b8d929418fbbffbe40',1,'Hazelnp::CmdArgsInterface']]], - ['cleardescription_180',['ClearDescription',['../classHazelnp_1_1CmdArgsInterface.html#a62889ce1faa90d0f20be3ae45803baa0',1,'Hazelnp::CmdArgsInterface']]], - ['cleardescriptions_181',['ClearDescriptions',['../classHazelnp_1_1CmdArgsInterface.html#a328dbc265e7ffa9ab526ed8aa755e107',1,'Hazelnp::CmdArgsInterface']]], - ['cmdargsinterface_182',['CmdArgsInterface',['../classHazelnp_1_1CmdArgsInterface.html#aa1189c249bf0d8a4fbd5fb8f03a30212',1,'Hazelnp::CmdArgsInterface::CmdArgsInterface()'],['../classHazelnp_1_1CmdArgsInterface.html#ad79ff83ead06900eb7b45d6c563703d9',1,'Hazelnp::CmdArgsInterface::CmdArgsInterface(const int argc, const char *const *argv)']]], - ['contains_183',['Contains',['../classHazelnp_1_1Internal_1_1StringTools.html#a4f1ff9fb44995407ea45b8c7c67ffeb6',1,'Hazelnp::Internal::StringTools']]] -]; diff --git a/docs/search/functions_10.html b/docs/search/functions_10.html deleted file mode 100644 index 09422e1..0000000 --- a/docs/search/functions_10.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_10.js b/docs/search/functions_10.js deleted file mode 100644 index aeca254..0000000 --- a/docs/search/functions_10.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['_7ecmdargsinterface_245',['~CmdArgsInterface',['../classHazelnp_1_1CmdArgsInterface.html#aadc75b3b6c9662cfbd4a936468d50466',1,'Hazelnp::CmdArgsInterface']]], - ['_7efloatvalue_246',['~FloatValue',['../classHazelnp_1_1FloatValue.html#a02e61e453c3e8e32d4d527799c11fd4a',1,'Hazelnp::FloatValue']]], - ['_7eintvalue_247',['~IntValue',['../classHazelnp_1_1IntValue.html#af69f25847b0666f9d6c1bb1fed18d917',1,'Hazelnp::IntValue']]], - ['_7elistvalue_248',['~ListValue',['../classHazelnp_1_1ListValue.html#a91f1450f299d46b3301774a6b4eb6c18',1,'Hazelnp::ListValue']]], - ['_7eparameter_249',['~Parameter',['../classHazelnp_1_1Parameter.html#a6e2ade42a712f1d3675653329266e42d',1,'Hazelnp::Parameter']]], - ['_7estringvalue_250',['~StringValue',['../classHazelnp_1_1StringValue.html#a5176062e2110d121466a6855fdc65d6d',1,'Hazelnp::StringValue']]], - ['_7evalue_251',['~Value',['../classHazelnp_1_1Value.html#a977dea61ee5b00b6c6d77ad6ad2c8d4c',1,'Hazelnp::Value']]], - ['_7evoidvalue_252',['~VoidValue',['../classHazelnp_1_1VoidValue.html#a6024b40919c3a6acea92be0439be2db0',1,'Hazelnp::VoidValue']]] -]; diff --git a/docs/search/functions_11.html b/docs/search/functions_11.html deleted file mode 100644 index 1cde7b4..0000000 --- a/docs/search/functions_11.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_11.js b/docs/search/functions_11.js deleted file mode 100644 index 3e0f3c3..0000000 --- a/docs/search/functions_11.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['_7efloatvalue_232',['~FloatValue',['../classHazelnp_1_1FloatValue.html#a02e61e453c3e8e32d4d527799c11fd4a',1,'Hazelnp::FloatValue']]], - ['_7ehazelnupp_233',['~Hazelnupp',['../classHazelnp_1_1Hazelnupp.html#a25f8810d24d647b6a57e2dd00ead42be',1,'Hazelnp::Hazelnupp']]], - ['_7eintvalue_234',['~IntValue',['../classHazelnp_1_1IntValue.html#af69f25847b0666f9d6c1bb1fed18d917',1,'Hazelnp::IntValue']]], - ['_7elistvalue_235',['~ListValue',['../classHazelnp_1_1ListValue.html#a91f1450f299d46b3301774a6b4eb6c18',1,'Hazelnp::ListValue']]], - ['_7eparameter_236',['~Parameter',['../classHazelnp_1_1Parameter.html#a6e2ade42a712f1d3675653329266e42d',1,'Hazelnp::Parameter']]], - ['_7estringvalue_237',['~StringValue',['../classHazelnp_1_1StringValue.html#a5176062e2110d121466a6855fdc65d6d',1,'Hazelnp::StringValue']]], - ['_7evalue_238',['~Value',['../classHazelnp_1_1Value.html#a977dea61ee5b00b6c6d77ad6ad2c8d4c',1,'Hazelnp::Value']]], - ['_7evoidvalue_239',['~VoidValue',['../classHazelnp_1_1VoidValue.html#a6024b40919c3a6acea92be0439be2db0',1,'Hazelnp::VoidValue']]] -]; diff --git a/docs/search/functions_2.html b/docs/search/functions_2.html deleted file mode 100644 index 2737c5a..0000000 --- a/docs/search/functions_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_2.js b/docs/search/functions_2.js deleted file mode 100644 index 7cdfbc3..0000000 --- a/docs/search/functions_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['datatypetostring_184',['DataTypeToString',['../namespaceHazelnp.html#a7fb1e5ad9e2ecb6c0025beb19f11621b',1,'Hazelnp']]], - ['deepcopy_185',['Deepcopy',['../classHazelnp_1_1FloatValue.html#ab071916339a0d5a266d821ebbc8f12b0',1,'Hazelnp::FloatValue::Deepcopy()'],['../classHazelnp_1_1IntValue.html#aa599004242b27f8f3e246b88742b034e',1,'Hazelnp::IntValue::Deepcopy()'],['../classHazelnp_1_1ListValue.html#a51c89ff315026b03d908345c6f58169d',1,'Hazelnp::ListValue::Deepcopy()'],['../classHazelnp_1_1StringValue.html#a1952487a786fb53cb0b9aefdb3367268',1,'Hazelnp::StringValue::Deepcopy()'],['../classHazelnp_1_1Value.html#aec9bc16f1630734c79bc69e916622dc6',1,'Hazelnp::Value::Deepcopy()'],['../classHazelnp_1_1VoidValue.html#ac36e85add840057659ec24484548165f',1,'Hazelnp::VoidValue::Deepcopy()']]] -]; diff --git a/docs/search/functions_3.html b/docs/search/functions_3.html deleted file mode 100644 index 6da86e7..0000000 --- a/docs/search/functions_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_3.js b/docs/search/functions_3.js deleted file mode 100644 index 854c00c..0000000 --- a/docs/search/functions_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['floatvalue_186',['FloatValue',['../classHazelnp_1_1FloatValue.html#a6bb35564e3331a3feb57b08caad0df44',1,'Hazelnp::FloatValue']]] -]; diff --git a/docs/search/functions_4.html b/docs/search/functions_4.html deleted file mode 100644 index 911304e..0000000 --- a/docs/search/functions_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_4.js b/docs/search/functions_4.js deleted file mode 100644 index d3adaae..0000000 --- a/docs/search/functions_4.js +++ /dev/null @@ -1,20 +0,0 @@ -var searchData= -[ - ['generatedocumentation_187',['GenerateDocumentation',['../classHazelnp_1_1CmdArgsInterface.html#a9b9bc5c4443799ea847077e9cefb1927',1,'Hazelnp::CmdArgsInterface']]], - ['getabbreviation_188',['GetAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a1486bfef870e6502aefc23b11ce6caaf',1,'Hazelnp::CmdArgsInterface']]], - ['getasosstring_189',['GetAsOsString',['../classHazelnp_1_1FloatValue.html#a6c9a4b70a7618252f56d9062c483531c',1,'Hazelnp::FloatValue::GetAsOsString()'],['../classHazelnp_1_1IntValue.html#a7d7dbda9a051084600d3eabdac96ee45',1,'Hazelnp::IntValue::GetAsOsString()'],['../classHazelnp_1_1ListValue.html#a5b1f8af329e48c5469fee16634b7889c',1,'Hazelnp::ListValue::GetAsOsString()'],['../classHazelnp_1_1StringValue.html#a71869ee46b88a3cbb9571f481f0c216d',1,'Hazelnp::StringValue::GetAsOsString()'],['../classHazelnp_1_1Value.html#ae1fdc694ed1c2b3080ad3929efda0a0e',1,'Hazelnp::Value::GetAsOsString()'],['../classHazelnp_1_1VoidValue.html#a44b1917d9ba41ee91e2131432e01ec90',1,'Hazelnp::VoidValue::GetAsOsString()']]], - ['getbriefdescription_190',['GetBriefDescription',['../classHazelnp_1_1CmdArgsInterface.html#a1945208a97707b2e3c654424f0760441',1,'Hazelnp::CmdArgsInterface']]], - ['getcatchhelp_191',['GetCatchHelp',['../classHazelnp_1_1CmdArgsInterface.html#a1026d98c23659b6d3d108b231806a1e3',1,'Hazelnp::CmdArgsInterface']]], - ['getconstraint_192',['GetConstraint',['../classHazelnp_1_1CmdArgsInterface.html#adec82884377a5193f68dcc7b6ef69d8b',1,'Hazelnp::CmdArgsInterface']]], - ['getcrashonfail_193',['GetCrashOnFail',['../classHazelnp_1_1CmdArgsInterface.html#a3e60c7a90c11bdc634d0f5d0dba5064c',1,'Hazelnp::CmdArgsInterface']]], - ['getdatatype_194',['GetDataType',['../classHazelnp_1_1Value.html#adbb80bf6d455a316e6e5103353429993',1,'Hazelnp::Value']]], - ['getdescription_195',['GetDescription',['../classHazelnp_1_1CmdArgsInterface.html#a89bc3f54d7ff0740549dbdf7b7f727e3',1,'Hazelnp::CmdArgsInterface']]], - ['getexecutablename_196',['GetExecutableName',['../classHazelnp_1_1CmdArgsInterface.html#afe83a815b21d37b3d2a6d0ef67137faf',1,'Hazelnp::CmdArgsInterface']]], - ['getfloat32_197',['GetFloat32',['../classHazelnp_1_1FloatValue.html#a1653ab3f4fa1700cf1b618ac6552ea81',1,'Hazelnp::FloatValue::GetFloat32()'],['../classHazelnp_1_1IntValue.html#ad0734e4cf67bac0bcc58251a4b3e56c4',1,'Hazelnp::IntValue::GetFloat32()'],['../classHazelnp_1_1ListValue.html#a637fec02ed7f7325554e494fc7cd4e86',1,'Hazelnp::ListValue::GetFloat32()'],['../classHazelnp_1_1StringValue.html#a31fc4d2517a7454c1e9f329df2f14be7',1,'Hazelnp::StringValue::GetFloat32()'],['../classHazelnp_1_1Value.html#a64eeb2943ccea6e16ce4e6f53a6e9b6d',1,'Hazelnp::Value::GetFloat32()'],['../classHazelnp_1_1VoidValue.html#a6d39d2983e54e1a407c66e303273aa48',1,'Hazelnp::VoidValue::GetFloat32()']]], - ['getfloat64_198',['GetFloat64',['../classHazelnp_1_1FloatValue.html#add33b370ef691ccb2f0957d0fe4ef6f9',1,'Hazelnp::FloatValue::GetFloat64()'],['../classHazelnp_1_1IntValue.html#a5ceb2030e8a2a665953fdd4f1715e6a5',1,'Hazelnp::IntValue::GetFloat64()'],['../classHazelnp_1_1ListValue.html#a571178db1c9d23f6c685ea8898dbb60e',1,'Hazelnp::ListValue::GetFloat64()'],['../classHazelnp_1_1StringValue.html#a74bedb828c901a4895062f62303b9653',1,'Hazelnp::StringValue::GetFloat64()'],['../classHazelnp_1_1Value.html#af645b9d78970d102360be37fc18e9e8a',1,'Hazelnp::Value::GetFloat64()'],['../classHazelnp_1_1VoidValue.html#a18b6f0d697c5f9286372a05927e4759c',1,'Hazelnp::VoidValue::GetFloat64()']]], - ['getint32_199',['GetInt32',['../classHazelnp_1_1FloatValue.html#a565741e80cd99a4d2af861ddc3c2dc99',1,'Hazelnp::FloatValue::GetInt32()'],['../classHazelnp_1_1IntValue.html#a163f21536fa49491aa0ae03c8091344a',1,'Hazelnp::IntValue::GetInt32()'],['../classHazelnp_1_1ListValue.html#a565c2b86fcfb3a13de29e59d95a358e7',1,'Hazelnp::ListValue::GetInt32()'],['../classHazelnp_1_1StringValue.html#ac8b53a7792ff1ed048722e2e404f3e6b',1,'Hazelnp::StringValue::GetInt32()'],['../classHazelnp_1_1Value.html#a2cb73333bdeca657dfbf6c8b2e50a5ef',1,'Hazelnp::Value::GetInt32()'],['../classHazelnp_1_1VoidValue.html#a5b7f50c390ef8f3636ba211a72a78065',1,'Hazelnp::VoidValue::GetInt32()']]], - ['getint64_200',['GetInt64',['../classHazelnp_1_1FloatValue.html#a762520d504d4564c48cf3bbefbb0f183',1,'Hazelnp::FloatValue::GetInt64()'],['../classHazelnp_1_1IntValue.html#ae0643023dfd56eafe2e3da5a4ba13080',1,'Hazelnp::IntValue::GetInt64()'],['../classHazelnp_1_1ListValue.html#a9a7a1161ddeb3e56eaafee5f10f75995',1,'Hazelnp::ListValue::GetInt64()'],['../classHazelnp_1_1StringValue.html#aabdc7d681945403d24df6a8fe27948af',1,'Hazelnp::StringValue::GetInt64()'],['../classHazelnp_1_1Value.html#a92d75905211e964cb900bdc868ed12a7',1,'Hazelnp::Value::GetInt64()'],['../classHazelnp_1_1VoidValue.html#a3806945596866f3630dc5426a6b55e58',1,'Hazelnp::VoidValue::GetInt64()']]], - ['getlist_201',['GetList',['../classHazelnp_1_1FloatValue.html#a60b2698f28f1aacac0b67b6453c89fd1',1,'Hazelnp::FloatValue::GetList()'],['../classHazelnp_1_1IntValue.html#acc74ba6070a516a4bcad10bb113d6fa2',1,'Hazelnp::IntValue::GetList()'],['../classHazelnp_1_1ListValue.html#ad578d9088c0375cd9b9c6658e5d9ba1f',1,'Hazelnp::ListValue::GetList()'],['../classHazelnp_1_1StringValue.html#a2b2810350b5eb7e58062ad095320aa69',1,'Hazelnp::StringValue::GetList()'],['../classHazelnp_1_1Value.html#a358092f951e817cd2a878225b5b1c869',1,'Hazelnp::Value::GetList()'],['../classHazelnp_1_1VoidValue.html#aba53ae37d415959b583f33f3e381be16',1,'Hazelnp::VoidValue::GetList()']]], - ['getstring_202',['GetString',['../classHazelnp_1_1FloatValue.html#afd5d078683f410cb9d450c61f12f250d',1,'Hazelnp::FloatValue::GetString()'],['../classHazelnp_1_1IntValue.html#a3631e3b16f010889e942c0c0f72d403c',1,'Hazelnp::IntValue::GetString()'],['../classHazelnp_1_1ListValue.html#aeaf80c07236045a77d72349ebcfc3b89',1,'Hazelnp::ListValue::GetString()'],['../classHazelnp_1_1StringValue.html#a7ed55493cfd25274f8571c1ea45f93e5',1,'Hazelnp::StringValue::GetString()'],['../classHazelnp_1_1Value.html#a1446705c062026f03866d0f452c39501',1,'Hazelnp::Value::GetString()'],['../classHazelnp_1_1VoidValue.html#a5af0c47a873b84226df47a90e63b2acd',1,'Hazelnp::VoidValue::GetString()']]], - ['getvalue_203',['GetValue',['../classHazelnp_1_1FloatValue.html#a2ad79d8bfe75e45120d1fce132a89b8f',1,'Hazelnp::FloatValue::GetValue()'],['../classHazelnp_1_1IntValue.html#a89967cafbdeb21362336067b772808c7',1,'Hazelnp::IntValue::GetValue()'],['../classHazelnp_1_1ListValue.html#a7907ae7433e4011157f1b31dd5339702',1,'Hazelnp::ListValue::GetValue()'],['../classHazelnp_1_1Parameter.html#a4ab8ba022bde4a0175e5ceb8e3a598af',1,'Hazelnp::Parameter::GetValue()'],['../classHazelnp_1_1StringValue.html#a521a573887a3f31718f74e71ff01e86e',1,'Hazelnp::StringValue::GetValue()']]] -]; diff --git a/docs/search/functions_5.html b/docs/search/functions_5.html deleted file mode 100644 index 61b920d..0000000 --- a/docs/search/functions_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_5.js b/docs/search/functions_5.js deleted file mode 100644 index 8bbbe53..0000000 --- a/docs/search/functions_5.js +++ /dev/null @@ -1,13 +0,0 @@ -var searchData= -[ - ['hasabbreviation_204',['HasAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#a58b81709e631cee5f3db3f3f48611fe9',1,'Hazelnp::CmdArgsInterface']]], - ['hasdescription_205',['HasDescription',['../classHazelnp_1_1CmdArgsInterface.html#a5003f826ee31c6365bf4b6e8b2c8d9f1',1,'Hazelnp::CmdArgsInterface']]], - ['hasparam_206',['HasParam',['../classHazelnp_1_1CmdArgsInterface.html#a3a7fa36fe69ee8bf3b400983a21ecd24',1,'Hazelnp::CmdArgsInterface']]], - ['hazelnuppconstraintexception_207',['HazelnuppConstraintException',['../classHazelnp_1_1HazelnuppConstraintException.html#a4d08002a96bf9b3da3c6e931a51960e9',1,'Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException()'],['../classHazelnp_1_1HazelnuppConstraintException.html#a944f0e6a384e032a762c5892964e1cc0',1,'Hazelnp::HazelnuppConstraintException::HazelnuppConstraintException(const std::string &msg)']]], - ['hazelnuppconstraintincompatibleparameters_208',['HazelnuppConstraintIncompatibleParameters',['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html#a3eceb69d0d4794252ab41b0d2b22ef3d',1,'Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters()'],['../classHazelnp_1_1HazelnuppConstraintIncompatibleParameters.html#ad9427954049ceb66f42130ac8476dc46',1,'Hazelnp::HazelnuppConstraintIncompatibleParameters::HazelnuppConstraintIncompatibleParameters(const std::string &key1, const std::string &key2)']]], - ['hazelnuppconstraintmissingvalue_209',['HazelnuppConstraintMissingValue',['../classHazelnp_1_1HazelnuppConstraintMissingValue.html#aad4a7b5573790ddfbe1a453aef71eb10',1,'Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue()'],['../classHazelnp_1_1HazelnuppConstraintMissingValue.html#a192ef8133047beadf8fc9f585d384c04',1,'Hazelnp::HazelnuppConstraintMissingValue::HazelnuppConstraintMissingValue(const std::string &key, const std::string &paramDescription="")']]], - ['hazelnuppconstrainttypemissmatch_210',['HazelnuppConstraintTypeMissmatch',['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#ab7c9e9afd9d3286e563a7656785242e8',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch()'],['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#a603d91c9af39e53b54e5aa288266cfe4',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch(const std::string &msg)'],['../classHazelnp_1_1HazelnuppConstraintTypeMissmatch.html#abd5ae6630884725b614e8fe603cccdc5',1,'Hazelnp::HazelnuppConstraintTypeMissmatch::HazelnuppConstraintTypeMissmatch(const std::string &key, const DATA_TYPE requiredType, const DATA_TYPE actualType, const std::string &paramDescription="")']]], - ['hazelnuppexception_211',['HazelnuppException',['../classHazelnp_1_1HazelnuppException.html#a0b21fd5d4f22e5e677b74eb0acd7c6ff',1,'Hazelnp::HazelnuppException::HazelnuppException()'],['../classHazelnp_1_1HazelnuppException.html#a816f823fe2ebd35076049e33b9f3c05c',1,'Hazelnp::HazelnuppException::HazelnuppException(const std::string &msg)']]], - ['hazelnuppinvalidkeyexception_212',['HazelnuppInvalidKeyException',['../classHazelnp_1_1HazelnuppInvalidKeyException.html#ab23be8f7cb84129fa85ed1e7a0b280a0',1,'Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException()'],['../classHazelnp_1_1HazelnuppInvalidKeyException.html#a18a08dc4efe80a378216460db5769891',1,'Hazelnp::HazelnuppInvalidKeyException::HazelnuppInvalidKeyException(const std::string &msg)']]], - ['hazelnuppvaluenotconvertibleexception_213',['HazelnuppValueNotConvertibleException',['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html#a0babee1bb5cec9fdd4abfd86995561f4',1,'Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException()'],['../classHazelnp_1_1HazelnuppValueNotConvertibleException.html#a7ba376cd7fc7edcb934ee0257d4867f2',1,'Hazelnp::HazelnuppValueNotConvertibleException::HazelnuppValueNotConvertibleException(const std::string &msg)']]] -]; diff --git a/docs/search/functions_6.html b/docs/search/functions_6.html deleted file mode 100644 index dc70a4a..0000000 --- a/docs/search/functions_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_6.js b/docs/search/functions_6.js deleted file mode 100644 index 67170c6..0000000 --- a/docs/search/functions_6.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['incompatibility_214',['Incompatibility',['../structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871',1,'Hazelnp::ParamConstraint::Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)'],['../structHazelnp_1_1ParamConstraint.html#a6bb383f8945fb99cbd2370fd9a4bc6fc',1,'Hazelnp::ParamConstraint::Incompatibility(const std::string &incompatibleParameters)']]], - ['intvalue_215',['IntValue',['../classHazelnp_1_1IntValue.html#ac1174f807ce2c085f5a24baed4e3c1ba',1,'Hazelnp::IntValue']]], - ['isnumeric_216',['IsNumeric',['../classHazelnp_1_1Internal_1_1StringTools.html#a1abf1454a223165acfb52f2a246c8215',1,'Hazelnp::Internal::StringTools']]] -]; diff --git a/docs/search/functions_7.html b/docs/search/functions_7.html deleted file mode 100644 index 7de3106..0000000 --- a/docs/search/functions_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_7.js b/docs/search/functions_7.js deleted file mode 100644 index c024805..0000000 --- a/docs/search/functions_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['key_217',['Key',['../classHazelnp_1_1Parameter.html#a7acd68ce06eec06ab286b1a062f9c8d6',1,'Hazelnp::Parameter']]] -]; diff --git a/docs/search/functions_8.html b/docs/search/functions_8.html deleted file mode 100644 index 7422be2..0000000 --- a/docs/search/functions_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_8.js b/docs/search/functions_8.js deleted file mode 100644 index 8ecaed1..0000000 --- a/docs/search/functions_8.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['listvalue_218',['ListValue',['../classHazelnp_1_1ListValue.html#a6082aaa506b31496720a168da8ab2708',1,'Hazelnp::ListValue']]] -]; diff --git a/docs/search/functions_9.html b/docs/search/functions_9.html deleted file mode 100644 index befd4fa..0000000 --- a/docs/search/functions_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_9.js b/docs/search/functions_9.js deleted file mode 100644 index 1496b6c..0000000 --- a/docs/search/functions_9.js +++ /dev/null @@ -1,10 +0,0 @@ -var searchData= -[ - ['operator_20double_219',['operator double',['../classHazelnp_1_1FloatValue.html#ae02de376bbb2b76e0f9d16b1fc4de06d',1,'Hazelnp::FloatValue']]], - ['operator_20int_220',['operator int',['../classHazelnp_1_1IntValue.html#ab30a38c8f58cefd7cbf365c4aeae79bd',1,'Hazelnp::IntValue']]], - ['operator_20long_20double_221',['operator long double',['../classHazelnp_1_1FloatValue.html#ad0d4c589190fbab7e6c4d8fcc130ac1b',1,'Hazelnp::FloatValue']]], - ['operator_20long_20long_20int_222',['operator long long int',['../classHazelnp_1_1IntValue.html#a45b283dae9904ad0643035d3ee5883eb',1,'Hazelnp::IntValue']]], - ['operator_5b_5d_223',['operator[]',['../classHazelnp_1_1CmdArgsInterface.html#af5e43c1067fb6c1074d9be3427c7a415',1,'Hazelnp::CmdArgsInterface']]], - ['string_224',['string',['../classHazelnp_1_1StringValue.html#a23449775f14f828d29b115de040a696b',1,'Hazelnp::StringValue']]], - ['vector_3c_20value_20_2a_20_3e_225',['vector< Value * >',['../classHazelnp_1_1ListValue.html#a5d92ff2b9a1fa92fbc303ac4d07765d0',1,'Hazelnp::ListValue']]] -]; diff --git a/docs/search/functions_a.html b/docs/search/functions_a.html deleted file mode 100644 index a81e963..0000000 --- a/docs/search/functions_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_a.js b/docs/search/functions_a.js deleted file mode 100644 index 7da6fda..0000000 --- a/docs/search/functions_a.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['paramconstraint_226',['ParamConstraint',['../structHazelnp_1_1ParamConstraint.html#afa9e1b4378c9fa1b4a7b5b792c062cbe',1,'Hazelnp::ParamConstraint::ParamConstraint()=default'],['../structHazelnp_1_1ParamConstraint.html#aea39497a14939fa887c236ee1e755cb3',1,'Hazelnp::ParamConstraint::ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::initializer_list< std::string > &defaultValue, bool required, const std::initializer_list< std::string > &incompatibleParameters)']]], - ['parameter_227',['Parameter',['../classHazelnp_1_1Parameter.html#a0c9faefc26cc9d8c886ef71e39e2f90c',1,'Hazelnp::Parameter']]], - ['parse_228',['Parse',['../classHazelnp_1_1CmdArgsInterface.html#a1f4845041e08b3335510de44fafaee19',1,'Hazelnp::CmdArgsInterface']]], - ['parsenumber_229',['ParseNumber',['../classHazelnp_1_1Internal_1_1StringTools.html#a3cc71bfffcad9a4334e74aac69dbfd68',1,'Hazelnp::Internal::StringTools']]] -]; diff --git a/docs/search/functions_b.html b/docs/search/functions_b.html deleted file mode 100644 index 345265d..0000000 --- a/docs/search/functions_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_b.js b/docs/search/functions_b.js deleted file mode 100644 index 7956b7d..0000000 --- a/docs/search/functions_b.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['registerabbreviation_230',['RegisterAbbreviation',['../classHazelnp_1_1CmdArgsInterface.html#aaccf591a74408aeb4363033fe8cb2224',1,'Hazelnp::CmdArgsInterface']]], - ['registerconstraint_231',['RegisterConstraint',['../classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2',1,'Hazelnp::CmdArgsInterface']]], - ['registerdescription_232',['RegisterDescription',['../classHazelnp_1_1CmdArgsInterface.html#a6589d2e818ba32f2a3e5b5a6a5e2bf1e',1,'Hazelnp::CmdArgsInterface']]], - ['replace_233',['Replace',['../classHazelnp_1_1Internal_1_1StringTools.html#ac45f8b6d0572443e9d2597447091b000',1,'Hazelnp::Internal::StringTools::Replace(const std::string &str, const char find, const std::string &subst)'],['../classHazelnp_1_1Internal_1_1StringTools.html#afaebf388806c331db0757231b0366fd7',1,'Hazelnp::Internal::StringTools::Replace(const std::string &str, const std::string &find, const std::string &subst)']]], - ['require_234',['Require',['../structHazelnp_1_1ParamConstraint.html#a8a7e5d7ddffc3cfbb54ac6823dd7eded',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/functions_c.html b/docs/search/functions_c.html deleted file mode 100644 index 858bfd6..0000000 --- a/docs/search/functions_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_c.js b/docs/search/functions_c.js deleted file mode 100644 index ccce9df..0000000 --- a/docs/search/functions_c.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['setbriefdescription_235',['SetBriefDescription',['../classHazelnp_1_1CmdArgsInterface.html#a67ba6cb3176884c85dd56fc9084ab66a',1,'Hazelnp::CmdArgsInterface']]], - ['setcatchhelp_236',['SetCatchHelp',['../classHazelnp_1_1CmdArgsInterface.html#abf553ed4acabf9e1db357715bc10533c',1,'Hazelnp::CmdArgsInterface']]], - ['setcrashonfail_237',['SetCrashOnFail',['../classHazelnp_1_1CmdArgsInterface.html#a16a3a02f77d240d8cf51cd4ee1797113',1,'Hazelnp::CmdArgsInterface']]], - ['splitstring_238',['SplitString',['../classHazelnp_1_1Internal_1_1StringTools.html#aaf3aae30ed06c37d18f79b8450061ad1',1,'Hazelnp::Internal::StringTools::SplitString(const std::string &str, const char delimiter)'],['../classHazelnp_1_1Internal_1_1StringTools.html#a8cb6e05d822c184a8e982327c01fdb03',1,'Hazelnp::Internal::StringTools::SplitString(const std::string &str, const std::string &delimiter)']]], - ['stringvalue_239',['StringValue',['../classHazelnp_1_1StringValue.html#a24dad2deec92b51bf60a11400cc8c204',1,'Hazelnp::StringValue']]] -]; diff --git a/docs/search/functions_d.html b/docs/search/functions_d.html deleted file mode 100644 index 2f09f51..0000000 --- a/docs/search/functions_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_d.js b/docs/search/functions_d.js deleted file mode 100644 index 0a9447c..0000000 --- a/docs/search/functions_d.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['tolower_240',['ToLower',['../classHazelnp_1_1Internal_1_1StringTools.html#a10f61d7d8bcbfee50882bae801c0e68c',1,'Hazelnp::Internal::StringTools']]], - ['typesafety_241',['TypeSafety',['../structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/functions_e.html b/docs/search/functions_e.html deleted file mode 100644 index ee5afa6..0000000 --- a/docs/search/functions_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_e.js b/docs/search/functions_e.js deleted file mode 100644 index ab74e90..0000000 --- a/docs/search/functions_e.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['value_242',['Value',['../classHazelnp_1_1Value.html#a8455d65bb2d939e850d6772dfbf8bfec',1,'Hazelnp::Value']]], - ['voidvalue_243',['VoidValue',['../classHazelnp_1_1VoidValue.html#a75abf334b7f55cd149d2bb1962f2d8f1',1,'Hazelnp::VoidValue']]] -]; diff --git a/docs/search/functions_f.html b/docs/search/functions_f.html deleted file mode 100644 index f17c412..0000000 --- a/docs/search/functions_f.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/functions_f.js b/docs/search/functions_f.js deleted file mode 100644 index 184aad6..0000000 --- a/docs/search/functions_f.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['what_244',['What',['../classHazelnp_1_1HazelnuppException.html#aa86c415a0f2b4ea5f11892145d1ea83e',1,'Hazelnp::HazelnuppException']]] -]; diff --git a/docs/search/mag_sel.png b/docs/search/mag_sel.png deleted file mode 100644 index 39c0ed52a25dd9d080ee0d42ae6c6042bdfa04d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 465 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz6!2%?$TA$hhDVB6cUq=Rpjs4tz5?O(Kg=CK) zUj~NU84L`?eGCi_EEpJ?t}-xGu`@87+QPtK?83kxQ`TapwHK(CDaqU2h2ejD|C#+j z9%q3^WHAE+w=f7ZGR&GI0Tg5}@$_|Nf5gMiEhFgvHvB$N=!mC_V~EE2vzPXI9ZnEo zd+1zHor@dYLod2Y{ z@R$7$Z!PXTbY$|@#T!bMzm?`b<(R`cbw(gxJHzu zB$lLFB^RXvDF!10LknF)BV7aY5JN*NBMU1-b8Q0yD+2>vd*|CI8glbfGSez?Ylunu RoetE%;OXk;vd$@?2>>CYplSdB diff --git a/docs/search/namespaces_0.html b/docs/search/namespaces_0.html deleted file mode 100644 index 76996d1..0000000 --- a/docs/search/namespaces_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/namespaces_0.js b/docs/search/namespaces_0.js deleted file mode 100644 index 1a1fb00..0000000 --- a/docs/search/namespaces_0.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['hazelnp_144',['Hazelnp',['../namespaceHazelnp.html',1,'']]], - ['internal_145',['Internal',['../namespaceHazelnp_1_1Internal.html',1,'Hazelnp']]], - ['placeholders_146',['Placeholders',['../namespaceHazelnp_1_1Placeholders.html',1,'Hazelnp']]] -]; diff --git a/docs/search/nomatches.html b/docs/search/nomatches.html deleted file mode 100644 index 4377320..0000000 --- a/docs/search/nomatches.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - -
    -
    No Matches
    -
    - - diff --git a/docs/search/pages_0.html b/docs/search/pages_0.html deleted file mode 100644 index 9a6a29a..0000000 --- a/docs/search/pages_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/pages_0.js b/docs/search/pages_0.js deleted file mode 100644 index afd3f53..0000000 --- a/docs/search/pages_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['hazelnupp_270',['Hazelnupp',['../index.html',1,'']]] -]; diff --git a/docs/search/related_0.html b/docs/search/related_0.html deleted file mode 100644 index bbe15fa..0000000 --- a/docs/search/related_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/related_0.js b/docs/search/related_0.js deleted file mode 100644 index 8a3c1b3..0000000 --- a/docs/search/related_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['cmdargsinterface_267',['CmdArgsInterface',['../structHazelnp_1_1ParamConstraint.html#a01773a2aa9845fd639f63468586b67b0',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/related_1.html b/docs/search/related_1.html deleted file mode 100644 index 024707b..0000000 --- a/docs/search/related_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/related_1.js b/docs/search/related_1.js deleted file mode 100644 index a3475eb..0000000 --- a/docs/search/related_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['operator_3c_3c_268',['operator<<',['../classHazelnp_1_1Parameter.html#a11b3529badcbf99b46262772472495c7',1,'Hazelnp::Parameter::operator<<()'],['../classHazelnp_1_1Value.html#ad29db86c4a2dec5bc8d0006031b07211',1,'Hazelnp::Value::operator<<()']]] -]; diff --git a/docs/search/search.css b/docs/search/search.css deleted file mode 100644 index 2416cc3..0000000 --- a/docs/search/search.css +++ /dev/null @@ -1,271 +0,0 @@ -/*---------------- Search Box */ - -#FSearchBox { - float: left; -} - -#MSearchBox { - white-space : nowrap; - float: none; - margin-top: 8px; - right: 0px; - width: 170px; - height: 24px; - z-index: 102; -} - -#MSearchBox .left -{ - display:block; - position:absolute; - left:10px; - width:20px; - height:19px; - background:url('search_l.png') no-repeat; - background-position:right; -} - -#MSearchSelect { - display:block; - position:absolute; - width:20px; - height:19px; -} - -.left #MSearchSelect { - left:4px; -} - -.right #MSearchSelect { - right:5px; -} - -#MSearchField { - display:block; - position:absolute; - height:19px; - background:url('search_m.png') repeat-x; - border:none; - width:115px; - margin-left:20px; - padding-left:4px; - color: #909090; - outline: none; - font: 9pt Arial, Verdana, sans-serif; - -webkit-border-radius: 0px; -} - -#FSearchBox #MSearchField { - margin-left:15px; -} - -#MSearchBox .right { - display:block; - position:absolute; - right:10px; - top:8px; - width:20px; - height:19px; - background:url('search_r.png') no-repeat; - background-position:left; -} - -#MSearchClose { - display: none; - position: absolute; - top: 4px; - background : none; - border: none; - margin: 0px 4px 0px 0px; - padding: 0px 0px; - outline: none; -} - -.left #MSearchClose { - left: 6px; -} - -.right #MSearchClose { - right: 2px; -} - -.MSearchBoxActive #MSearchField { - color: #000000; -} - -/*---------------- Search filter selection */ - -#MSearchSelectWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #D6DBC2; - background-color: #FDFDFC; - z-index: 10001; - padding-top: 4px; - padding-bottom: 4px; - -moz-border-radius: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.SelectItem { - font: 8pt Arial, Verdana, sans-serif; - padding-left: 2px; - padding-right: 12px; - border: 0px; -} - -span.SelectionMark { - margin-right: 4px; - font-family: monospace; - outline-style: none; - text-decoration: none; -} - -a.SelectItem { - display: block; - outline-style: none; - color: #000000; - text-decoration: none; - padding-left: 6px; - padding-right: 12px; -} - -a.SelectItem:focus, -a.SelectItem:active { - color: #000000; - outline-style: none; - text-decoration: none; -} - -a.SelectItem:hover { - color: #FFFFFF; - background-color: #A8B17C; - outline-style: none; - text-decoration: none; - cursor: pointer; - display: block; -} - -/*---------------- Search results window */ - -iframe#MSearchResults { - width: 60ex; - height: 15em; -} - -#MSearchResultsWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #000; - background-color: #F9F9F6; - z-index:10000; -} - -/* ----------------------------------- */ - - -#SRIndex { - clear:both; - padding-bottom: 15px; -} - -.SREntry { - font-size: 10pt; - padding-left: 1ex; -} - -.SRPage .SREntry { - font-size: 8pt; - padding: 1px 5px; -} - -body.SRPage { - margin: 5px 2px; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} - -.SRPage .SRChildren { - display: none; -} - -.SRSymbol { - font-weight: bold; - color: #AEB685; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRScope { - display: block; - color: #AEB685; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} - -span.SRScope { - padding-left: 4px; -} - -.SRPage .SRStatus { - padding: 2px 5px; - font-size: 8pt; - font-style: italic; -} - -.SRResult { - display: none; -} - -DIV.searchresults { - margin-left: 10px; - margin-right: 10px; -} - -/*---------------- External search page results */ - -.searchresult { - background-color: #FAFAF7; -} - -.pages b { - color: white; - padding: 5px 5px 3px 5px; - background-image: url("../tab_a.png"); - background-repeat: repeat-x; - text-shadow: 0 1px 1px #000000; -} - -.pages { - line-height: 17px; - margin-left: 4px; - text-decoration: none; -} - -.hl { - font-weight: bold; -} - -#searchresults { - margin-bottom: 20px; -} - -.searchpages { - margin-top: 10px; -} - diff --git a/docs/search/search.js b/docs/search/search.js deleted file mode 100644 index a554ab9..0000000 --- a/docs/search/search.js +++ /dev/null @@ -1,814 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var idxChar = searchValue.substr(0, 1).toLowerCase(); - if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair - { - idxChar = searchValue.substr(0, 2); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); - if (idx!=-1) - { - var hexCode=idx.toString(16); - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches.html'; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName == 'DIV' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName == 'DIV' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e(R!W8j_r#qQ#gnr4kAxdU#F0+OBry$Z+ z_0PMi;P|#{d%mw(dnw=jM%@$onTJa%@6Nm3`;2S#nwtVFJI#`U@2Q@@JCCctagvF- z8H=anvo~dTmJ2YA%wA6IHRv%{vxvUm|R)kgZeo zmX%Zb;mpflGZdXCTAgit`||AFzkI#z&(3d4(htA?U2FOL4WF6wY&TB#n3n*I4+hl| z*NBpo#FA92vEu822WQ%mvv4FO#qs` BFGc_W diff --git a/docs/search/search_r.png b/docs/search/search_r.png deleted file mode 100644 index 1af5d21ee13e070d7600f1c4657fde843b953a69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 553 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!2%@BXHTsJQY`6?zK#qG8~eHcB(ehe3dtTp zz6=bxGZ+|(`xqD=STHa&U1eaXVrO7DwS|Gf*oA>XrmV$GYcEhOQT(QLuS{~ooZ2P@v=Xc@RKW@Irliv8_;wroU0*)0O?temdsA~70jrdux+`@W7 z-N(<(C)L?hOO?KV{>8(jC{hpKsws)#Fh zvsO>IB+gb@b+rGWaO&!a9Z{!U+fV*s7TS>fdt&j$L%^U@Epd$~Nl7e8wMs5Z1yT$~ z28I^8hDN#u<{^fLRz?<9hUVG^237_Jy7tbuQ8eV{r(~v8;?@w8^gA7>fx*+&&t;uc GLK6VEQpiUD diff --git a/docs/search/searchdata.js b/docs/search/searchdata.js deleted file mode 100644 index 744d451..0000000 --- a/docs/search/searchdata.js +++ /dev/null @@ -1,45 +0,0 @@ -var indexSectionsWithContent = -{ - 0: "acdfghiklmoprstvw~", - 1: "cfhilpsv", - 2: "h", - 3: "cdfhilpsv", - 4: "acdfghikloprstvw~", - 5: "cdgimrt", - 6: "d", - 7: "filsv", - 8: "co", - 9: "h", - 10: "h" -}; - -var indexSectionNames = -{ - 0: "all", - 1: "classes", - 2: "namespaces", - 3: "files", - 4: "functions", - 5: "variables", - 6: "enums", - 7: "enumvalues", - 8: "related", - 9: "defines", - 10: "pages" -}; - -var indexSectionLabels = -{ - 0: "All", - 1: "Classes", - 2: "Namespaces", - 3: "Files", - 4: "Functions", - 5: "Variables", - 6: "Enumerations", - 7: "Enumerator", - 8: "Friends", - 9: "Macros", - 10: "Pages" -}; - diff --git a/docs/search/typedefs_0.html b/docs/search/typedefs_0.html deleted file mode 100644 index 376db47..0000000 --- a/docs/search/typedefs_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/typedefs_0.js b/docs/search/typedefs_0.js deleted file mode 100644 index 77729e3..0000000 --- a/docs/search/typedefs_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['arglist_229',['ArgList',['../helper_8h.html#ae87ff642ae2445b823a32470b938cd0e',1,'helper.h']]] -]; diff --git a/docs/search/variables_0.html b/docs/search/variables_0.html deleted file mode 100644 index bf3eba5..0000000 --- a/docs/search/variables_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_0.js b/docs/search/variables_0.js deleted file mode 100644 index f741cb4..0000000 --- a/docs/search/variables_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['constraintype_253',['constrainType',['../structHazelnp_1_1ParamConstraint.html#a88a4a4c215723259c71853992d09acac',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/variables_1.html b/docs/search/variables_1.html deleted file mode 100644 index 49fe59a..0000000 --- a/docs/search/variables_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_1.js b/docs/search/variables_1.js deleted file mode 100644 index 2c49ad2..0000000 --- a/docs/search/variables_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['defaultvalue_254',['defaultValue',['../structHazelnp_1_1ParamConstraint.html#a1d3a627b3a23fe0db3a368e51dbcd5a7',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/variables_2.html b/docs/search/variables_2.html deleted file mode 100644 index 0c8a18c..0000000 --- a/docs/search/variables_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_2.js b/docs/search/variables_2.js deleted file mode 100644 index 0862033..0000000 --- a/docs/search/variables_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['g_5femptystring_255',['g_emptyString',['../namespaceHazelnp_1_1Placeholders.html#a90536f0cd5261b18da736e954c6b8b79',1,'Hazelnp::Placeholders']]] -]; diff --git a/docs/search/variables_3.html b/docs/search/variables_3.html deleted file mode 100644 index 19a31fc..0000000 --- a/docs/search/variables_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_3.js b/docs/search/variables_3.js deleted file mode 100644 index 84b866d..0000000 --- a/docs/search/variables_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['incompatibleparameters_256',['incompatibleParameters',['../structHazelnp_1_1ParamConstraint.html#acf45734665238b51483f77701039108c',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/variables_4.html b/docs/search/variables_4.html deleted file mode 100644 index bdc37be..0000000 --- a/docs/search/variables_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_4.js b/docs/search/variables_4.js deleted file mode 100644 index 86bb2ab..0000000 --- a/docs/search/variables_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['message_257',['message',['../classHazelnp_1_1HazelnuppException.html#aa905cabcd12f542dfc67638732737e88',1,'Hazelnp::HazelnuppException']]] -]; diff --git a/docs/search/variables_5.html b/docs/search/variables_5.html deleted file mode 100644 index 6aa2249..0000000 --- a/docs/search/variables_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_5.js b/docs/search/variables_5.js deleted file mode 100644 index d2637d0..0000000 --- a/docs/search/variables_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['required_258',['required',['../structHazelnp_1_1ParamConstraint.html#a8ccf3ebecc2d9d0105e181814af2943c',1,'Hazelnp::ParamConstraint']]], - ['requiredtype_259',['requiredType',['../structHazelnp_1_1ParamConstraint.html#a203b6fd1b9788a529aa0f15fe94fd24a',1,'Hazelnp::ParamConstraint']]] -]; diff --git a/docs/search/variables_6.html b/docs/search/variables_6.html deleted file mode 100644 index ce4a906..0000000 --- a/docs/search/variables_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/search/variables_6.js b/docs/search/variables_6.js deleted file mode 100644 index e3f208b..0000000 --- a/docs/search/variables_6.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['type_260',['type',['../classHazelnp_1_1Value.html#ae5760a30c237095db595c466372e3c23',1,'Hazelnp::Value']]] -]; diff --git a/docs/splitbar.png b/docs/splitbar.png deleted file mode 100644 index 6e046033de6a2beca73592dfdb90027308216bec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf@VhwtajF60HwU z=P$a*5$JbFYK{9MAxX!BN-n9PIgEx&1*SFy^ynWs5qY5G`|RJ9-P-Ab)9=;Re17%x z^>h7sc9q{g{P@`He*C-sp*WGmE+wD97R@dLSHWc(heTXwEaC{pC3tS4UG2|;ANBu! z)wzl1-QQFE`q;&*+SlL7-QE4C-H(6uYx{k&VekF#&HMaHf3DoS&(|j(uHSa(KOPgY d+Wl|ueG4vU>0Lj!rvg3A;OXk;vd$@?2>{wRc~<}c diff --git a/docs/structHazelnp_1_1ParamConstraint-members.html b/docs/structHazelnp_1_1ParamConstraint-members.html deleted file mode 100644 index 545f99f..0000000 --- a/docs/structHazelnp_1_1ParamConstraint-members.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    Hazelnp::ParamConstraint Member List
    -
    -
    - -

    This is the complete list of members for Hazelnp::ParamConstraint, including all inherited members.

    - - - - - - - - - - - - - - - - - -
    AddIncompatibilities(const std::string &incompatibleParameters)Hazelnp::ParamConstraintinline
    AddIncompatibilities(const std::initializer_list< std::string > &incompatibleParameters)Hazelnp::ParamConstraintinline
    AddRequire(const std::initializer_list< std::string > &defaultValue={}, bool required=true)Hazelnp::ParamConstraintinline
    AddTypeSafety(DATA_TYPE requiredType, bool constrainType=true)Hazelnp::ParamConstraintinline
    CmdArgsInterface classHazelnp::ParamConstraintfriend
    constrainTypeHazelnp::ParamConstraint
    defaultValueHazelnp::ParamConstraint
    Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)Hazelnp::ParamConstraintinlinestatic
    Incompatibility(const std::string &incompatibleParameters)Hazelnp::ParamConstraintinlinestatic
    incompatibleParametersHazelnp::ParamConstraint
    ParamConstraint()=defaultHazelnp::ParamConstraint
    ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::initializer_list< std::string > &defaultValue, bool required, const std::initializer_list< std::string > &incompatibleParameters)Hazelnp::ParamConstraintinline
    Require(const std::initializer_list< std::string > &defaultValue={}, bool required=true)Hazelnp::ParamConstraintinlinestatic
    requiredHazelnp::ParamConstraint
    requiredTypeHazelnp::ParamConstraint
    TypeSafety(DATA_TYPE requiredType, bool constrainType=true)Hazelnp::ParamConstraintinlinestatic
    - - - - diff --git a/docs/structHazelnp_1_1ParamConstraint.html b/docs/structHazelnp_1_1ParamConstraint.html deleted file mode 100644 index a543a29..0000000 --- a/docs/structHazelnp_1_1ParamConstraint.html +++ /dev/null @@ -1,743 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: Hazelnp::ParamConstraint Struct Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    Hazelnp::ParamConstraint Struct Reference
    -
    -
    - -

    #include <ParamConstraint.h>

    -
    -Collaboration diagram for Hazelnp::ParamConstraint:
    -
    -
    Collaboration graph
    - - - - - - -
    [legend]
    - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

     ParamConstraint ()=default
     Empty constructor. More...
     
    ParamConstraint AddRequire (const std::initializer_list< std::string > &defaultValue={}, bool required=true)
     Daisychain-method. More...
     
    ParamConstraint AddTypeSafety (DATA_TYPE requiredType, bool constrainType=true)
     Daisychain-method. More...
     
    ParamConstraint AddIncompatibilities (const std::string &incompatibleParameters)
     Daisychain-method. More...
     
    ParamConstraint AddIncompatibilities (const std::initializer_list< std::string > &incompatibleParameters)
     Daisychain-method. More...
     
     ParamConstraint (bool constrainType, DATA_TYPE requiredType, const std::initializer_list< std::string > &defaultValue, bool required, const std::initializer_list< std::string > &incompatibleParameters)
     Whole constructor. More...
     
    - - - - - - - - - - - - - -

    -Static Public Member Functions

    static ParamConstraint Require (const std::initializer_list< std::string > &defaultValue={}, bool required=true)
     Constructs a require constraint. More...
     
    static ParamConstraint TypeSafety (DATA_TYPE requiredType, bool constrainType=true)
     Constructs a type-safety constraint. More...
     
    static ParamConstraint Incompatibility (const std::initializer_list< std::string > &incompatibleParameters)
     Constructs an incompatibility constraint. More...
     
    static ParamConstraint Incompatibility (const std::string &incompatibleParameters)
     Constructs an incompatibility constraint. More...
     
    - - - - - - - - - - - - - - - - -

    -Public Attributes

    bool constrainType = false
     Should this parameter be forced to be of a certain type?
    - Remember to set constrainTo to the wanted type. More...
     
    DATA_TYPE requiredType = DATA_TYPE::VOID
     Constrain the parameter to this value. Requires constrainType to be set to true. More...
     
    std::vector< std::string > defaultValue
     The default value for this parameter. More...
     
    bool required = false
     If set to true, and no default value set, an error will be produced if this parameter is not supplied by the user. More...
     
    std::vector< std::string > incompatibleParameters
     Parameters that are incompatible with this parameter. More...
     
    - - - -

    -Friends

    class CmdArgsInterface
     
    -

    Detailed Description

    -
    -

    Definition at line 8 of file ParamConstraint.h.

    -

    Constructor & Destructor Documentation

    - -

    ◆ ParamConstraint() [1/2]

    - -
    -
    - - - - - -
    - - - - - - - -
    Hazelnp::ParamConstraint::ParamConstraint ()
    -
    -default
    -
    - -

    Empty constructor.

    - -
    -
    - -

    ◆ ParamConstraint() [2/2]

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Hazelnp::ParamConstraint::ParamConstraint (bool constrainType,
    DATA_TYPE requiredType,
    const std::initializer_list< std::string > & defaultValue,
    bool required,
    const std::initializer_list< std::string > & incompatibleParameters 
    )
    -
    -inline
    -
    - -

    Whole constructor.

    - -

    Definition at line 100 of file ParamConstraint.h.

    -
    101  :
    - - - -
    105  required{ required },
    - -
    107  {
    -
    108  return;
    -
    109  }
    -
    -
    -
    -

    Member Function Documentation

    - -

    ◆ AddIncompatibilities() [1/2]

    - -
    -
    - - - - - -
    - - - - - - - - -
    ParamConstraint Hazelnp::ParamConstraint::AddIncompatibilities (const std::initializer_list< std::string > & incompatibleParameters)
    -
    -inline
    -
    - -

    Daisychain-method.

    -

    Will add a the "incompatiblity" aspect.
    - This means, that the following parameters are NOT compatible with this one and will throw an error if passed together.

    - -

    Definition at line 91 of file ParamConstraint.h.

    -
    92  {
    -
    93  ParamConstraint pc = *this;
    -
    94  pc.incompatibleParameters = incompatibleParameters;
    -
    95 
    -
    96  return pc;
    -
    97  }
    -
    -
    -
    - -

    ◆ AddIncompatibilities() [2/2]

    - -
    -
    - - - - - -
    - - - - - - - - -
    ParamConstraint Hazelnp::ParamConstraint::AddIncompatibilities (const std::string & incompatibleParameters)
    -
    -inline
    -
    - -

    Daisychain-method.

    -

    Will add a the "incompatiblity" aspect.
    - This means, that the following parameters are NOT compatible with this one and will throw an error if passed together. Syntactical-sugar proxy method that will convert the lonely string to an initializer list for you :3

    - -

    Definition at line 81 of file ParamConstraint.h.

    -
    82  {
    -
    83  ParamConstraint pc = *this;
    -
    84  pc.incompatibleParameters = { incompatibleParameters };
    -
    85 
    -
    86  return pc;
    -
    87  }
    -
    -
    -
    - -

    ◆ AddRequire()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    ParamConstraint Hazelnp::ParamConstraint::AddRequire (const std::initializer_list< std::string > & defaultValue = {},
    bool required = true 
    )
    -
    -inline
    -
    - -

    Daisychain-method.

    -

    Will add a the "required-argument" aspect.
    - Think of the default value like of a list ofparameters. Like {"--width", "800"}

    - -

    Definition at line 27 of file ParamConstraint.h.

    -
    27  {}, bool required = true)
    -
    28  {
    -
    29  ParamConstraint pc = *this;
    -
    30  pc.defaultValue = defaultValue;
    -
    31  pc.required = required;
    -
    32 
    -
    33  return pc;
    -
    34  }
    -
    -
    -
    - -

    ◆ AddTypeSafety()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    ParamConstraint Hazelnp::ParamConstraint::AddTypeSafety (DATA_TYPE requiredType,
    bool constrainType = true 
    )
    -
    -inline
    -
    - -

    Daisychain-method.

    -

    Will add a the "type-safety" aspect.
    - Constructs a type-safety constraint

    - -

    Definition at line 48 of file ParamConstraint.h.

    -
    49  {
    -
    50  ParamConstraint pc = *this;
    -
    51  pc.constrainType = constrainType;
    -
    52  pc.requiredType = requiredType;
    -
    53 
    -
    54  return pc;
    -
    55  }
    -
    -
    -
    - -

    ◆ Incompatibility() [1/2]

    - -
    -
    - - - - - -
    - - - - - - - - -
    static ParamConstraint Hazelnp::ParamConstraint::Incompatibility (const std::initializer_list< std::string > & incompatibleParameters)
    -
    -inlinestatic
    -
    - -

    Constructs an incompatibility constraint.

    -

    This means, that the following parameters are NOT compatible with this one and will throw an error if passed together

    - -

    Definition at line 59 of file ParamConstraint.h.

    -
    60  {
    -
    61  ParamConstraint pc;
    -
    62  pc.incompatibleParameters = incompatibleParameters;
    -
    63 
    -
    64  return pc;
    -
    65  }
    -
    -
    -
    - -

    ◆ Incompatibility() [2/2]

    - -
    -
    - - - - - -
    - - - - - - - - -
    static ParamConstraint Hazelnp::ParamConstraint::Incompatibility (const std::string & incompatibleParameters)
    -
    -inlinestatic
    -
    - -

    Constructs an incompatibility constraint.

    -

    This means, that the following parameters are NOT compatible with this one and will throw an error if passed together. Syntactical-sugar proxy method that will convert the lonely string to an initializer list for you :3

    - -

    Definition at line 70 of file ParamConstraint.h.

    -
    71  {
    -
    72  ParamConstraint pc;
    -
    73  pc.incompatibleParameters = { incompatibleParameters };
    -
    74 
    -
    75  return pc;
    -
    76  }
    -
    -
    -
    - -

    ◆ Require()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    static ParamConstraint Hazelnp::ParamConstraint::Require (const std::initializer_list< std::string > & defaultValue = {},
    bool required = true 
    )
    -
    -inlinestatic
    -
    - -

    Constructs a require constraint.

    -


    - Think of the default value like of a list ofparameters. Like {"--width", "800"}

    - -

    Definition at line 16 of file ParamConstraint.h.

    -
    16  {}, bool required = true)
    -
    17  {
    -
    18  ParamConstraint pc;
    -
    19  pc.defaultValue = defaultValue;
    -
    20  pc.required = required;
    -
    21 
    -
    22  return pc;
    -
    23  }
    -
    -
    -
    - -

    ◆ TypeSafety()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    static ParamConstraint Hazelnp::ParamConstraint::TypeSafety (DATA_TYPE requiredType,
    bool constrainType = true 
    )
    -
    -inlinestatic
    -
    - -

    Constructs a type-safety constraint.

    - -

    Definition at line 37 of file ParamConstraint.h.

    -
    38  {
    -
    39  ParamConstraint pc;
    -
    40  pc.constrainType = constrainType;
    -
    41  pc.requiredType = requiredType;
    -
    42 
    -
    43  return pc;
    -
    44  }
    -
    -
    -
    -

    Friends And Related Function Documentation

    - -

    ◆ CmdArgsInterface

    - -
    -
    - - - - - -
    - - - - -
    friend class CmdArgsInterface
    -
    -friend
    -
    - -

    Definition at line 135 of file ParamConstraint.h.

    - -
    -
    -

    Member Data Documentation

    - -

    ◆ constrainType

    - -
    -
    - - - - -
    bool Hazelnp::ParamConstraint::constrainType = false
    -
    - -

    Should this parameter be forced to be of a certain type?
    - Remember to set constrainTo to the wanted type.

    - -

    Definition at line 113 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ defaultValue

    - -
    -
    - - - - -
    std::vector<std::string> Hazelnp::ParamConstraint::defaultValue
    -
    - -

    The default value for this parameter.

    -


    - Gets applied if this parameter was not given.
    - Think of this like a list of parameters. Like {"--width", "800"}

    - -

    Definition at line 121 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ incompatibleParameters

    - -
    -
    - - - - -
    std::vector<std::string> Hazelnp::ParamConstraint::incompatibleParameters
    -
    - -

    Parameters that are incompatible with this parameter.

    - -

    Definition at line 128 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ required

    - -
    -
    - - - - -
    bool Hazelnp::ParamConstraint::required = false
    -
    - -

    If set to true, and no default value set, an error will be produced if this parameter is not supplied by the user.

    - -

    Definition at line 125 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ requiredType

    - -
    -
    - - - - -
    DATA_TYPE Hazelnp::ParamConstraint::requiredType = DATA_TYPE::VOID
    -
    - -

    Constrain the parameter to this value. Requires constrainType to be set to true.

    - -

    Definition at line 116 of file ParamConstraint.h.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    DATA_TYPE requiredType
    Constrain the parameter to this value. Requires constrainType to be set to true.
    -
    bool constrainType
    Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
    -
    ParamConstraint()=default
    Empty constructor.
    -
    std::vector< std::string > incompatibleParameters
    Parameters that are incompatible with this parameter.
    -
    bool required
    If set to true, and no default value set, an error will be produced if this parameter is not supplied...
    -
    std::vector< std::string > defaultValue
    The default value for this parameter.
    - - - - diff --git a/docs/structHazelnp_1_1ParamConstraint__coll__graph.map b/docs/structHazelnp_1_1ParamConstraint__coll__graph.map deleted file mode 100644 index c44528c..0000000 --- a/docs/structHazelnp_1_1ParamConstraint__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/structHazelnp_1_1ParamConstraint__coll__graph.md5 b/docs/structHazelnp_1_1ParamConstraint__coll__graph.md5 deleted file mode 100644 index 9cc78e1..0000000 --- a/docs/structHazelnp_1_1ParamConstraint__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -a459875e45a00cc653331d1a1106e8e6 \ No newline at end of file diff --git a/docs/structHazelnp_1_1ParamConstraint__coll__graph.png b/docs/structHazelnp_1_1ParamConstraint__coll__graph.png deleted file mode 100644 index 31bc4a17530ef07ca0dfc8d617a47dd3690f0bc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11319 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 - - - - - - -Leonetienne/Hazelnupp: Member List - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    -
    -
    -
    ParamConstraint Member List
    -
    -
    - -

    This is the complete list of members for ParamConstraint, including all inherited members.

    - - - - - - - - - - -
    constrainTypeParamConstraint
    defaultValueParamConstraint
    keyParamConstraint
    ParamConstraint()=defaultParamConstraint
    ParamConstraint(const std::string &key, bool constrainType, DATA_TYPE wantedType, const std::vector< std::string > &defaultValue, bool required)ParamConstraintinline
    Require(const std::string &key, const std::vector< std::string > &defaultValue={}, bool required=true)ParamConstraintinlinestatic
    requiredParamConstraint
    TypeSafety(const std::string &key, DATA_TYPE wantedType, bool constrainType=true)ParamConstraintinlinestatic
    wantedTypeParamConstraint
    - - - - diff --git a/docs/structParamConstraint.html b/docs/structParamConstraint.html deleted file mode 100644 index dc48b5f..0000000 --- a/docs/structParamConstraint.html +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - -Leonetienne/Hazelnupp: ParamConstraint Struct Reference - - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Leonetienne/Hazelnupp -
    -
    Simple, easy to use, command line parameter interface
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    - -
    - -

    #include <ParamConstraint.h>

    -
    -Collaboration diagram for ParamConstraint:
    -
    -
    Collaboration graph
    - - - - - - -
    [legend]
    - - - - - - - - -

    -Public Member Functions

     ParamConstraint ()=default
     Empty constructor. More...
     
     ParamConstraint (const std::string &key, bool constrainType, DATA_TYPE wantedType, const std::vector< std::string > &defaultValue, bool required)
     Whole constructor. More...
     
    - - - - - - - -

    -Static Public Member Functions

    static ParamConstraint Require (const std::string &key, const std::vector< std::string > &defaultValue={}, bool required=true)
     Constructs a require constraint. More...
     
    static ParamConstraint TypeSafety (const std::string &key, DATA_TYPE wantedType, bool constrainType=true)
     Constructs a type-safety constraint. More...
     
    - - - - - - - - - - - - - - - - -

    -Public Attributes

    std::string key
     The key of the parameter to constrain. More...
     
    bool constrainType = false
     Should this parameter be forced to be of a certain type?
    - Remember to set constrainTo to the wanted type. More...
     
    DATA_TYPE wantedType = DATA_TYPE::VOID
     Constrain the parameter to this value. Requires constrainType to be set to true. More...
     
    std::vector< std::string > defaultValue
     The default value for this parameter. More...
     
    bool required = false
     If set to true, and no default value set, an error will be produced if this parameter is not supplied by the user. More...
     
    -

    Detailed Description

    -
    -

    Definition at line 6 of file ParamConstraint.h.

    -

    Constructor & Destructor Documentation

    - -

    ◆ ParamConstraint() [1/2]

    - -
    -
    - - - - - -
    - - - - - - - -
    ParamConstraint::ParamConstraint ()
    -
    -default
    -
    - -

    Empty constructor.

    - -
    -
    - -

    ◆ ParamConstraint() [2/2]

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ParamConstraint::ParamConstraint (const std::string & key,
    bool constrainType,
    DATA_TYPE wantedType,
    const std::vector< std::string > & defaultValue,
    bool required 
    )
    -
    -inline
    -
    - -

    Whole constructor.

    - -

    Definition at line 36 of file ParamConstraint.h.

    -
    37  :
    -
    38  key { key },
    - - - - -
    43  {
    -
    44  return;
    -
    45  }
    -
    -
    -
    -

    Member Function Documentation

    - -

    ◆ Require()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    static ParamConstraint ParamConstraint::Require (const std::string & key,
    const std::vector< std::string > & defaultValue = {},
    bool required = true 
    )
    -
    -inlinestatic
    -
    - -

    Constructs a require constraint.

    -


    - Think of the default value like of a list ofparameters. Like {"--width", "800"}

    - -

    Definition at line 14 of file ParamConstraint.h.

    -
    14  {}, bool required = true)
    -
    15  {
    -
    16  ParamConstraint pc;
    -
    17  pc.key = key;
    - -
    19  pc.required = required;
    -
    20 
    -
    21  return pc;
    -
    22  }
    -
    -
    -
    - -

    ◆ TypeSafety()

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    static ParamConstraint ParamConstraint::TypeSafety (const std::string & key,
    DATA_TYPE wantedType,
    bool constrainType = true 
    )
    -
    -inlinestatic
    -
    - -

    Constructs a type-safety constraint.

    - -

    Definition at line 25 of file ParamConstraint.h.

    -
    26  {
    -
    27  ParamConstraint pc;
    -
    28  pc.key = key;
    - - -
    31 
    -
    32  return pc;
    -
    33  }
    -
    -
    -
    -

    Member Data Documentation

    - -

    ◆ constrainType

    - -
    -
    - - - - -
    bool ParamConstraint::constrainType = false
    -
    - -

    Should this parameter be forced to be of a certain type?
    - Remember to set constrainTo to the wanted type.

    - -

    Definition at line 52 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ defaultValue

    - -
    -
    - - - - -
    std::vector<std::string> ParamConstraint::defaultValue
    -
    - -

    The default value for this parameter.

    -


    - Gets applied if this parameter was not given.
    - Think of this like a list of parameters. Like {"--width", "800"}

    - -

    Definition at line 60 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ key

    - -
    -
    - - - - -
    std::string ParamConstraint::key
    -
    - -

    The key of the parameter to constrain.

    - -

    Definition at line 48 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ required

    - -
    -
    - - - - -
    bool ParamConstraint::required = false
    -
    - -

    If set to true, and no default value set, an error will be produced if this parameter is not supplied by the user.

    - -

    Definition at line 64 of file ParamConstraint.h.

    - -
    -
    - -

    ◆ wantedType

    - -
    -
    - - - - -
    DATA_TYPE ParamConstraint::wantedType = DATA_TYPE::VOID
    -
    - -

    Constrain the parameter to this value. Requires constrainType to be set to true.

    - -

    Definition at line 55 of file ParamConstraint.h.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    bool required
    If set to true, and no default value set, an error will be produced if this parameter is not supplied...
    -
    std::vector< std::string > defaultValue
    The default value for this parameter.
    -
    std::string key
    The key of the parameter to constrain.
    -
    bool constrainType
    Should this parameter be forced to be of a certain type? Remember to set constrainTo to the wanted ...
    -
    DATA_TYPE wantedType
    Constrain the parameter to this value. Requires constrainType to be set to true.
    - - - - - diff --git a/docs/structParamConstraint__coll__graph.map b/docs/structParamConstraint__coll__graph.map deleted file mode 100644 index 1fdea4c..0000000 --- a/docs/structParamConstraint__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/docs/structParamConstraint__coll__graph.md5 b/docs/structParamConstraint__coll__graph.md5 deleted file mode 100644 index 691b7a5..0000000 --- a/docs/structParamConstraint__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -5b0c26b5610c7f0182528e961c22a058 \ No newline at end of file diff --git a/docs/structParamConstraint__coll__graph.png b/docs/structParamConstraint__coll__graph.png deleted file mode 100644 index bb5d73e11177d0a9ae1f91df71d5ef52bf783712..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13567 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 diff --git a/docs/sync_off.png b/docs/sync_off.png deleted file mode 100644 index 6535f48bc5771af78491556f231aea7a7822adaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 820 zcmV-41Izr0P)J%W)=WM$OUj*OZPnntEeVf)yF1w?Xs+42q1d7J_9jqM(}~h`Oqat|BOw ztv_Hd7NQ_yS!&seSy(ATRJ0$6;G(-~YCX^CoSAcuGos<`JI{ynzH>P5_kExDd7k&y z^ZTC<0SZws91^;PP9Y)qgpa~&;hFGQcmt3RKR_Ph!bPFq>;n$d|Ju#>v%)XJRbd!# zSU!PX;kM8Sum&~>XNAMUkHUTXOD|xzlftj-nB3kfgnPnIg#-=?cUN&6z*@L2oOTPS z`kf7!+-kRkR=dC@Aqn6n5GV%7i_cqdJte{w!J`6o!YROE9{DvlbS+m^qyX{~iNr~# zy7Bn}0B(-xE>xgTD6_vQ3WR8F-bY1w(!0F81dx}d#RbYsYiUpS5Dvuv-1Mu!Ui&|> zNF{CQ1H__L0Ba%~DrI}~ei2h=06FVZft}VU5pR+$@1Z!Tq5ZAt3LEM>X-w`guv$a1 zlbS?}?W}@qYwV(~y3G-~Dp0At)Ye_bM?RnP;36fPNmMpb6;H7#ob#kEM#UZHCP!Ld z(?(0v-YM&_RluXYp!gkNH8MkwjHi7k0B!>Q;Cxn8irtVr(>h4jc2Juz!Z+LI7yje( z=l_j$SOOg_nv-9Q=m`}^ft-Ds9Om7~3u`#00uQ8fJnOXbq~UYFzsMMmj%OJE@DIQW zq9t(&h#sS_(Kb4f;r&NPVSTL*AG8ZhPK`1*H)EVhI26U})#?ne5-a|7m%8fdf3=DO zIUCd+sC)j>XmgZVe^3%_H#4(Sj7|Ivu!6E!jp5R_!+(f~R&4+WyHr3sTI8|?${rPx zbc^zF-kRX|6|wwf$#4&Vizj+nSpr*xS3)Vk2C!fz@N=u!jR-#gY!H`qa`%n)vrui; zbAa#Vrf{v$jdnvA5T*gvi6++t;k+Z#2F@J?9QM+@Hp|UR!@URqH@^vI1kEWRXN7Kz yjBrAeRyZc~3UTuyQNbBa8R4lpso`$`H(vqb3!fjo?fQiP0000&T-}(XT-|w%k#nGIr={5yzleA@7DG3 z=^cPln#3;ABf3OPc*K|(5)Z`R;uSzKUVtK^;*97suK`==y$LN)1n_w_XI@yEA;{zyW zpMHfV*dwX|Ta@_%w57JWBQlt8)&zQ?o7}<%<*1G?vgo|dPQ0En zW2}oULbLs&hn1CJt@u||0jz*Ia{)iLHoFmV5@3a#)6ShI+Mi;Lxt|04tSjPTsT1w8 z=oga!KS&qXY4N+Q+WJrI2W;`oJT`00L&NzJ08aPBF`;V;$VaJDV^|y#o#KGlEu!W@ mq6w#TxrqB_r^a{#IDG?pf}D{v=a?}70000t<`@Eca&NF7KH-a^6KpPl5UHx3vIVCg!0CrC>zW@LL diff --git a/docs/tab_b.png b/docs/tab_b.png deleted file mode 100644 index 30949f789e1a75cb708fd6dde9a90907fb81e746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QmLLUjv*C{Z|4T`9Wvl?7OuYK z`@NZEQOOqH>ZE@H;u@Y?n{9sH{G|Bg_wR(qd_|8Xj@fBd>u))5FK6CazY}xT=&}n; zyy{)uy7|f$qo>j#S7H~wnqN@b|NqvZ^|_1(KAx+&_p?H-{^v)j*+OS)Jb@N6c)I$z JtaD0e0s!evK%4*o diff --git a/docs/tab_h.png b/docs/tab_h.png deleted file mode 100644 index 112c6d435c389e605edaeb06b8763c0a94514b4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QYoG;jv*C{Z||PwZ86|+4ZPid z;i1lr4USx#E&d5obNMD{s93mNK7MuMpIHlD|Le?-Vw5@eev#^v;%jP8l(_^GPdnw2#5l)z4*} HQ$iB}NMAfB diff --git a/docs/tab_s.png b/docs/tab_s.png deleted file mode 100644 index 34878fa24f810af7ffa542476624367fcc414d0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QiYx_jv*C{Z|`>VHXHD`26me( z<+A?eFjeI%l$x|bTUepASLBS6d-%4L^A5N3T_cw$t~$|eAAN4wqX|aI=hl3lqm%S& zg+T8+ryA!+7XsE!c+Vgomo-U!j?IHVvTLettPEbfJMqcuI)8&Zhi;r+XZ!Cj<0l>M V$bF}mKLT3L;OXk;vd$@?2>@veLjC{% diff --git a/docs/tabs.css b/docs/tabs.css deleted file mode 100644 index 7d45d36..0000000 --- a/docs/tabs.css +++ /dev/null @@ -1 +0,0 @@ -.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}