Skip to content

Releases: saicone/types

1.4.2

29 Nov 01:57
5e1d75a

Choose a tag to compare

Additions

  • File parser compatibility with Strings like /some//path/.
  • Duration parser compatibility with composed Strings like 30 MINUTES AND 20 SECONDS.

Full Changelog: 1.4.1...1.4.2

1.4.1

21 Oct 17:41
b4a9ed0

Choose a tag to compare

Additions

  • Duration parser.

Changes

  • AnyObject#value() method renamed back to AnyObject#getValue().

Full Changelog: 1.4.0...1.4.1

1.4.0

15 Sep 00:16
d57dd1c

Choose a tag to compare

Additions

  • AnyIterable#listIterator() method to get a list iterator if its possible.
  • AnyIterable#size() method to get the size of current object.
  • More Types constants.
  • types-annotated API for annotated-driven type parsing.
  • Separated type parser for every generic type.
  • BitSet parser.
  • BooleanParser#isValid() method to check if a String is a valid boolean representation.
  • AnyIterable#last() method to get the last element from current object.
  • Enum parser cache to reduce CPU usage.
  • AnyEnum utility interface for enums.
  • Extensive tests for every single-object parser.
  • Added NumberParser#isInRange() to mantain a consistent conversion between integer to decimal numbers.
  • (experimental) types-mapper API for type transformations, not yet safe for use.

Changes

  • Now the project is separated into submodules.
  • WrappedPair was renamed to WrappedObject2.
  • Now ArrayIterator implements ListIterator.
  • Rename ValueType to AnyObject.
  • Rename IterableType to AnyIterable.
  • Rename TypeIterator to AnyIterator.
  • Now default map parser is for Map<Object, Object>.
  • TypeParser no longer depends on AnyObject.
  • Now TypeParser implements Java Function.
  • Now Types#of() is compatible with class objects.
  • Now ClassParser can detect every known Class object representation.
  • Now BooleanParser trim strings before conversion.
  • Now octal numbers can be detected by 0[oO][0-7] format.
  • Now float-point casting avoid IEEE 754 to mantain conversion accuracy.

Bug Fixes

  • Recursive call on TypeParser#parse().
  • Pattern parser ignore flags.
  • Path object being detected as Iterable.
  • NumberParser#NUMBER using the wrong argument.

Full Changelog: 1.3.0...1.4.0

1.3.0

08 Feb 17:20
240d2f9

Choose a tag to compare

Additions

  • Enum value compatibility on number parser by extracting ordinal value.
  • Type wrapping API.
  • .java file suffix on class parser.
  • Elasticity result compatibility on boolean parser.

Changes

  • Now all releases will follow the version format major.minor.patch.
  • Now all type parsers with a separated instance has a public static final instance.
  • Now IterableType#first() doesn't create an iterator instance for individual or array objects.
  • Now Boolean parser has its own instance.

Bug Fixes

  • Decimal radix was not detected before pass value into BigDecimal parser.

1.2

03 Nov 19:00
ca3e89b

Choose a tag to compare

1.2

Additions

  • Support to wide variety of number representation to be parsed from string.
  • Support to String without dashes and 2-length array on UUID parser.
  • Support to file path and class descriptor on class parser.
  • Support to parse enum to enum using ordinal value.
  • Support to character number by parsing type as Integer.
  • BigInteger and BigDecimal conversion on ValueType.
  • Pattern parser as separated class.
  • Experimental AnnotatedTypeParser to parse objects with AnnotatedType.

Changes

  • Now almost all object parsers has its own instance.
  • Now class parser do not initialize classes.
  • Renamed Types#add() to Types#put().
  • Renamed confusing term between IterableType#single() and IterableType#first().

Bug Fixes

  • Text parser do not detect arrays.

1.1

19 May 16:04
000ca8a

Choose a tag to compare

1.1

Add type parser chaining.

1.0

22 Feb 14:34

Choose a tag to compare

1.0

First release