CommandLine.ITypeConverter (picocli 2.3.0 API)
Date: 2018-02-13

picocli

## Interface CommandLine.ITypeConverter<K>

- Type Parameters:
    `K` - the type of the object that is the result of the conversion
  Enclosing class:
    CommandLine

      public static interface CommandLine.ITypeConverter<K>

  When parsing command line arguments and initializing fields annotated with `@Option` or `@Parameters`, String values can be converted to any type for which a `ITypeConverter` is registered.

  This interface defines the contract for classes that know how to convert a String into some domain object. Custom converters can be registered with the `CommandLine.registerConverter(Class, ITypeConverter)` method.

  Java 8 lambdas make it easy to register custom type converters:

       commandLine.registerConverter(java.nio.file.Path.class, s -> java.nio.file.Paths.get(s));
       commandLine.registerConverter(java.time.Duration.class, s -> java.time.Duration.parse(s));

  Built-in type converters are pre-registered for the following java 1.5 types:

  - all primitive types
  - all primitive wrapper types: Boolean, Byte, Character, Double, Float, Integer, Long, Short
  - any enum
  - java.io.File
  - java.math.BigDecimal
  - java.math.BigInteger
  - java.net.InetAddress
  - java.net.URI
  - java.net.URL
  - java.nio.charset.Charset
  - java.sql.Time
  - java.util.Date
  - java.util.UUID
  - java.util.regex.Pattern
  - StringBuilder
  - CharSequence
  - String

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `K` | `convert(java.lang.String value)` Converts the specified command line argument value to some domain object.

- - ### Method Detail

    - #### convert

          K convert(java.lang.String value)
                    throws java.lang.Exception

      Converts the specified command line argument value to some domain object.
      Parameters:
        `value` - the command line argument String value
      Returns:
        the resulting domain object
      Throws:
        `java.lang.Exception` - an exception detailing what went wrong during the conversion