public PropertyToken(string propertyName, string rawText, string format = null, Alignment? alignment = null, Destructuring destructuring = Destructuring.Default, int startIndex = -1)
: base(startIndex)
{
if (propertyName == null) throw new ArgumentNullException(nameof(propertyName));
if (rawText == null) throw new ArgumentNullException(nameof(rawText));
PropertyName = propertyName;
Format = format;
Destructuring = destructuring;
_rawText = rawText;
Alignment = alignment;
int position;
if (int.TryParse(PropertyName, NumberStyles.None, CultureInfo.InvariantCulture, out position) &&
position >= 0)
{
_position = position;
}
}