public ICLS_Expression Compiler_Expression_SubValue(Token value)
{
if (value.type == TokenType.VALUE)
{
if (value.text[value.text.Length - 1] == 'f')
{
CLS_Value_Value<float> number = new CLS_Value_Value<float>();
number.value_value = -float.Parse(value.text.Substring(0, value.text.Length - 1));
return number;
}
else if (value.text.Contains("."))
{
CLS_Value_Value<double> number = new CLS_Value_Value<double>();
number.value_value = -double.Parse(value.text);
return number;
}
else
{
ulong lv = ulong.Parse(value.text);
if (lv > uint.MaxValue)
{
CLS_Value_Value<long> number = new CLS_Value_Value<long>();
number.value_value = -(long)lv;
return number;
}
else
{
CLS_Value_Value<int> number = new CLS_Value_Value<int>();
number.value_value = -(int)lv;
return number;
}
}
}
else
{
logger.Log_Error("无法识别的简单表达式" + value);
return null;
}
}
public ICLS_Expression Compiler_Expression_NegativeValue(IList<Token> tlist, ICLS_Environment content, int pos, int posend)