1/* 2 * Copyright (C) 2009 The Guava Authors 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package com.google.common.collect; 18 19import static com.google.common.base.Preconditions.checkNotNull; 20 21import java.util.Collections; 22 23/** 24 * GWT emulation of {@link SingletonImmutableSet}. 25 * 26 * @author Hayward Chan 27 */ 28final class SingletonImmutableSet<E> extends ImmutableSet<E> { 29 30 // This reference is used both by the custom field serializer, and by the 31 // GWT compiler to infer the elements of the lists that needs to be 32 // serialized. 33 // 34 // Although this reference is non-final, it doesn't change after set creation. 35 E element; 36 37 SingletonImmutableSet(E element) { 38 super(Collections.singleton(checkNotNull(element))); 39 this.element = element; 40 } 41} 42