sockscape/server/Libraries/Glove/INI/Value.cs

36 lines
895 B
C#
Raw Normal View History

2017-06-07 21:02:29 +00:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
2017-07-22 19:27:41 +00:00
namespace Glove.INI {
2017-06-07 21:02:29 +00:00
public class Value {
2017-08-21 21:03:32 +00:00
private readonly string Raw;
2017-06-07 21:02:29 +00:00
public Value(string raw) {
Raw = raw;
}
public static implicit operator string(Value value) {
return value.Raw;
}
public static implicit operator bool(Value value) {
2017-08-21 21:03:32 +00:00
return Boolean.TryParse(value.Raw, out bool retval) && retval;
2017-06-07 21:02:29 +00:00
}
public static implicit operator Int32(Value value) {
return Int32.TryParse(value.Raw, out Int32 retval)
2017-06-07 21:02:29 +00:00
? retval
: 0;
}
public static implicit operator double(Value value) {
return Double.TryParse(value.Raw, out double retval)
? retval
: 0;
}
}
}