WordFragment

Fragment
public sealed class WordFragment : Fragment
A run of letters, digits and underscores, starting with a letter or an underscore. Words are scanned greedily, so "point2" is a single word and the 'e' inside "Hello" cannot be mistaken for Euler's number.

Properties

After

public int After { get; }
Gets the index of the character after this fragment.
inherited fromFragment

Defect

public string Defect { get; }
Gets a description of what is wrong with this fragment, or null when no problem exists.
inherited fromFragment

Kind

#
public override FragmentKind Kind { get; }
Gets the category of this fragment.
Fragment.Kind

Length

public int Length { get; }
Gets the number of characters covered by this fragment.
inherited fromFragment

NextMeaningful

public Fragment NextMeaningful { get; }
Gets the following fragment, skipping whitespace and single line comments. Line breaks and multi line comments are boundaries rather than trivia, and are returned rather than skipped.
inherited fromFragment

PrevMeaningful

public Fragment PrevMeaningful { get; }
Gets the preceding fragment, skipping whitespace and single line comments. Line breaks and multi line comments are boundaries rather than trivia, and are returned rather than skipped.
inherited fromFragment

Start

public int Start { get; }
Gets the index of the first character of this fragment within Fragments.Source. This index is absolute, and remains valid in every view derived from the original collection.
inherited fromFragment

Text

public string Text { get; }
Gets the characters covered by this fragment.
inherited fromFragment

Methods

Is

#
public bool Is(params string[] words)
Compare this word against several spellings, ignoring case, which is how a notation accepts both "point" and "pt".
words (params string[])

Is

#
public bool Is(string word, StringComparison comparison = StringComparison.InvariantCultureIgnoreCase)
Compare this word against the given one, ignoring case by default.
word (string)
comparison (StringComparison = StringComparison.InvariantCultureIgnoreCase)

IsAdjacentTo

public bool IsAdjacentTo(Fragment other)
Gets whether this fragment is directly adjacent to the given one, with no intervening characters. Used to match multi character operators.
inherited fromFragment
other (Fragment)

IsAll

public bool IsAll(params FragmentKind[] filter)
Tests whether this fragment matches all of the provided filter kinds. Note: this fragment may have additional kinds not covered by the filter, if you want an exact match, just compare against Fragment.Kind.
inherited fromFragment
filter (params FragmentKind[])

IsAny

public bool IsAny(params FragmentKind[] filter)
Tests whether this fragment is any of the provided filter kinds.
inherited fromFragment
filter (params FragmentKind[])

ToString

public override string ToString()
Gets a description of this fragment, for debugging purposes.
inherited fromFragment
Object.ToString