1
1
/*
2
- * Copyright 2020 DiffPlug
2
+ * Copyright (C) 2020-2022 DiffPlug
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
30
30
* field.set(widget, model);
31
31
* ```
32
32
*/
33
- public class TypedDataField <T , W extends Widget > {
33
+ public class TypedDataField <W extends Widget , T > {
34
34
/** Creates a TypedDataField for `setData(String key, Object value)`. */
35
- public static <T , W extends Widget > TypedDataField <T , W > create (String key ) {
35
+ public static <T , W extends Widget > TypedDataField <W , T > create (String key ) {
36
36
return new TypedDataField <>(key );
37
37
}
38
38
39
39
/** Creates a TypedDataField for `setData(Object value)`. */
40
- public static <T , W extends Widget > TypedDataField <T , W > create () {
40
+ public static <T , W extends Widget > TypedDataField <W , T > create () {
41
41
return new TypedDataField <>(null );
42
42
}
43
43
@@ -48,13 +48,13 @@ public static <T, W extends Widget> TypedDataField<T, W> create() {
48
48
this .key = key ;
49
49
}
50
50
51
- public T get (Widget widget ) {
51
+ public T get (W widget ) {
52
52
return Objects .requireNonNull (getNullable (widget ));
53
53
}
54
54
55
55
@ SuppressWarnings ("unchecked" )
56
56
@ Nullable
57
- public T getNullable (Widget widget ) {
57
+ public T getNullable (W widget ) {
58
58
if (key == null ) {
59
59
return (T ) widget .getData ();
60
60
} else {
0 commit comments