public NumberValue Resolve(Value source, LocalCodeExecutionContext localCodeExecutionContext, ResolverOptions options) { #if DEBUG //Log($"source = {source}"); #endif var sourceKind = source.KindOfValue; switch (sourceKind) { case KindOfValue.NullValue: return(ValueConvertor.ConvertNullValueToNumberValue(source.AsNullValue, _context)); case KindOfValue.LogicalValue: return(ValueConvertor.ConvertLogicalValueToNumberValue(source.AsLogicalValue, _context)); case KindOfValue.NumberValue: return(source.AsNumberValue); default: throw new ArgumentOutOfRangeException(nameof(sourceKind), sourceKind, null); } }