ParserResult.cs 756 B

1234567891011121314151617181920212223242526272829
  1. using System.Collections.Generic;
  2. namespace XUnity.AutoTranslator.Plugin.Core.Parsing
  3. {
  4. public class ParserResult
  5. {
  6. public ParserResult( string template, Dictionary<string, string> args )
  7. {
  8. Template = template;
  9. Arguments = args;
  10. }
  11. public string Template { get; private set; }
  12. public Dictionary<string, string> Arguments { get; private set; }
  13. public bool HasRichSyntax => Template.Length > 5; // {{A}} <-- 5 chars
  14. public string Untemplate( Dictionary<string, string> arguments )
  15. {
  16. string result = Template;
  17. foreach( var kvp in arguments )
  18. {
  19. result = result.Replace( kvp.Key, kvp.Value );
  20. }
  21. return result;
  22. }
  23. }
  24. }