// 'this' and 'other', and also determine the hierarchical relationship
// of the names.
- if ((first_label_ > last_label_) ||
- (other.first_label_ > other.last_label_)) {
- isc_throw(BadValue, "Bad label index ranges were passed");
- }
-
unsigned int nlabels = 0;
int l1 = last_label_ - first_label_;
int l2 = other.last_label_ - other.first_label_;
if (case_sensitive) {
chdiff = (int)label1 - (int)label2;
} else {
- chdiff = (int)isc::dns::name::internal::maptolower[label1] - (int)isc::dns::name::internal::maptolower[label2];
+ chdiff = (int)isc::dns::name::internal::maptolower[label1] -
+ (int)isc::dns::name::internal::maptolower[label2];
}
if (chdiff != 0) {
/// to the labels in the Name object).
///
/// \param name The Name to construct a LabelSequence for
- explicit LabelSequence(const Name& name): /*name_(name),*/
+ explicit LabelSequence(const Name& name):
data_(&name.ndata_[0]),
offsets_(&name.offsets_[0]),
offsets_size_(name.offsets_.size()),
/// comparison result.
NameComparisonResult compare(const Name& other) const;
-private:
- /// \brief Partially compare two <code>Name</code>s.
- ///
- /// This method performs a partial comparison of the
- /// <code>Name</code> and <code>other</code> and returns the result
- /// in the form of a <code>NameComparisonResult</code> object.
- ///
- /// This method can throw the BadValue exception if bad label
- /// indices are passed.
- ///
- /// \param other the right-hand operand to compare against.
- /// \param first_label the left-most label of <code>Name</code> to
- /// begin comparing from.
- /// \param first_label_other the left-most label of
- /// <code>other</code> to begin comparing from.
- /// \param last_label the right-most label of <code>Name</code> to
- /// end comparing at.
- /// \param last_label_other the right-most label of
- /// <code>other</code> to end comparing at.
- /// \param case_sensitive If true, comparison is case-insensitive
- /// \return a <code>NameComparisonResult</code> object representing the
- /// comparison result.
-/*
- NameComparisonResult compare(const Name& other,
- unsigned int first_label,
- unsigned int first_label_other,
- unsigned int last_label,
- unsigned int last_label_other,
- bool case_sensitive = false) const;
-*/
-
public:
/// \brief Return true iff two names are equal.
///