goog.module('classliteral.ClassLiteralKt$impl');

const j_l_Object = goog.require('java.lang.Object$impl');
const $Util = goog.require('nativebootstrap.Util$impl');

let ClassLiteral = goog.forwardDeclare('classliteral.ClassLiteral$impl');
let Boolean = goog.forwardDeclare('java.lang.Boolean$impl');
let Byte = goog.forwardDeclare('java.lang.Byte$impl');
let Character = goog.forwardDeclare('java.lang.Character$impl');
let Class = goog.forwardDeclare('java.lang.Class$impl');
let Double = goog.forwardDeclare('java.lang.Double$impl');
let Float = goog.forwardDeclare('java.lang.Float$impl');
let Integer = goog.forwardDeclare('java.lang.Integer$impl');
let Long = goog.forwardDeclare('java.lang.Long$impl');
let Short = goog.forwardDeclare('java.lang.Short$impl');
let Void = goog.forwardDeclare('java.lang.Void$impl');
let InternalPreconditions = goog.forwardDeclare('javaemul.internal.InternalPreconditions$impl');
let JvmClassMappingKt = goog.forwardDeclare('kotlin.jvm.JvmClassMappingKt$impl');
let ReflectionFactory = goog.forwardDeclare('kotlin.jvm.internal.ReflectionFactory$impl');
let $Objects = goog.forwardDeclare('vmbootstrap.Objects$impl');
let $$boolean = goog.forwardDeclare('vmbootstrap.primitives.$boolean$impl');
let $$byte = goog.forwardDeclare('vmbootstrap.primitives.$byte$impl');
let $$char = goog.forwardDeclare('vmbootstrap.primitives.$char$impl');
let $$double = goog.forwardDeclare('vmbootstrap.primitives.$double$impl');
let $$float = goog.forwardDeclare('vmbootstrap.primitives.$float$impl');
let $$int = goog.forwardDeclare('vmbootstrap.primitives.$int$impl');
let $$long = goog.forwardDeclare('vmbootstrap.primitives.$long$impl');
let $$short = goog.forwardDeclare('vmbootstrap.primitives.$short$impl');

/**
 * @final
 */
class ClassLiteralKt extends j_l_Object {
 /** @protected @nodts */
 constructor() {
  super();
 }
 /** @nodts @return {!ClassLiteralKt} */
 static $create__() {
  ClassLiteralKt.$clinit();
  let $instance = new ClassLiteralKt();
  $instance.$ctor__classliteral_ClassLiteralKt__void();
  return $instance;
 }
 /** @nodts */
 $ctor__classliteral_ClassLiteralKt__void() {
  this.$ctor__java_lang_Object__void();
 }
 /** @nodts */
 static m_main__void() {
  ClassLiteralKt.$clinit();
  let voidClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(Void.f_TYPE__java_lang_Void);
  let primitiveBooleanClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<boolean>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$boolean)))));
  let primitiveBooleanArrayClass = Class.$get($$boolean, 1);
  let primitiveBooleanArrayArrayClass = Class.$get($$boolean, 2);
  let booleanClass = Class.$get($$boolean);
  let booleanArrayClass = Class.$get(Boolean, 1);
  let booleanArrayArrayClass = Class.$get(Boolean, 2);
  let primitiveCharClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Character>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$char)))));
  let primitiveCharArrayClass = Class.$get($$char, 1);
  let primitiveCharArrayArrayClass = Class.$get($$char, 2);
  let charClass = Class.$get($$char);
  let charArrayClass = Class.$get(Character, 1);
  let charArrayArrayClass = Class.$get(Character, 2);
  let primitiveByteClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Byte>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$byte)))));
  let primitiveByteArrayClass = Class.$get($$byte, 1);
  let primitiveByteArrayArrayClass = Class.$get($$byte, 2);
  let byteClass = Class.$get($$byte);
  let byteArrayClass = Class.$get(Byte, 1);
  let byteArrayArrayClass = Class.$get(Byte, 2);
  let primitiveShortClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Short>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$short)))));
  let primitiveShortArrayClass = Class.$get($$short, 1);
  let primitiveShortArrayArrayClass = Class.$get($$short, 2);
  let shortClass = Class.$get($$short);
  let shortArrayClass = Class.$get(Short, 1);
  let shortArrayArrayClass = Class.$get(Short, 2);
  let primitiveIntClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Integer>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$int)))));
  let primitiveIntArrayClass = Class.$get($$int, 1);
  let primitiveIntArrayArrayClass = Class.$get($$int, 2);
  let intClass = Class.$get($$int);
  let intArrayClass = Class.$get(Integer, 1);
  let intArrayArrayClass = Class.$get(Integer, 2);
  let primitiveLongClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Long>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$long)))));
  let primitiveLongArrayClass = Class.$get($$long, 1);
  let primitiveLongArrayArrayClass = Class.$get($$long, 2);
  let longClass = Class.$get($$long);
  let longArrayClass = Class.$get(Long, 1);
  let longArrayArrayClass = Class.$get(Long, 2);
  let primitiveFloatClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<!Float>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$float)))));
  let primitiveFloatArrayClass = Class.$get($$float, 1);
  let primitiveFloatArrayArrayClass = Class.$get($$float, 2);
  let floatClass = Class.$get($$float);
  let floatArrayClass = Class.$get(Float, 1);
  let floatArrayArrayClass = Class.$get(Float, 2);
  let primitiveDoubleClass = InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(/**@type {Class<number>}*/ (JvmClassMappingKt.m_getJavaPrimitiveType__kotlin_reflect_KClass__java_lang_Class(ReflectionFactory.m_createKClass__java_lang_Class__kotlin_reflect_KClass(Class.$get($$double)))));
  let primitiveDoubleArrayClass = Class.$get($$double, 1);
  let primitiveDoubleArrayArrayClass = Class.$get($$double, 2);
  let doubleClass = Class.$get($$double);
  let doubleArrayClass = Class.$get(Double, 1);
  let doubleArrayArrayClass = Class.$get(Double, 2);
  let anyClass = Class.$get(j_l_Object);
  let anyArrayClass = Class.$get(j_l_Object, 1);
  let anyArrayArrayClass = Class.$get(j_l_Object, 2);
  let nonAnyClass = Class.$get(ClassLiteral);
  let nonAnyArrayClass = Class.$get(ClassLiteral, 1);
  let nonAnyArrayArrayClass = Class.$get(ClassLiteral, 2);
  let /** * */ o;
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(ClassLiteral.$create__());
  o = ClassLiteral.$create__();
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(/**@type {!ClassLiteral}*/ (o));
  let i = 4;
  o = Class.$get($$int);
  o = Class.$get(Integer);
  let intAsAny = Integer.m_valueOf__int__java_lang_Integer(4);
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(intAsAny);
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(intAsAny);
  let nullableInt = Integer.m_valueOf__int__java_lang_Integer(4);
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(nullableInt));
  o = $Objects.m_getClass__java_lang_Object__java_lang_Class(InternalPreconditions.m_checkNotNull__java_lang_Object__java_lang_Object(nullableInt));
  let primitiveBooleanArrayClassObjectType = Class.$get($$boolean, 1);
  let primitiveBooleanArrayArrayClassObjectType = Class.$get($$boolean, 2);
  let booleanArrayClassObjectType = Class.$get(Boolean, 1);
  let booleanArrayArrayClassObjectType = Class.$get(Boolean, 2);
 }
 /** @nodts */
 static $clinit() {
  ClassLiteralKt.$clinit = () =>{};
  ClassLiteralKt.$loadModules();
  j_l_Object.$clinit();
 }
 /** @nodts @return {boolean} */
 static $isInstance(/** ? */ instance) {
  return instance instanceof ClassLiteralKt;
 }
 
 /** @nodts */
 static $loadModules() {
  ClassLiteral = goog.module.get('classliteral.ClassLiteral$impl');
  Boolean = goog.module.get('java.lang.Boolean$impl');
  Byte = goog.module.get('java.lang.Byte$impl');
  Character = goog.module.get('java.lang.Character$impl');
  Class = goog.module.get('java.lang.Class$impl');
  Double = goog.module.get('java.lang.Double$impl');
  Float = goog.module.get('java.lang.Float$impl');
  Integer = goog.module.get('java.lang.Integer$impl');
  Long = goog.module.get('java.lang.Long$impl');
  Short = goog.module.get('java.lang.Short$impl');
  Void = goog.module.get('java.lang.Void$impl');
  InternalPreconditions = goog.module.get('javaemul.internal.InternalPreconditions$impl');
  JvmClassMappingKt = goog.module.get('kotlin.jvm.JvmClassMappingKt$impl');
  ReflectionFactory = goog.module.get('kotlin.jvm.internal.ReflectionFactory$impl');
  $Objects = goog.module.get('vmbootstrap.Objects$impl');
  $$boolean = goog.module.get('vmbootstrap.primitives.$boolean$impl');
  $$byte = goog.module.get('vmbootstrap.primitives.$byte$impl');
  $$char = goog.module.get('vmbootstrap.primitives.$char$impl');
  $$double = goog.module.get('vmbootstrap.primitives.$double$impl');
  $$float = goog.module.get('vmbootstrap.primitives.$float$impl');
  $$int = goog.module.get('vmbootstrap.primitives.$int$impl');
  $$long = goog.module.get('vmbootstrap.primitives.$long$impl');
  $$short = goog.module.get('vmbootstrap.primitives.$short$impl');
 }
}
$Util.$setClassMetadata(ClassLiteralKt, 'classliteral.ClassLiteralKt');

exports = ClassLiteralKt;

//# sourceMappingURL=ClassLiteralKt.js.map
