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

com.amazon.ion.IonInt Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2007-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */

package com.amazon.ion;

import java.math.BigDecimal;
import java.math.BigInteger;

/**
 * An Ion int value.
 * 

* WARNING: This interface should not be implemented or extended by * code outside of this library. */ public interface IonInt extends IonNumber { /** * Gets the content of this Ion int as a Java * int value. * * @return the int value. * @throws NullValueException if this.isNullValue(). */ public int intValue() throws NullValueException; /** * Gets the content of this Ion int as a Java * long value. * * @return the long value. * @throws NullValueException if this.isNullValue(). */ public long longValue() throws NullValueException; /** * Gets the content of this Ion int as a Java * {@link BigInteger} value. * * @return the BigInteger value, * or null if this is null.int. */ public BigInteger bigIntegerValue(); /** * Gets the value of this Ion {@code int} as a {@link BigDecimal}. * The scale of the {@code BigDecimal} is zero. * * @return the {@code BigDecimal} value, * or {@code null} if {@code this.isNullValue()}. */ public BigDecimal bigDecimalValue(); /** * Gets an {@link IntegerSize} representing the smallest-possible * Java type of the underlying content, or {@code null} if this is * {@code null.int}. * * @see IonReader#getIntegerSize() */ public IntegerSize getIntegerSize(); /** * Sets the content of this value. */ public void setValue(int value); /** * Sets the content of this value. */ public void setValue(long value); /** * Sets the content of this value. * The integer portion of the number is used, any fractional portion is * ignored. * * @param content the new content of this int; * may be null to make this null.int. */ public void setValue(Number content); public IonInt clone() throws UnknownSymbolException; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy