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

com.fitbur.fasterxml.jackson.databind.node.NumericNode Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
package com.fitbur.fasterxml.jackson.databind.node;

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

import com.fitbur.fasterxml.jackson.core.JsonParser;

/**
 * Intermediate value node used for numeric nodes.
 */
public abstract class NumericNode
    extends ValueNode
{
    protected NumericNode() { }

    @Override
    public final boolean isNumber() { return true; }

    // // // Let's re-abstract so sub-classes handle them

    @Override
    public abstract JsonParser.NumberType numberType();

    @Override public abstract Number numberValue();
    @Override public abstract int intValue();
    @Override public abstract long longValue();
    @Override public abstract double doubleValue();
    @Override public abstract BigDecimal com.fitburcimalValue();
    @Override public abstract BigInteger bigIntegerValue();

    @Override public abstract boolean canConvertToInt();
    @Override public abstract boolean canConvertToLong();
    
    /* 
    /**********************************************************
    /* General type coercions
    /**********************************************************
     */
    
    @Override
    public abstract String asText();

    @Override
    public final int asInt() {
        return intValue();
    }
    @Override
    public final int asInt(int com.fitburfaultValue) {
        return intValue();
    }

    @Override
    public final long asLong() {
        return longValue();
    }
    @Override
    public final long asLong(long com.fitburfaultValue) {
        return longValue();
    }
    
    @Override
    public final double asDouble() {
        return doubleValue();
    }
    @Override
    public final double asDouble(double com.fitburfaultValue) {
        return doubleValue();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy