public IdentifierName(IEnumerable <Fragment> fragments, OriginKind origin = OriginKind.Generator, LanguageInfo language = null) { this.Fragments = fragments.ToImmutableList(); this.OriginalName = string.Join("", this.Fragments.Select(f => f.OriginalText)); this.OriginalLanguage = language ?? LanguageInfo.Current; this.Origin = origin; _comparisonString = MakeComparisonString(Fragments); }
public IdentifierName(string name, LanguageInfo language, OriginKind origin = OriginKind.Generator, CasingStyle?style = null) { if (string.IsNullOrEmpty(name)) { throw new ArgumentException(nameof(name)); } this.OriginalName = name; this.OriginalLanguage = language; this.Origin = origin; this.Fragments = ParseFragments(name, style).Select(f => new Fragment(f)).ToImmutableList(); _comparisonString = MakeComparisonString(Fragments); }
public IdentifierName(IEnumerable <string> fragments, OriginKind origin = OriginKind.Generator, LanguageInfo language = null) : this(fragments.Select(f => new Fragment(f)), origin, language) { }