1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-15 14:54:09 +02:00

Bool Parse

Implemented parsing boolean strings.

This implementation does not trim whitespace and nulls and check strings if the string does not match at first like C#.
This commit is contained in:
Damian Day 2020-05-26 20:56:19 +01:00
parent 3714bdb84f
commit 3ac6af88a3

View file

@ -2,14 +2,38 @@ namespace System
{ {
struct Boolean : bool, IHashable struct Boolean : bool, IHashable
{ {
//
// Public Constants
//
// The public string representation of true.
public const String TrueString = "True";
// The public string representation of false.
public const String FalseString = "False";
public override void ToString(String strBuffer) public override void ToString(String strBuffer)
{ {
strBuffer.Append(((bool)this) ? "true" : "false"); strBuffer.Append(((bool)this) ? TrueString : FalseString);
} }
public int GetHashCode() public int GetHashCode()
{ {
return ((bool)this) ? 1 : 0; return ((bool)this) ? 1 : 0;
} }
public static Result<bool> Parse(StringView val)
{
if (val.IsEmpty)
return .Err;
if (val.Equals(TrueString, true))
return true;
if (val.Equals(FalseString, true))
return false;
return .Err;
}
} }
} }