blob: 5d4f259fc8dd0865f62a7452d015096b7efde911 [file] [log] [blame]
// Copyright 2015 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "cobalt/cssom/specificity.h"
namespace cobalt {
namespace cssom {
void Specificity::AddFrom(const Specificity& rhs) {
const int8 kMaxValue = kint8max;
for (int i = 0; i < 3; ++i) {
if (v_[i] > kMaxValue - rhs.v_[i]) {
LOG(WARNING)
<< "Specificity field exceeds and is clamped to the upper limit ("
<< static_cast<int>(kMaxValue) << ").";
v_[i] = kMaxValue;
} else {
v_[i] += rhs.v_[i];
}
}
}
} // namespace cssom
} // namespace cobalt