Renamed 'ParamConstraint::wantedType' to 'ParamConstraint::requiredType'
This commit is contained in:
parent
09a2ce4e74
commit
1b8c156314
BIN
Hazelnupp.vpp
BIN
Hazelnupp.vpp
Binary file not shown.
@ -182,21 +182,21 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
|
||||
// Is a list forced via a constraint? If yes, return an empty list
|
||||
if ((constrainType) &&
|
||||
(constraint->wantedType == DATA_TYPE::LIST))
|
||||
(constraint->requiredType == DATA_TYPE::LIST))
|
||||
return new ListValue();
|
||||
|
||||
// Is a string forced via a constraint? If yes, return an empty string
|
||||
else if ((constrainType) &&
|
||||
(constraint->wantedType == DATA_TYPE::STRING))
|
||||
(constraint->requiredType == DATA_TYPE::STRING))
|
||||
return new StringValue("");
|
||||
|
||||
// Is an int or float forced via constraint? If yes, throw an exception
|
||||
else if ((constrainType) &&
|
||||
((constraint->wantedType == DATA_TYPE::INT) ||
|
||||
(constraint->wantedType == DATA_TYPE::FLOAT)))
|
||||
((constraint->requiredType == DATA_TYPE::INT) ||
|
||||
(constraint->requiredType == DATA_TYPE::FLOAT)))
|
||||
throw HazelnuppConstraintTypeMissmatch(
|
||||
constraint->key,
|
||||
constraint->wantedType,
|
||||
constraint->requiredType,
|
||||
rawInputType,
|
||||
GetDescription(constraint->key)
|
||||
);
|
||||
@ -207,7 +207,7 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
|
||||
// Force void type by constraint
|
||||
else if ((constrainType) &&
|
||||
(constraint->wantedType == DATA_TYPE::VOID))
|
||||
(constraint->requiredType == DATA_TYPE::VOID))
|
||||
{
|
||||
return new VoidValue;
|
||||
}
|
||||
@ -219,11 +219,11 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
|
||||
// Should the type be something other than list?
|
||||
if ((constrainType) &&
|
||||
(constraint->wantedType != DATA_TYPE::LIST))
|
||||
(constraint->requiredType != DATA_TYPE::LIST))
|
||||
{
|
||||
throw HazelnuppConstraintTypeMissmatch(
|
||||
constraint->key,
|
||||
constraint->wantedType,
|
||||
constraint->requiredType,
|
||||
rawInputType,
|
||||
GetDescription(constraint->key)
|
||||
);
|
||||
@ -250,10 +250,10 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
// Is the type not supposed to be a string?
|
||||
// void and list are already sorted out
|
||||
if ((constrainType) &&
|
||||
(constraint->wantedType != DATA_TYPE::STRING))
|
||||
(constraint->requiredType != DATA_TYPE::STRING))
|
||||
{
|
||||
// We can only force a list-value from here
|
||||
if (constraint->wantedType == DATA_TYPE::LIST)
|
||||
if (constraint->requiredType == DATA_TYPE::LIST)
|
||||
{
|
||||
ListValue* list = new ListValue();
|
||||
Value* tmp = ParseValue({ val });
|
||||
@ -266,7 +266,7 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
else
|
||||
throw HazelnuppConstraintTypeMissmatch(
|
||||
constraint->key,
|
||||
constraint->wantedType,
|
||||
constraint->requiredType,
|
||||
rawInputType,
|
||||
GetDescription(constraint->key)
|
||||
);
|
||||
@ -278,7 +278,7 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
// In this case we have a numeric value.
|
||||
// We should still produce a string if requested
|
||||
if ((constrainType) &&
|
||||
(constraint->wantedType == DATA_TYPE::STRING))
|
||||
(constraint->requiredType == DATA_TYPE::STRING))
|
||||
return new StringValue(val);
|
||||
|
||||
// Numeric
|
||||
@ -294,10 +294,10 @@ Value* Hazelnupp::ParseValue(const std::vector<std::string>& values, const Param
|
||||
if (constrainType)
|
||||
{
|
||||
// Must it be an integer?
|
||||
if (constraint->wantedType == DATA_TYPE::INT)
|
||||
if (constraint->requiredType == DATA_TYPE::INT)
|
||||
return new IntValue((long long int)num);
|
||||
// Must it be a floating point?
|
||||
else if (constraint->wantedType == DATA_TYPE::FLOAT)
|
||||
else if (constraint->requiredType == DATA_TYPE::FLOAT)
|
||||
return new FloatValue(num);
|
||||
// Else it must be a List
|
||||
else
|
||||
@ -442,7 +442,7 @@ std::string Hazelnupp::GenerateDocumentation() const
|
||||
ParamDocEntry& cached = paramInfos[it.first];
|
||||
cached.required = it.second.required;
|
||||
cached.typeIsForced = it.second.constrainType;
|
||||
cached.type = DataTypeToString(it.second.wantedType);
|
||||
cached.type = DataTypeToString(it.second.requiredType);
|
||||
|
||||
std::stringstream defaultValueSs;
|
||||
for (const std::string& s : it.second.defaultValue)
|
||||
|
@ -23,20 +23,20 @@ namespace Hazelnp
|
||||
}
|
||||
|
||||
//! Constructs a type-safety constraint
|
||||
static ParamConstraint TypeSafety(DATA_TYPE wantedType, bool constrainType = true)
|
||||
static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType = true)
|
||||
{
|
||||
ParamConstraint pc;
|
||||
pc.constrainType = constrainType;
|
||||
pc.wantedType = wantedType;
|
||||
pc.requiredType = requiredType;
|
||||
|
||||
return pc;
|
||||
}
|
||||
|
||||
//! Whole constructor
|
||||
ParamConstraint(bool constrainType, DATA_TYPE wantedType, const std::vector<std::string>& defaultValue, bool required)
|
||||
ParamConstraint(bool constrainType, DATA_TYPE requiredType, const std::vector<std::string>& defaultValue, bool required)
|
||||
:
|
||||
constrainType{ constrainType },
|
||||
wantedType{ wantedType },
|
||||
requiredType{ requiredType },
|
||||
defaultValue{ defaultValue },
|
||||
required{ required }
|
||||
{
|
||||
@ -48,7 +48,7 @@ namespace Hazelnp
|
||||
bool constrainType = false;
|
||||
|
||||
//! Constrain the parameter to this value. Requires `constrainType` to be set to true.
|
||||
DATA_TYPE wantedType = DATA_TYPE::VOID;
|
||||
DATA_TYPE requiredType = DATA_TYPE::VOID;
|
||||
|
||||
//! The default value for this parameter.
|
||||
//! Gets applied if this parameter was not given.
|
||||
|
@ -519,7 +519,7 @@ namespace TestHazelnupp
|
||||
// Verify
|
||||
Assert::IsTrue(dftvalConst_expected.required == dftvalConst.required, L"required");
|
||||
Assert::IsTrue(dftvalConst_expected.defaultValue == dftvalConst.defaultValue, L"defaultValue");
|
||||
Assert::IsTrue(dftvalConst_expected.wantedType == dftvalConst.wantedType, L"wantedType");
|
||||
Assert::IsTrue(dftvalConst_expected.requiredType == dftvalConst.requiredType, L"requiredType");
|
||||
Assert::IsTrue(dftvalConst_expected.constrainType == dftvalConst.constrainType, L"constrainType");
|
||||
|
||||
return;
|
||||
|
@ -244,7 +244,7 @@ Note that you can also combine these two constraint-types by populating the stru
|
||||
```cpp
|
||||
ParamConstraint pc;
|
||||
pc.constrainType = true;
|
||||
pc.wantedType = DATA_TYPE::STRING;
|
||||
pc.requiredType = DATA_TYPE::STRING;
|
||||
pc.defaultValue = {}; // no default value
|
||||
pc.required = true;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user