// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.fasterxml.jackson.databind.deser.std; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.jsontype.TypeDeserializer; import java.io.IOException; import java.math.BigDecimal; import java.math.BigInteger; // Referenced classes of package com.fasterxml.jackson.databind.deser.std: // StdScalarDeserializer, NumberDeserializers public static class extends StdScalarDeserializer { public static final deserialize instance = new (); public Object deserialize(JsonParser jsonparser, DeserializationContext deserializationcontext) throws IOException { jsonparser.getCurrentTokenId(); JVM INSTR tableswitch 3 8: default 44 // 3 301 // 4 44 // 5 44 // 6 104 // 7 57 // 8 81; goto _L1 _L2 _L1 _L1 _L3 _L4 _L5 _L1: throw deserializationcontext.mappingException(_valueClass, jsonparser.getCurrentToken()); _L4: if (!deserializationcontext.hasSomeOfFeatures(F_MASK_INT_COERCIONS)) goto _L7; else goto _L6 _L6: Object obj = _coerceIntegral(jsonparser, deserializationcontext); _L9: return obj; _L7: return jsonparser.getNumberValue(); _L5: if (deserializationcontext.isEnabled(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)) { return jsonparser.getDecimalValue(); } else { return Double.valueOf(jsonparser.getDoubleValue()); } _L3: jsonparser = jsonparser.getText().trim(); if (jsonparser.length() == 0) { return getEmptyValue(deserializationcontext); } if (_hasTextualNull(jsonparser)) { return getNullValue(deserializationcontext); } if (_isPosInf(jsonparser)) { return Double.valueOf((1.0D / 0.0D)); } if (_isNegInf(jsonparser)) { return Double.valueOf((-1.0D / 0.0D)); } if (_isNaN(jsonparser)) { return Double.valueOf((0.0D / 0.0D)); } if (_isIntNumber(jsonparser)) { break MISSING_BLOCK_LABEL_235; } if (!deserializationcontext.isEnabled(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)) { break MISSING_BLOCK_LABEL_226; } obj = new BigDecimal(jsonparser); return obj; return new Double(jsonparser); long l; if (deserializationcontext.isEnabled(DeserializationFeature.USE_BIG_INTEGER_FOR_INTS)) { return new BigInteger(jsonparser); } l = Long.parseLong(jsonparser); if (!deserializationcontext.isEnabled(DeserializationFeature.USE_LONG_FOR_INTS) && l <= 0x7fffffffL && l >= 0xffffffff80000000L) { try { return Integer.valueOf((int)l); } // Misplaced declaration of an exception variable catch (Object obj) { throw deserializationcontext.weirdStringException(jsonparser, _valueClass, "not a valid number"); } } else { return Long.valueOf(l); } _L2: if (!deserializationcontext.isEnabled(DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS)) { continue; /* Loop/switch isn't completed */ } jsonparser.nextToken(); obj = deserialize(jsonparser, deserializationcontext); if (jsonparser.nextToken() != JsonToken.END_ARRAY) { throw deserializationcontext.wrongTokenException(jsonparser, JsonToken.END_ARRAY, (new StringBuilder()).append("Attempted to unwrap single value array for single '").append(_valueClass.getName()).append("' value but there was more than a single value in the array").toString()); } if (true) goto _L9; else goto _L8 _L8: if (true) goto _L1; else goto _L10 _L10: } public Object deserializeWithType(JsonParser jsonparser, DeserializationContext deserializationcontext, TypeDeserializer typedeserializer) throws IOException { switch (jsonparser.getCurrentTokenId()) { default: return typedeserializer.deserializeTypedFromScalar(jsonparser, deserializationcontext); case 6: // '\006' case 7: // '\007' case 8: // '\b' return deserialize(jsonparser, deserializationcontext); } } public () { super(java/lang/Number); } }