@@ -74,24 +74,48 @@ struct DemangledNameInfo {
7474 return BasenameRange.second > BasenameRange.first ;
7575 }
7676
77+ // / Returns \c true if `BasenameRange` is empty.
78+ bool isBasenameEmpty () const {
79+ return BasenameRange.first == BasenameRange.second ;
80+ }
81+
7782 // / Returns \c true if this object holds a valid scope range.
7883 bool hasScope () const { return ScopeRange.second > ScopeRange.first ; }
7984
85+ // / Returns \c true if `ScopeRange` is empty.
86+ bool isScopeEmpty () const { return ScopeRange.first == ScopeRange.second ; }
87+
8088 // / Returns \c true if this object holds a valid arguments range.
8189 bool hasArguments () const {
8290 return ArgumentsRange.second > ArgumentsRange.first ;
8391 }
8492
93+ // / Returns \c true if `ArgumentsRange` is empty.
94+ bool isArgumentsEmpty () const {
95+ return ArgumentsRange.first == ArgumentsRange.second ;
96+ }
97+
8598 // / Returns \c true if this object holds a valid qualifiers range.
8699 bool hasQualifiers () const {
87100 return QualifiersRange.second > QualifiersRange.first ;
88101 }
89102
103+ // / Returns \c true if `QualifiersRange` is empty.
104+ bool isQualifiersEmpty () const {
105+ return QualifiersRange.first == QualifiersRange.second ;
106+ }
107+
90108 // / Returns \c true if this object holds a valid prefix range.
91109 bool hasPrefix () const { return PrefixRange.second > PrefixRange.first ; }
92110
111+ // / Returns \c true if `PrefixRange` is empty.
112+ bool isPrefixEmpty () const { return PrefixRange.first == PrefixRange.second ; }
113+
93114 // / Returns \c true if this object holds a valid suffix range.
94115 bool hasSuffix () const { return SuffixRange.second > SuffixRange.first ; }
116+
117+ // / Returns \c true if `SuffixRange` is empty.
118+ bool isSuffixEmpty () const { return SuffixRange.first == SuffixRange.second ; }
95119};
96120
97121// / An OutputBuffer which keeps a record of where certain parts of a
0 commit comments