1// Copyright 2019 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef V8_INTL_SUPPORT 6#error Internationalization is expected to be enabled. 7#endif // V8_INTL_SUPPORT 8 9#ifndef V8_OBJECTS_JS_DISPLAY_NAMES_INL_H_ 10#define V8_OBJECTS_JS_DISPLAY_NAMES_INL_H_ 11 12#include "src/objects/js-display-names.h" 13#include "src/objects/objects-inl.h" 14 15// Has to be the last include (doesn't have include guards): 16#include "src/objects/object-macros.h" 17 18namespace v8 { 19namespace internal { 20 21#include "torque-generated/src/objects/js-display-names-tq-inl.inc" 22 23ACCESSORS(JSDisplayNames, internal, Managed<DisplayNamesInternal>, 24 kInternalOffset) 25TQ_OBJECT_CONSTRUCTORS_IMPL(JSDisplayNames) 26 27inline void JSDisplayNames::set_style(Style style) { 28 DCHECK_GE(StyleBits::kMax, style); 29 set_flags(StyleBits::update(flags(), style)); 30} 31 32inline JSDisplayNames::Style JSDisplayNames::style() const { 33 return StyleBits::decode(flags()); 34} 35 36inline void JSDisplayNames::set_fallback(Fallback fallback) { 37 DCHECK_GE(FallbackBit::kMax, fallback); 38 set_flags(FallbackBit::update(flags(), fallback)); 39} 40 41inline JSDisplayNames::Fallback JSDisplayNames::fallback() const { 42 return FallbackBit::decode(flags()); 43} 44 45inline void JSDisplayNames::set_language_display( 46 LanguageDisplay language_display) { 47 DCHECK_GE(LanguageDisplayBit::kMax, language_display); 48 set_flags(LanguageDisplayBit::update(flags(), language_display)); 49} 50 51inline JSDisplayNames::LanguageDisplay JSDisplayNames::language_display() 52 const { 53 return LanguageDisplayBit::decode(flags()); 54} 55} // namespace internal 56} // namespace v8 57 58#include "src/objects/object-macros-undef.h" 59 60#endif // V8_OBJECTS_JS_DISPLAY_NAMES_INL_H_ 61