Code/Extensions/ParseExtensions.cs
namespace Nodebox.Extensions;

public static class FloatParseExtensions {
    extension(float) {
        public static float SafeParse(string s) {
            _ = float.TryParse(s, out var result);
            return result;
        }
    }
}

public static class DoubleParseExtensions {
    extension(double) {
        public static double SafeParse(string s) {
            _ = double.TryParse(s, out var result);
            return result;
        }
    }
}

public static class IntParseExtensions {
    extension(int) {
        public static int SafeParse(string s) {
            _ = int.TryParse(s, out var result);
            return result;
        }
    }
}

public static class LongParseExtensions {
    extension(long) {
        public static long SafeParse(string s) {
            _ = long.TryParse(s, out var result);
            return result;
        }
    }
}

public static class UIntParseExtensions {
    extension(uint) {
        public static uint SafeParse(string s) {
            _ = uint.TryParse(s, out var result);
            return result;
        }
    }
}

public static class ULongParseExtensions {
    extension(ulong) {
        public static ulong SafeParse(string s) {
            _ = ulong.TryParse(s, out var result);
            return result;
        }
    }
}

public static class ByteParseExtensions {
    extension(byte) {
        public static byte SafeParse(string s) {
            _ = byte.TryParse(s, out var result);
            return result;
        }
    }
}