// Automatically generated from Source/JavaScriptCore/runtime/IntlCollatorConstructor.cpp using Source/JavaScriptCore/create_hash_table. DO NOT EDIT!

#include "Lookup.h"

namespace JSC {

static const struct CompactHashIndex collatorConstructorTableIndex[2] = {
    { -1, -1 },
    { 0, -1 },
};

static const struct HashTableValue collatorConstructorTableValues[1] = {
   { "supportedLocalesOf", DontEnum|Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(IntlCollatorConstructorFuncSupportedLocalesOf), (intptr_t)(1) } },
};

static const struct HashTable collatorConstructorTable =
    { 1, 1, false, collatorConstructorTableValues, collatorConstructorTableIndex };

} // namespace JSC
