Sim: Replace all wxStrings with std::strings in SIM_VALUE
This commit is contained in:
parent
d19b2dbfe4
commit
4ae2225b6d
|
@ -1232,7 +1232,8 @@ void SCH_SHEET_LIST::MigrateSimModelNameFields()
|
||||||
|
|
||||||
std::unique_ptr<SIM_VALUE> simValue =
|
std::unique_ptr<SIM_VALUE> simValue =
|
||||||
SIM_VALUE::Create( SIM_VALUE::TYPE_FLOAT );
|
SIM_VALUE::Create( SIM_VALUE::TYPE_FLOAT );
|
||||||
simValue->FromString( prefix + unit + suffix, SIM_VALUE::NOTATION::SPICE );
|
simValue->FromString( ( prefix + unit + suffix ).ToStdString(),
|
||||||
|
SIM_VALUE::NOTATION::SPICE );
|
||||||
|
|
||||||
if( value == simValue->ToString() )
|
if( value == simValue->ToString() )
|
||||||
continue; // Can stay the same.
|
continue; // Can stay the same.
|
||||||
|
|
|
@ -1003,7 +1003,7 @@ bool SIM_MODEL::SetParamValue( unsigned aParamIndex, const wxString& aValue,
|
||||||
if( m_spiceCode != "" )
|
if( m_spiceCode != "" )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return m_params.at( aParamIndex ).value->FromString( aValue, aNotation );
|
return m_params.at( aParamIndex ).value->FromString( aValue.ToStdString(), aNotation );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1350,7 +1350,8 @@ TYPE SIM_MODEL::readTypeFromSpiceStrings( const wxString& aTypeString,
|
||||||
const wxString& aVersion,
|
const wxString& aVersion,
|
||||||
bool aSkipDefaultLevel )
|
bool aSkipDefaultLevel )
|
||||||
{
|
{
|
||||||
std::unique_ptr<SIM_VALUE> readLevel = SIM_VALUE::Create( SIM_VALUE::TYPE_INT, aLevel );
|
std::unique_ptr<SIM_VALUE> readLevel = SIM_VALUE::Create( SIM_VALUE::TYPE_INT,
|
||||||
|
aLevel.ToStdString() );
|
||||||
|
|
||||||
for( TYPE type : TYPE_ITERATOR() )
|
for( TYPE type : TYPE_ITERATOR() )
|
||||||
{
|
{
|
||||||
|
|
|
@ -67,7 +67,7 @@ wxString SPICE_GENERATOR_SOURCE::ItemLine( const wxString& aRefName,
|
||||||
case SIM_MODEL::TYPE::V_PWL:
|
case SIM_MODEL::TYPE::V_PWL:
|
||||||
case SIM_MODEL::TYPE::I_PWL:
|
case SIM_MODEL::TYPE::I_PWL:
|
||||||
{
|
{
|
||||||
tao::pegtl::string_input<> in( m_model.GetParam( 0 ).value->ToString().ToUTF8(),
|
tao::pegtl::string_input<> in( m_model.GetParam( 0 ).value->ToString(),
|
||||||
"from_content" );
|
"from_content" );
|
||||||
std::unique_ptr<tao::pegtl::parse_tree::node> root;
|
std::unique_ptr<tao::pegtl::parse_tree::node> root;
|
||||||
|
|
||||||
|
|
|
@ -190,7 +190,7 @@ bool SIM_MODEL_SPICE::SetParamFromSpiceCode( const wxString& aParamName,
|
||||||
AddParam( *m_paramInfos.back() );
|
AddParam( *m_paramInfos.back() );
|
||||||
}
|
}
|
||||||
|
|
||||||
return GetParam( paramIndex ).value->FromString( wxString( aParamValue ), aNotation );
|
return GetParam( paramIndex ).value->FromString( aParamValue.ToStdString(), aNotation );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -237,7 +237,7 @@ bool SIM_STRING_VALIDATOR::TransferFromWindow()
|
||||||
|
|
||||||
bool SIM_STRING_VALIDATOR::isValid( const wxString& aString )
|
bool SIM_STRING_VALIDATOR::isValid( const wxString& aString )
|
||||||
{
|
{
|
||||||
return SIM_VALUE_GRAMMAR::IsValid( aString, m_valueType, m_notation );
|
return SIM_VALUE_GRAMMAR::IsValid( aString.ToStdString(), m_valueType, m_notation );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -107,7 +107,7 @@ namespace SIM_VALUE_PARSER
|
||||||
std::optional<long> metricSuffixExponent;
|
std::optional<long> metricSuffixExponent;
|
||||||
};
|
};
|
||||||
|
|
||||||
PARSE_RESULT Parse( const wxString& aString,
|
PARSE_RESULT Parse( const std::string& aString,
|
||||||
NOTATION aNotation = NOTATION::SI,
|
NOTATION aNotation = NOTATION::SI,
|
||||||
SIM_VALUE::TYPE aValueType = SIM_VALUE::TYPE_FLOAT );
|
SIM_VALUE::TYPE aValueType = SIM_VALUE::TYPE_FLOAT );
|
||||||
|
|
||||||
|
@ -124,11 +124,11 @@ static inline void doIsValid( tao::pegtl::string_input<>& aIn )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool SIM_VALUE_GRAMMAR::IsValid( const wxString& aString,
|
bool SIM_VALUE_GRAMMAR::IsValid( const std::string& aString,
|
||||||
SIM_VALUE::TYPE aValueType,
|
SIM_VALUE::TYPE aValueType,
|
||||||
NOTATION aNotation )
|
NOTATION aNotation )
|
||||||
{
|
{
|
||||||
tao::pegtl::string_input<> in( aString.ToUTF8(), "from_content" );
|
tao::pegtl::string_input<> in( aString, "from_content" );
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -186,13 +186,13 @@ static inline void handleNodeForParse( tao::pegtl::parse_tree::node& aNode,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
SIM_VALUE_PARSER::PARSE_RESULT SIM_VALUE_PARSER::Parse( const wxString& aString,
|
SIM_VALUE_PARSER::PARSE_RESULT SIM_VALUE_PARSER::Parse( const std::string& aString,
|
||||||
NOTATION aNotation,
|
NOTATION aNotation,
|
||||||
SIM_VALUE::TYPE aValueType )
|
SIM_VALUE::TYPE aValueType )
|
||||||
{
|
{
|
||||||
LOCALE_IO toggle;
|
LOCALE_IO toggle;
|
||||||
|
|
||||||
tao::pegtl::string_input<> in( aString.ToUTF8(), "from_content" );
|
tao::pegtl::string_input<> in( aString, "from_content" );
|
||||||
std::unique_ptr<tao::pegtl::parse_tree::node> root;
|
std::unique_ptr<tao::pegtl::parse_tree::node> root;
|
||||||
PARSE_RESULT result;
|
PARSE_RESULT result;
|
||||||
|
|
||||||
|
@ -217,7 +217,7 @@ SIM_VALUE_PARSER::PARSE_RESULT SIM_VALUE_PARSER::Parse( const wxString& aString,
|
||||||
}
|
}
|
||||||
catch( const std::invalid_argument& e )
|
catch( const std::invalid_argument& e )
|
||||||
{
|
{
|
||||||
wxFAIL_MSG( wxString::Format( "Parsing simulator value failed: %s", e.what() ) );
|
wxFAIL_MSG( fmt::format( "Parsing simulator value failed: {:s}", e.what() ) );
|
||||||
result.isOk = false;
|
result.isOk = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -280,7 +280,7 @@ long SIM_VALUE_PARSER::MetricSuffixToExponent( std::string aMetricSuffix, NOTATI
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxFAIL_MSG( wxString::Format( "Unknown simulator value suffix: '%s'", aMetricSuffix ) );
|
wxFAIL_MSG( fmt::format( "Unknown simulator value suffix: '{:s}'", aMetricSuffix ) );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -359,7 +359,7 @@ std::string SIM_VALUE_PARSER::ExponentToMetricSuffix( double aExponent, long& aR
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
std::unique_ptr<SIM_VALUE> SIM_VALUE::Create( TYPE aType, wxString aString )
|
std::unique_ptr<SIM_VALUE> SIM_VALUE::Create( TYPE aType, std::string aString )
|
||||||
{
|
{
|
||||||
std::unique_ptr<SIM_VALUE> value = SIM_VALUE::Create( aType );
|
std::unique_ptr<SIM_VALUE> value = SIM_VALUE::Create( aType );
|
||||||
value->FromString( aString );
|
value->FromString( aString );
|
||||||
|
@ -387,7 +387,7 @@ std::unique_ptr<SIM_VALUE> SIM_VALUE::Create( TYPE aType )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void SIM_VALUE::operator=( const wxString& aString )
|
void SIM_VALUE::operator=( const std::string& aString )
|
||||||
{
|
{
|
||||||
FromString( aString );
|
FromString( aString );
|
||||||
}
|
}
|
||||||
|
@ -408,7 +408,7 @@ template SIM_VALUE_BOOL::SIM_VALUE_INST( const bool& aValue );
|
||||||
template SIM_VALUE_INT::SIM_VALUE_INST( const long& aValue );
|
template SIM_VALUE_INT::SIM_VALUE_INST( const long& aValue );
|
||||||
template SIM_VALUE_FLOAT::SIM_VALUE_INST( const double& aValue );
|
template SIM_VALUE_FLOAT::SIM_VALUE_INST( const double& aValue );
|
||||||
template SIM_VALUE_COMPLEX::SIM_VALUE_INST( const std::complex<double>& aValue );
|
template SIM_VALUE_COMPLEX::SIM_VALUE_INST( const std::complex<double>& aValue );
|
||||||
template SIM_VALUE_STRING::SIM_VALUE_INST( const wxString& aValue );
|
template SIM_VALUE_STRING::SIM_VALUE_INST( const std::string& aValue );
|
||||||
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
|
@ -419,7 +419,7 @@ bool SIM_VALUE_INST<T>::HasValue() const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
bool SIM_VALUE_BOOL::FromString( const wxString& aString, NOTATION aNotation )
|
bool SIM_VALUE_BOOL::FromString( const std::string& aString, NOTATION aNotation )
|
||||||
{
|
{
|
||||||
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
||||||
m_value = std::nullopt;
|
m_value = std::nullopt;
|
||||||
|
@ -445,7 +445,7 @@ bool SIM_VALUE_BOOL::FromString( const wxString& aString, NOTATION aNotation )
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
bool SIM_VALUE_INT::FromString( const wxString& aString, NOTATION aNotation )
|
bool SIM_VALUE_INT::FromString( const std::string& aString, NOTATION aNotation )
|
||||||
{
|
{
|
||||||
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
||||||
m_value = std::nullopt;
|
m_value = std::nullopt;
|
||||||
|
@ -468,7 +468,7 @@ bool SIM_VALUE_INT::FromString( const wxString& aString, NOTATION aNotation )
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
bool SIM_VALUE_FLOAT::FromString( const wxString& aString, NOTATION aNotation )
|
bool SIM_VALUE_FLOAT::FromString( const std::string& aString, NOTATION aNotation )
|
||||||
{
|
{
|
||||||
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
SIM_VALUE_PARSER::PARSE_RESULT parseResult = SIM_VALUE_PARSER::Parse( aString, aNotation );
|
||||||
m_value = std::nullopt;
|
m_value = std::nullopt;
|
||||||
|
@ -501,7 +501,7 @@ bool SIM_VALUE_FLOAT::FromString( const wxString& aString, NOTATION aNotation )
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
bool SIM_VALUE_COMPLEX::FromString( const wxString& aString,
|
bool SIM_VALUE_COMPLEX::FromString( const std::string& aString,
|
||||||
NOTATION aNotation )
|
NOTATION aNotation )
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
@ -519,7 +519,7 @@ bool SIM_VALUE_COMPLEX::FromString( const wxString& aString,
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
bool SIM_VALUE_STRING::FromString( const wxString& aString, NOTATION aNotation )
|
bool SIM_VALUE_STRING::FromString( const std::string& aString, NOTATION aNotation )
|
||||||
{
|
{
|
||||||
m_value = aString;
|
m_value = aString;
|
||||||
return true;
|
return true;
|
||||||
|
@ -527,11 +527,11 @@ bool SIM_VALUE_STRING::FromString( const wxString& aString, NOTATION aNotation )
|
||||||
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
wxString SIM_VALUE_INST<T>::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_INST<T>::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
static_assert( std::is_same<T, std::vector<T>>::value );
|
static_assert( std::is_same<T, std::vector<T>>::value );
|
||||||
|
|
||||||
wxString string = "";
|
std::string string = "";
|
||||||
|
|
||||||
for( auto it = m_value.cbegin(); it != m_value.cend(); it++ )
|
for( auto it = m_value.cbegin(); it != m_value.cend(); it++ )
|
||||||
{
|
{
|
||||||
|
@ -544,7 +544,7 @@ wxString SIM_VALUE_INST<T>::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_BOOL::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_BOOL::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
return fmt::format( "{:d}", *m_value );
|
return fmt::format( "{:d}", *m_value );
|
||||||
|
@ -554,7 +554,7 @@ wxString SIM_VALUE_BOOL::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_INT::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_INT::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
{
|
{
|
||||||
|
@ -578,7 +578,7 @@ wxString SIM_VALUE_INT::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_FLOAT::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_FLOAT::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
{
|
{
|
||||||
|
@ -597,7 +597,7 @@ wxString SIM_VALUE_FLOAT::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_COMPLEX::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_COMPLEX::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
return fmt::format( "{:g}+{:g}i", m_value->real(), m_value->imag() );
|
return fmt::format( "{:g}+{:g}i", m_value->real(), m_value->imag() );
|
||||||
|
@ -607,7 +607,7 @@ wxString SIM_VALUE_COMPLEX::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_STRING::ToString( NOTATION aNotation ) const
|
std::string SIM_VALUE_STRING::ToString( NOTATION aNotation ) const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
return *m_value;
|
return *m_value;
|
||||||
|
@ -617,25 +617,21 @@ wxString SIM_VALUE_STRING::ToString( NOTATION aNotation ) const
|
||||||
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
wxString SIM_VALUE_INST<T>::ToSimpleString() const
|
std::string SIM_VALUE_INST<T>::ToSimpleString() const
|
||||||
{
|
{
|
||||||
if( m_value )
|
if( m_value )
|
||||||
{
|
return fmt::format( "{}", *m_value );
|
||||||
wxString result = "";
|
|
||||||
result << *m_value;
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
wxString SIM_VALUE_COMPLEX::ToSimpleString() const
|
std::string SIM_VALUE_COMPLEX::ToSimpleString() const
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
|
||||||
/*wxString result = "";
|
/*std::string result = "";
|
||||||
result << *m_value;
|
result << *m_value;
|
||||||
|
|
||||||
return result;*/
|
return result;*/
|
||||||
|
@ -665,7 +661,7 @@ bool SIM_VALUE_BOOL::operator==( const bool& aOther ) const
|
||||||
template bool SIM_VALUE_INT::operator==( const long& aOther ) const;
|
template bool SIM_VALUE_INT::operator==( const long& aOther ) const;
|
||||||
template bool SIM_VALUE_FLOAT::operator==( const double& aOther ) const;
|
template bool SIM_VALUE_FLOAT::operator==( const double& aOther ) const;
|
||||||
template bool SIM_VALUE_COMPLEX::operator==( const std::complex<double>& aOther ) const;
|
template bool SIM_VALUE_COMPLEX::operator==( const std::complex<double>& aOther ) const;
|
||||||
template bool SIM_VALUE_STRING::operator==( const wxString& aOther ) const;
|
template bool SIM_VALUE_STRING::operator==( const std::string& aOther ) const;
|
||||||
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
|
|
|
@ -65,7 +65,7 @@ public:
|
||||||
TYPE_COMPLEX_VECTOR
|
TYPE_COMPLEX_VECTOR
|
||||||
};
|
};
|
||||||
|
|
||||||
static std::unique_ptr<SIM_VALUE> Create( TYPE aType, wxString aString );
|
static std::unique_ptr<SIM_VALUE> Create( TYPE aType, std::string aString );
|
||||||
static std::unique_ptr<SIM_VALUE> Create( TYPE aType );
|
static std::unique_ptr<SIM_VALUE> Create( TYPE aType );
|
||||||
|
|
||||||
virtual ~SIM_VALUE() = default;
|
virtual ~SIM_VALUE() = default;
|
||||||
|
@ -73,16 +73,16 @@ public:
|
||||||
|
|
||||||
virtual bool HasValue() const = 0;
|
virtual bool HasValue() const = 0;
|
||||||
|
|
||||||
void operator=( const wxString& aString );
|
void operator=( const std::string& aString );
|
||||||
virtual bool operator==( const SIM_VALUE& aOther ) const = 0;
|
virtual bool operator==( const SIM_VALUE& aOther ) const = 0;
|
||||||
bool operator!=( const SIM_VALUE& aOther ) const;
|
bool operator!=( const SIM_VALUE& aOther ) const;
|
||||||
|
|
||||||
virtual bool FromString( const wxString& aString, NOTATION aNotation = NOTATION::SI ) = 0;
|
virtual bool FromString( const std::string& aString, NOTATION aNotation = NOTATION::SI ) = 0;
|
||||||
virtual wxString ToString( NOTATION aNotation = NOTATION::SI ) const = 0;
|
virtual std::string ToString( NOTATION aNotation = NOTATION::SI ) const = 0;
|
||||||
wxString ToSpiceString() const { return ToString( NOTATION::SPICE ); }
|
std::string ToSpiceString() const { return ToString( NOTATION::SPICE ); }
|
||||||
|
|
||||||
// For parsers that don't accept strings with our suffixes.
|
// For parsers that don't accept strings with our suffixes.
|
||||||
virtual wxString ToSimpleString() const = 0;
|
virtual std::string ToSimpleString() const = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -96,9 +96,9 @@ public:
|
||||||
bool HasValue() const override;
|
bool HasValue() const override;
|
||||||
|
|
||||||
// TODO: Don't pass aNotation. Make a FromSpiceString() function instead.
|
// TODO: Don't pass aNotation. Make a FromSpiceString() function instead.
|
||||||
bool FromString( const wxString& aString, NOTATION aNotation = NOTATION::SI ) override;
|
bool FromString( const std::string& aString, NOTATION aNotation = NOTATION::SI ) override;
|
||||||
wxString ToString( NOTATION aNotation = NOTATION::SI ) const override;
|
std::string ToString( NOTATION aNotation = NOTATION::SI ) const override;
|
||||||
wxString ToSimpleString() const override;
|
std::string ToSimpleString() const override;
|
||||||
|
|
||||||
void operator=( const T& aValue );
|
void operator=( const T& aValue );
|
||||||
bool operator==( const T& aOther ) const;
|
bool operator==( const T& aOther ) const;
|
||||||
|
@ -121,7 +121,7 @@ public:
|
||||||
const SIM_VALUE_INST<Type>& aRight );
|
const SIM_VALUE_INST<Type>& aRight );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
wxString getMetricSuffix();
|
std::string getMetricSuffix();
|
||||||
|
|
||||||
std::optional<T> m_value = std::nullopt;
|
std::optional<T> m_value = std::nullopt;
|
||||||
};
|
};
|
||||||
|
@ -130,13 +130,13 @@ typedef SIM_VALUE_INST<bool> SIM_VALUE_BOOL;
|
||||||
typedef SIM_VALUE_INST<long> SIM_VALUE_INT;
|
typedef SIM_VALUE_INST<long> SIM_VALUE_INT;
|
||||||
typedef SIM_VALUE_INST<double> SIM_VALUE_FLOAT;
|
typedef SIM_VALUE_INST<double> SIM_VALUE_FLOAT;
|
||||||
typedef SIM_VALUE_INST<std::complex<double>> SIM_VALUE_COMPLEX;
|
typedef SIM_VALUE_INST<std::complex<double>> SIM_VALUE_COMPLEX;
|
||||||
typedef SIM_VALUE_INST<wxString> SIM_VALUE_STRING;
|
typedef SIM_VALUE_INST<std::string> SIM_VALUE_STRING;
|
||||||
|
|
||||||
|
|
||||||
namespace SIM_VALUE_GRAMMAR
|
namespace SIM_VALUE_GRAMMAR
|
||||||
{
|
{
|
||||||
template <NOTATION Notation>
|
template <NOTATION Notation>
|
||||||
wxString allowedIntChars;
|
std::string allowedIntChars;
|
||||||
|
|
||||||
|
|
||||||
struct digits : plus<tao::pegtl::digit> {}; // For some reason it fails on just "digit".
|
struct digits : plus<tao::pegtl::digit> {}; // For some reason it fails on just "digit".
|
||||||
|
@ -212,7 +212,7 @@ namespace SIM_VALUE_GRAMMAR
|
||||||
struct numberGrammar : must<number<ValueType, Notation>, tao::pegtl::eof> {};
|
struct numberGrammar : must<number<ValueType, Notation>, tao::pegtl::eof> {};
|
||||||
|
|
||||||
|
|
||||||
bool IsValid( const wxString& aString,
|
bool IsValid( const std::string& aString,
|
||||||
SIM_VALUE::TYPE aValueType = SIM_VALUE::TYPE_FLOAT,
|
SIM_VALUE::TYPE aValueType = SIM_VALUE::TYPE_FLOAT,
|
||||||
NOTATION aNotation = NOTATION::SI );
|
NOTATION aNotation = NOTATION::SI );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue