private NamespaceId ParseNamespaceId() { var namespaceBuilder = new NamespaceIdBuilder(); // there needs to be at least one name namespaceBuilder.AddNameSegment(MatchToken(MemberIdTokenKind.Name)); // as long as there are more dots, consume more name segments while (TestAndMatchToken(MemberIdTokenKind.Dot)) { namespaceBuilder.AddNameSegment(MatchToken(MemberIdTokenKind.Name)); } // all tokens should be parsed now MatchToken(MemberIdTokenKind.Eof); return(namespaceBuilder.ToNamespaceId()); }
public override TypeIdBuilder AddNameSegment(string name) { if (m_CurrentName != null) { m_NamespaceBuilder.AddNameSegment(m_CurrentName); } return(new OuterTypeIdBuilder(m_NamespaceBuilder, name)); }