public FEELFnResult<String> invoke(@ParameterName("from") Object val) {
        if ( val == null ) {
            return FEELFnResult.ofResult( null );
        } else {
            return FEELFnResult.ofResult( TypeUtil.formatValue(val, false) );
        }
    }
@Test
    void invokeDurationHours() {
        FunctionTestUtil.assertResult(stringFunction.invoke(Duration.ofHours(9)), "PT9H");
        FunctionTestUtil.assertResult(stringFunction.invoke(Duration.ofHours(200)), "P8DT8H");
        FunctionTestUtil.assertResult(stringFunction.invoke(Duration.ofHours(-200)), "-P8DT8H");
    }