Package net.sf.saxon.type

## Class Converter.UnfailingConverter

- java.lang.Object
- - net.sf.saxon.type.Converter
  - - net.sf.saxon.type.Converter.UnfailingConverter

- Direct Known Subclasses:
    `Converter.Base64BinaryToHexBinary`, `Converter.BooleanToDecimal`, `Converter.BooleanToDouble`, `Converter.BooleanToFloat`, `Converter.BooleanToInteger`, `Converter.DateTimeToDate`, `Converter.DateTimeToGDay`, `Converter.DateTimeToGMonth`, `Converter.DateTimeToGMonthDay`, `Converter.DateTimeToGYear`, `Converter.DateTimeToGYearMonth`, `Converter.DateTimeToTime`, `Converter.DateToDateTime`, `Converter.DecimalToInteger`, `Converter.DurationToDayTimeDuration`, `Converter.DurationToYearMonthDuration`, `Converter.HexBinaryToBase64Binary`, `Converter.IntegerToDecimal`, `Converter.NotationToQName`, `Converter.NumericToBoolean`, `Converter.NumericToDouble`, `Converter.NumericToFloat`, `Converter.QNameToNotation`, `Converter.ToStringConverter`, `Converter.ToUntypedAtomicConverter`, `Converter.UpCastingConverter`
  Enclosing class:
    Converter

      public abstract static class Converter.UnfailingConverter
      extends Converter

  Specialisation for converters that always succeed

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class net.sf.saxon.type.Converter

      `Converter.Base64BinaryToHexBinary, Converter.BooleanToDecimal, Converter.BooleanToDouble, Converter.BooleanToFloat, Converter.BooleanToInteger, Converter.DateTimeToDate, Converter.DateTimeToGDay, Converter.DateTimeToGMonth, Converter.DateTimeToGMonthDay, Converter.DateTimeToGYear, Converter.DateTimeToGYearMonth, Converter.DateTimeToTime, Converter.DateToDateTime, Converter.DecimalToInteger, Converter.DoubleToDecimal, Converter.DoubleToInteger, Converter.DownCastingConverter, Converter.DurationToDayTimeDuration, Converter.DurationToYearMonthDuration, Converter.FloatToDecimal, Converter.FloatToInteger, Converter.HexBinaryToBase64Binary, Converter.IdentityConverter, Converter.IntegerToDecimal, Converter.NotationToQName, Converter.NumericToBoolean, Converter.NumericToDecimal, Converter.NumericToDouble, Converter.NumericToFloat, Converter.NumericToInteger, Converter.PromoterToDouble, Converter.PromoterToFloat, Converter.QNameToNotation, Converter.ToStringConverter, Converter.ToUntypedAtomicConverter, Converter.TwoPhaseConverter, Converter.UnfailingConverter, Converter.UpCastingConverter`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `UnfailingConverter()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract AtomicValue` | `convert​(AtomicValue input)` | Convert an atomic value from the source type to the target type
    `boolean` | `isAlwaysSuccessful()` | Ask if this converter will always succeed

    - ### Methods inherited from class net.sf.saxon.type.Converter

      `convert, getConversionRules, getNamespaceResolver, setConversionRules, setNamespaceResolver`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### UnfailingConverter

          public UnfailingConverter()

  - ### Method Detail

    - #### convert

          public abstract AtomicValue convert​(AtomicValue input)

      Description copied from class: `Converter`
      Convert an atomic value from the source type to the target type
      Specified by:
        `convert` in class `Converter`
      Parameters:
        `input` - the atomic value to be converted, which the caller guarantees to be of the appropriate type for the converter. The results are undefined if the value is of the wrong type; possible outcomes are (apparent) success, or a ClassCastException.
      Returns:
        the result of the conversion, as an `AtomicValue`, if conversion succeeds, or a `ValidationFailure` object describing the reasons for failure if conversion is not possible. Note that the ValidationFailure object is not (and does not contain) an exception, because it does not necessarily result in an error being thrown, and creating exceptions on non-failure paths is expensive.

    - #### isAlwaysSuccessful

          public final boolean isAlwaysSuccessful()

      Description copied from class: `Converter`
      Ask if this converter will always succeed
      Overrides:
        `isAlwaysSuccessful` in class `Converter`
      Returns:
        true if this Converter will never return a ValidationFailure