@@ -13,19 +13,21 @@ public class ParseInput<OUT>
13
13
private final String expected ;
14
14
private final Function1 <String , Tuple <String , OUT >> transformer ;
15
15
private boolean multiline ;
16
- public static ParseInput <String > from ( String expected )
16
+ public ParseInput ( String expected , Function1 <String , Tuple < String , OUT >> transformer , boolean multiline )
17
17
{
18
- return new ParseInput <String >(expected , s -> new Tuple <>(s , s ));
18
+ this .expected = expected ;
19
+ this .transformer = transformer ;
20
+ this .multiline = multiline ;
19
21
}
20
- public static < OUT > ParseInput < OUT > from (String expected , Function1 <String , OUT > transformer )
22
+ ParseInput (String expected , Function1 <String , Tuple < String , OUT > > transformer )
21
23
{
22
- return new ParseInput < OUT > (expected , s -> new Tuple <>( s , transformer . call ( s )) );
24
+ this (expected , transformer , false );
23
25
}
24
- private ParseInput ( String expected , Function1 <String , Tuple < String , OUT >> transformer )
26
+ public static ParseInput <String > from ( String expected )
25
27
{
26
- this .expected = expected ;
27
- this .transformer = transformer ;
28
+ return new ParseInput <String >(expected , s -> new Tuple <>(s , s ));
28
29
}
30
+
29
31
public static <OUT > ParseInput <OUT > create (String expected , Function1 <Queryable <String >, OUT > transformer )
30
32
{
31
33
return new ParseInput <OUT >(expected , s -> {
@@ -49,11 +51,11 @@ public static <IN1, IN2, OUT> ParseInput<OUT> create(String expected, Function2<
49
51
public static <OUT > ParseInput <OUT > from (String expected , Class <OUT > tranformTo )
50
52
{
51
53
Function1 <String , OUT > transformer1 = getTransformerForClass (tranformTo );
52
- return ParseInput . from (expected , transformer1 );
54
+ return new ParseInput < OUT > (expected , s -> new Tuple <>( s , transformer1 . call ( s )) );
53
55
}
54
56
public <OUT > ParseInputWith1Parameters <OUT > withTypes (Class <OUT > type1 )
55
57
{
56
- return ParseInputWith1Parameters .create (expected , type1 );
58
+ return ParseInputWith1Parameters .create (expected , type1 , multiline );
57
59
}
58
60
// public <OUT> ParseInput<OUT> transformTo(Function1<String, OUT> transformer)
59
61
// {
@@ -96,21 +98,21 @@ public void verifyAll(Function1<OUT, Object> transform)
96
98
}
97
99
public <T1 , T2 > ParseInputWith2Parameters <T1 , T2 , Tuple <T1 , T2 >> withTypes (Class <T1 > type1 , Class <T2 > type2 )
98
100
{
99
- return ParseInputWith2Parameters .create (expected , type1 , type2 );
101
+ return ParseInputWith2Parameters .create (expected , getTransformerForClass (type1 ),
102
+ getTransformerForClass (type2 ));
100
103
}
101
- public <T1 , T2 > ParseInputWith2Parameters <T1 , T2 , Tuple <T1 , T2 >> transformTo (Function1 <String , T1 > transformer1 , Function1 <String , T2 > transformer2 )
104
+ public <T1 , T2 > ParseInputWith2Parameters <T1 , T2 , Tuple <T1 , T2 >> transformTo (Function1 <String , T1 > transformer1 ,
105
+ Function1 <String , T2 > transformer2 )
102
106
{
103
107
return ParseInputWith2Parameters .create (expected , transformer1 , transformer2 );
104
-
105
108
}
106
109
public ParseInput <OUT > multiline ()
107
110
{
108
- this .multiline = true ;
109
- return this ;
111
+ return new ParseInput <>(expected , transformer , true );
110
112
}
111
113
public <OUT > ParseInputWith1Parameters <OUT > transformTo (Function1 <String , OUT > transformer )
112
114
{
113
- return new ParseInputWith1Parameters <>(expected , transformer );
115
+ return new ParseInputWith1Parameters <>(expected , transformer , multiline );
114
116
}
115
117
public Queryable <OUT > getInputs ()
116
118
{
0 commit comments