using ResourceString.Net.Logic.Factories; using ResourceString.Net.Logic.Parsers.Resx; var sourceFile = args.First(); var namespaceString = args.Skip(1).FirstOrDefault() ?? "Properties"; var className = args.Skip(2).FirstOrDefault() ?? "Resources"; var result = Parser.TryParse(System.IO.File.ReadAllText(sourceFile)).Match( Some: v => CodeSnippetFactory.CreateResourceClassCodeSnippet( namespaceString, className, CodeSnippetFactory.CreateResourceMangerMemberCodeSnippet(className), v.Resources ), None: () => throw new InvalidOperationException() ); Console.WriteLine(result.Value.Trim());