Package com.vladsch.flexmark.util.data
Class ScopedDataSet
java.lang.Object
com.vladsch.flexmark.util.data.DataSet
com.vladsch.flexmark.util.data.ScopedDataSet
- All Implemented Interfaces:
DataHolder
,MutableDataSetter
-
Field Summary
FieldsFields inherited from interface com.vladsch.flexmark.util.data.DataHolder
NULL
-
Constructor Summary
ConstructorsConstructorDescriptionScopedDataSet
(@Nullable DataHolder parent) ScopedDataSet
(@Nullable DataHolder parent, @Nullable DataHolder other) -
Method Summary
Modifier and TypeMethodDescriptionboolean
contains
(@NotNull DataKeyBase<?> key) @NotNull Map
<? extends DataKeyBase<?>, Object> getAll()
@NotNull Collection
<? extends DataKeyBase<?>> getKeys()
@Nullable Object
getOrCompute
(@NotNull DataKeyBase<?> key, @NotNull DataValueFactory<?> factory) Get key if it exists or compute using supplier@NotNull MutableDataSet
Methods inherited from class com.vladsch.flexmark.util.data.DataSet
aggregate, aggregate, aggregateActions, equals, hashCode, invokeSetContains, isAggregatorRegistered, merge, registerDataKeyAggregator, toDataSet, toImmutable, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.vladsch.flexmark.util.data.DataHolder
get, setIn
-
Field Details
-
parent
-
-
Constructor Details
-
ScopedDataSet
-
ScopedDataSet
-
-
Method Details
-
getParent
-
getAll
- Specified by:
getAll
in interfaceDataHolder
- Overrides:
getAll
in classDataSet
-
getKeys
- Specified by:
getKeys
in interfaceDataHolder
- Overrides:
getKeys
in classDataSet
-
toMutable
- Specified by:
toMutable
in interfaceDataHolder
- Overrides:
toMutable
in classDataSet
-
contains
- Specified by:
contains
in interfaceDataHolder
- Overrides:
contains
in classDataSet
-
getOrCompute
@Nullable public @Nullable Object getOrCompute(@NotNull @NotNull DataKeyBase<?> key, @NotNull @NotNull DataValueFactory<?> factory) Description copied from interface:DataHolder
Get key if it exists or compute using supplierMethod used by DataKey classes to access data.
NOTE: MutableDataHolders will compute an absent key and add it to its dataSet. DataHolders will return computed value but not change contained dataSet because they are immutable. So value will be computed every time it is requested.
- Specified by:
getOrCompute
in interfaceDataHolder
- Overrides:
getOrCompute
in classDataSet
- Parameters:
key
- data keyfactory
- factory taking this data holder and computing/providing default value- Returns:
- object value for the key
-