public BaseVariables(IWalkerResult result, string output, AttributeParser[] attributes) { Filename = result.FilePath; OUTPUT = output; var flags = GetMacroVar("MacroFlags", attributes); var vars = GetMacroVar("MacroVars", attributes); var values = GetMacroVar("MacroValues", attributes); var includes = GetMacroVar("MacroInclude", attributes); var excludes = GetMacroVar("MacroExclude", attributes); Flags.AddBulk(flags); foreach (var varline in vars) { var v = varline.StripQuote(); if (String.IsNullOrEmpty(v)) { continue; } var(vari, value) = v.GetAsign(); if (!String.IsNullOrEmpty(vari)) { Variables.Set(vari, value); } } foreach (var varline in values) { var v = varline.StripQuote(); if (String.IsNullOrEmpty(v)) { continue; } var(vari, value) = v.GetAsign(); if (String.IsNullOrEmpty(vari)) { continue; } if (!Int32.TryParse(value, out var i)) { continue; } Values.Set(vari, i); } foreach (var varline in includes) { var v = varline.StripQuote(); if (String.IsNullOrEmpty(v)) { continue; } Includes.Add(v); } foreach (var varline in excludes) { var v = varline.StripQuote(); if (String.IsNullOrEmpty(v)) { continue; } Excludes.Add(v); } }