goog.module('readonlycollections.ListImpl$impl');

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

let Iterable = goog.forwardDeclare('java.lang.Iterable$impl');
let RuntimeException = goog.forwardDeclare('java.lang.RuntimeException$impl');
let Collection = goog.forwardDeclare('java.util.Collection$impl');
let Comparator = goog.forwardDeclare('java.util.Comparator$impl');
let Iterator = goog.forwardDeclare('java.util.Iterator$impl');
let ListIterator = goog.forwardDeclare('java.util.ListIterator$impl');
let Spliterator = goog.forwardDeclare('java.util.Spliterator$impl');
let Consumer = goog.forwardDeclare('java.util.function.Consumer$impl');
let Predicate = goog.forwardDeclare('java.util.function.Predicate$impl');
let UnaryOperator = goog.forwardDeclare('java.util.function.UnaryOperator$impl');
let Stream = goog.forwardDeclare('java.util.stream.Stream$impl');
let Intrinsics = goog.forwardDeclare('kotlin.jvm.internal.Intrinsics$impl');
let $Exceptions = goog.forwardDeclare('vmbootstrap.Exceptions$impl');

/**
 * @final
 * @template T
 * @implements {List<T>}
 */
class ListImpl extends j_l_Object {
 /** @protected @nodts */
 constructor() {
  super();
 }
 /** @nodts @template T @return {!ListImpl<T>} */
 static $create__() {
  ListImpl.$clinit();
  let $instance = new ListImpl();
  $instance.$ctor__readonlycollections_ListImpl__void();
  return $instance;
 }
 /** @nodts */
 $ctor__readonlycollections_ListImpl__void() {
  this.$ctor__java_lang_Object__void();
 }
 /** @nodts @return {number} */
 m_getSize__int() {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {boolean} */
 contains(/** T */ element) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {boolean} */
 containsAll(/** !Collection<?> */ elements) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {T} */
 getAtIndex(/** number */ index) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {number} */
 indexOf(/** T */ element) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {boolean} */
 isEmpty() {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @nodts @return {!Iterator<?>} */
 m_iterator__java_util_Iterator() {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {number} */
 lastIndexOf(/** T */ element) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @nodts @return {!ListIterator<?>} */
 m_listIterator__java_util_ListIterator() {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @nodts @return {!ListIterator<?>} */
 m_listIterator__int__java_util_ListIterator(/** number */ index) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {!List<?>} */
 subList(/** number */ fromIndex, /** number */ toIndex) {
  throw $Exceptions.toJs(RuntimeException.$create__java_lang_String('not implemented'));
 }
 /** @override @return {boolean} */
 add(/** T */ element) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override */
 addAtIndex(/** number */ index, /** T */ element) {
  Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {boolean} */
 remove(/** * */ element) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {boolean} */
 addAll(/** !Collection<?> */ elements) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {boolean} */
 addAllAtIndex(/** number */ index, /** !Collection<?> */ elements) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {boolean} */
 removeAll(/** !Collection<?> */ elements) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {boolean} */
 retainAll(/** !Collection<?> */ elements) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override */
 clear() {
  Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {T} */
 setAtIndex(/** number */ index, /** T */ element) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @return {T} */
 removeAtIndex(/** number */ index) {
  return Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @nodts */
 m_replaceAll__java_util_function_UnaryOperator__void(/** !UnaryOperator<T> */ operator) {
  Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @override @nodts */
 m_sort__java_util_Comparator__void(/** Comparator<?> */ c) {
  Intrinsics.m_throwUnsupportedOperationException__java_lang_String__kotlin_jvm_internal_NothingStub('Operation is not supported for read-only collection');
 }
 /** @final @override @return {number} */
 size() {
  return this.m_getSize__int();
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} */
 m_forEach__java_util_function_Consumer__void(/** Consumer<?> */ arg0) {
  Iterable.m_forEach__$default__java_lang_Iterable__java_util_function_Consumer__void(this, arg0);
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @return {!Spliterator<T>} */
 m_spliterator__java_util_Spliterator() {
  return /**@type {!Spliterator<T>}*/ (List.m_spliterator__$default__java_util_List__java_util_Spliterator(this));
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @return {!Stream<T>} */
 m_parallelStream__java_util_stream_Stream() {
  return /**@type {!Stream<T>}*/ (Collection.m_parallelStream__$default__java_util_Collection__java_util_stream_Stream(this));
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @return {boolean} */
 m_removeIf__java_util_function_Predicate__boolean(/** !Predicate<?> */ arg0) {
  return Collection.m_removeIf__$default__java_util_Collection__java_util_function_Predicate__boolean(this, arg0);
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @return {!Stream<T>} */
 m_stream__java_util_stream_Stream() {
  return /**@type {!Stream<T>}*/ (Collection.m_stream__$default__java_util_Collection__java_util_stream_Stream(this));
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @return {Array<*>} */
 m_toArray__arrayOf_java_lang_Object() {
  return Collection.m_toArray__$default__java_util_Collection__arrayOf_java_lang_Object(this);
 }
 //Default method forwarding stub.
 /** @override @nodts @suppress{visibility} @template T_1 @return {Array<T_1>} */
 m_toArray__arrayOf_java_lang_Object__arrayOf_java_lang_Object(/** Array<T_1> */ arg0) {
  return Collection.m_toArray__$default__java_util_Collection__arrayOf_java_lang_Object__arrayOf_java_lang_Object(this, arg0);
 }
 //Default method forwarding stub.
 /** @override @suppress{visibility} @return {Array<T>} */
 toArray() {
  return Collection.m__private_jsToArray____$default__java_util_Collection__arrayOf_java_lang_Object(this);
 }
 /** @nodts */
 static $clinit() {
  ListImpl.$clinit = () =>{};
  ListImpl.$loadModules();
  j_l_Object.$clinit();
  List.$clinit();
 }
 /** @nodts @return {boolean} */
 static $isInstance(/** ? */ instance) {
  return instance instanceof ListImpl;
 }
 
 /** @nodts */
 static $loadModules() {
  Iterable = goog.module.get('java.lang.Iterable$impl');
  RuntimeException = goog.module.get('java.lang.RuntimeException$impl');
  Collection = goog.module.get('java.util.Collection$impl');
  Intrinsics = goog.module.get('kotlin.jvm.internal.Intrinsics$impl');
  $Exceptions = goog.module.get('vmbootstrap.Exceptions$impl');
 }
}
List.$markImplementor(ListImpl);
$Util.$setClassMetadata(ListImpl, 'readonlycollections.ListImpl');

exports = ListImpl;

//# sourceMappingURL=ListImpl.js.map
