1// Copyright 2020 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#include 'src/objects/js-date-time-format.h'
6
7type DateTimeStyle extends int32 constexpr 'JSDateTimeFormat::DateTimeStyle';
8type HourCycle extends int32 constexpr 'JSDateTimeFormat::HourCycle';
9bitfield struct JSDateTimeFormatFlags extends uint31 {
10  hour_cycle: HourCycle: 3 bit;
11  date_style: DateTimeStyle: 3 bit;
12  time_style: DateTimeStyle: 3 bit;
13}
14
15@generateCppClass
16extern class JSDateTimeFormat extends JSObject {
17  locale: String;
18  icu_locale: Foreign;                // Managed<icu::Locale>
19  icu_simple_date_format: Foreign;    // Managed<icu::SimpleDateFormat>
20  icu_date_interval_format: Foreign;  // Managed<icu::DateIntervalFormat>
21  bound_format: JSFunction|Undefined;
22  flags: SmiTagged<JSDateTimeFormatFlags>;
23}
24