Skip to content

Commit 5e5e18a

Browse files
authored
Update if _hydrateSubject order
To avoid ambiguity it is best to keep the persistence test first. This has already caused a problem in a project of mine where I use it within a class with <Generics>
1 parent 63072a3 commit 5e5e18a

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

lib/hydrated.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,8 +128,10 @@ class HydratedSubject<T> extends Subject<T> implements ValueObservable<T> {
128128
final prefs = await SharedPreferences.getInstance();
129129

130130
var val;
131-
132-
if (T == int)
131+
132+
if (this._hydrate != null)
133+
val = this._hydrate(prefs.getString(this._key));
134+
else if (T == int)
133135
val = prefs.getInt(this._key);
134136
else if (T == double)
135137
val = prefs.getDouble(this._key);
@@ -139,8 +141,6 @@ class HydratedSubject<T> extends Subject<T> implements ValueObservable<T> {
139141
val = prefs.getString(this._key);
140142
else if ([""] is T)
141143
val = prefs.getStringList(this._key);
142-
else if (this._hydrate != null)
143-
val = this._hydrate(prefs.getString(this._key));
144144
else
145145
Exception(
146146
"HydratedSubject – shared_preferences returned an invalid type",

0 commit comments

Comments
 (0)