зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 958d228b8b00 (bug 1929511) for causing build bustages in RegExpShim.h.
This commit is contained in:
Родитель
5fe4e83ab6
Коммит
9e56e87df8
|
@ -244,6 +244,21 @@ template <typename... Args>
|
|||
return mozilla::AddToHash(aHash, aArgs...);
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
class Optional {
|
||||
mozilla::Maybe<T> inner_;
|
||||
|
||||
public:
|
||||
Optional() = default;
|
||||
Optional(T t) { inner_.emplace(t); }
|
||||
|
||||
bool has_value() const { return inner_.isSome(); }
|
||||
const T& value() const { return inner_.ref(); }
|
||||
|
||||
T* operator->() { return &inner_.ref(); }
|
||||
T& operator*() { return inner_.ref(); }
|
||||
};
|
||||
|
||||
namespace bits {
|
||||
|
||||
inline uint64_t CountTrailingZeros(uint64_t value) {
|
||||
|
@ -1105,15 +1120,13 @@ inline bool IsEitherUnicode(RegExpFlags flags) {
|
|||
return flags.unicode() || flags.unicodeSets();
|
||||
}
|
||||
|
||||
inline std::optional<RegExpFlag> TryRegExpFlagFromChar(char c) {
|
||||
inline base::Optional<RegExpFlag> TryRegExpFlagFromChar(char c) {
|
||||
RegExpFlag flag;
|
||||
|
||||
// The parser only calls this after verifying that it's a supported flag.
|
||||
if (JS::MaybeParseRegExpFlag(c, &flag)) {
|
||||
return flag;
|
||||
}
|
||||
MOZ_ALWAYS_TRUE(JS::MaybeParseRegExpFlag(c, &flag));
|
||||
|
||||
return std::optional<RegExpFlag>{};
|
||||
return base::Optional(flag);
|
||||
}
|
||||
|
||||
inline bool operator==(const RegExpFlags& lhs, const int& rhs) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче