Example #1
0
        public static Result <Variable, string> ParseLine(string line)
        {
            if (String.IsNullOrWhiteSpace(line))
            {
                return(ParseLineResult.WithFailure(EMPTY_LINE));
            }

            if (line[0] == '#')
            {
                return(ParseLineResult.WithFailure(COMMENT_LINE));
            }

            var match = Regex.Match(line);

            if (match.Success)
            {
                var result = new Variable(match.Groups["key"].Value, match.Groups["value"].Value);
                return(ParseLineResult.WithSuccess(result));
            }

            return(ParseLineResult.WithFailure(E_COULD_NOT_PARSE_LINE));
        }