This gives special attention to themes utilizing {@link ThemeDescriptorProvider} by storing the result of{@link ThemeDef#getConcreteDescriptor()} wherever possible. This helps to minimize the number of calls to{@link ThemeDescriptorProvider#provide()} to just once per theme (within this instance).
Likewise, special attention is also given to themes utilizing {@link ThemeMapProvider}, taking care to minimize the number of calls to {@link ThemeMapProvider#provide()} to just once per theme (within this instance).
Instances of this type are iterable over the contained themes (can be used in enhanced for-loop) in specified order. Take note that for CSS evaluation/parsing, {@link #orderedForEvaluation()} should be used instead.
While no methods exist on this interface for mutability, be aware that implementations might be mutable. Methods on this interface that return collections should return immutable and/or defensive copies of the current state, however.
|
|
|
|
|
|
|
|