getOrSet<T> method

T getOrSet<T>(
  1. String key,
  2. T builder()
)

Gets the value for the specified key or sets it using the builder.

Example:

var foo = req.store.getOrSet<ExpensiveFoo>('foo', () => ExpensiveFoo());

Implementation

T getOrSet<T>(String key, T Function() builder) {
  if (!_data.containsKey(key)) {
    final value = builder();
    set(key, value);
    return value;
  } else {
    return get<T>(key);
  }
}