Variable syntax parser
Energy.Core.Syntax is a variable substitution helper. It stores a dictionary of named values and a set of bracket definitions. Text is parsed and occurrences of variables enclosed in brackets are processed.
Default syntax
The default instance uses {{ and }} as brackets.
string result = Energy.Core.Syntax.Default.Parse("{{HOUR}}:{{MM}}:{{SS}}");
Default variables
Syntax.Default is populated with date/time variables at the moment Reset() is called. Available variables include:
DATE,TIME,TIME_MS,TIME_US,STAMP,STAMP_MS,STAMP_USYEAR,YYYY,YY,MONTH,MM,DAY,DDHOUR,HOUR_12,HOUR_24,HH,MINUTE,II,SECOND,SSMILLISECOND,MS,MICROSECOND,USAM
Custom syntax
Energy.Core.Syntax syntax = new Energy.Core.Syntax();
syntax["NAME"] = "Alice";
syntax.Brackets.Add(new Energy.Base.Bracket
{
Prefix = "${",
Suffix = "}",
});
string result = syntax.Parse("Hello ${NAME}!");
Properties and methods
| Member | Description |
|---|---|
Default |
Shared default syntax instance. |
Text |
Text to parse. |
Dictionary |
Variable dictionary. |
Brackets |
Bracket definitions. |
Parse(string) |
Parse the provided text. |
ToString() |
Parse the current Text. |
Reset() |
Clear the dictionary and fire OnReset. |
OnReset |
Event used to populate default variables. |
PopulateDefault(Syntax) |
Populate the default date/time variables. |
Example
Energy.Core.Syntax syntax = new Energy.Core.Syntax("{{DATE}} {{TIME}}");
Console.WriteLine(syntax.ToString());
See also
base-bracketfor bracket definitions.