Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 1.08 KB

implementation_details.rst

File metadata and controls

39 lines (26 loc) · 1.08 KB

Implementation details

Policy-based design

Handling the combinatorial explosion of features; avoid paying for what we don't need

  • SizePolicy, StridePolicy, OffsetPolicy (compile time vs. runtime)
  • IndirectionPolicy (none, C-array, std::vector, custom, e.g. mfem::Array)
  • SubsettingPolicy (none, virtual parent, concrete parent)
  • OwnershipPolicy (local, sidre, other repository)

Feature diagram of OrderedSet policies (subset).

Feature diagram for slam's ordered set

The figure shows how certain these policies interact with the subscript operator.

Simplifying mesh setup

  • Builder classes
    • Chained initialization using named-parameter idiom
  • Generator classes to simplify types