All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sun.xml.bind.v2.model.core.EnumLeafInfo Maven / Gradle / Ivy

There is a newer version: 4.0.3
Show newest version
/*
 * Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Distribution License v. 1.0, which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

package com.sun.xml.bind.v2.model.core;

/**
 * {@link NonElement} that represents an {@link Enum} class.
 *
 * @author Kohsuke Kawaguchi
 */
public interface EnumLeafInfo extends LeafInfo {
    /**
     * The same as {@link #getType()} but an {@link EnumLeafInfo}
     * is guaranteed to represent an enum declaration, which is a
     * kind of a class declaration.
     *
     * @return
     *      always non-null.
     */
    C getClazz();

    /**
     * Returns the base type of the enumeration.
     *
     * 

* For example, with the following enum class, this method * returns {@link BuiltinLeafInfo} for {@link Integer}. * *

     * &XmlEnum(Integer.class)
     * enum Foo {
     *   &XmlEnumValue("1")
     *   ONE,
     *   &XmlEnumValue("2")
     *   TWO
     * }
     * 
* * @return * never null. */ NonElement getBaseType(); /** * Returns the read-only list of enumeration constants. * * @return * never null. Can be empty (really?). */ Iterable getConstants(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy