DASH  0.3.0
Collaboration diagram for Multidimensional View Expressions:
Description

Implementing view modifier chain as combination of command pattern and chain of responsibility pattern. For now, only compile-time projections/slices are supported such as:

sub<0>(10,20).sub<1>(30,40)

but not run-time projections/slices like:

sub(0, { 10,20 }).sub(1, { 30,40 })
Implementation Notes

A view composition is a chained application of view modifier types that depend on the type of their predecessor in the chain.

Example:

sub<0>(2).sub<1>(3,4)
: :
| |
| '--> ViewSubMod<0, ViewSubMod<-1, ViewOrigin> >
| '------------.-----------'
| '--> parent
'--> ViewSubMod<-1, ViewOrigin >
'----.---'
'--> parent

Consequently, specific ViewMod types are defined for every modifier category.