X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fcarfire;a=blobdiff_plain;f=CarFire%2FCarFire%2FCarFire%2FParse.cs;h=ca98353067cf4f55e0ad499aa235082d1e4e32a7;hp=2df3ca73028aadadc36013bb529593b988e38dfd;hb=236bc590ff21370c1139a8c01ff35f7b30af743d;hpb=722dcd763d115992b2a56d4001db80d11e583064 diff --git a/CarFire/CarFire/CarFire/Parse.cs b/CarFire/CarFire/CarFire/Parse.cs index 2df3ca7..ca98353 100644 --- a/CarFire/CarFire/CarFire/Parse.cs +++ b/CarFire/CarFire/CarFire/Parse.cs @@ -10,7 +10,7 @@ namespace CarFire /// /// Class with handy static methods taking strings and returning objects /// parsed from those strings. For all of these functions, white space is - /// generally ignored, but any superfluous characters will make the parse fail. + /// generally ignored, but superfluous characters are not allowed. /// public class Parse { @@ -30,7 +30,7 @@ namespace CarFire /// Parses a comment of an INI file. /// /// Text. - /// The comment. + /// The comment, or null if parsing failed. public static string IniComment(string line) { Match match = Regex.Match(line, @"^;\s*(.*)\s*$"); @@ -126,18 +126,18 @@ namespace CarFire /// /// An enumeration. /// Text. - /// The constant, or default(T) if parsing failed. - public static T Constant(string atom) + /// The constant, or null if parsing failed. + public static T? Constant(string atom) where T : struct { try { - return (T)System.Enum.Parse(typeof(T), String(atom), true); + return (T)System.Enum.Parse(typeof(T), String(atom)); } #pragma warning disable 0168 catch (System.Exception ex) #pragma warning restore 0168 { - return default(T); + return null; } } @@ -181,7 +181,7 @@ namespace CarFire /// Parses a function. /// /// Text. - /// An array two strings containing the function name and + /// An array with two strings containing the function name and /// parameter-list, in that order, or null if parsing failed. public static string[] Function(string atom) {