20 #include "SheafSystem/section_dof_iterator.h" 22 #include "SheafSystem/poset_state_handle.h" 23 #include "SheafSystem/section_space_schema_member.h" 24 #include "SheafSystem/section_space_schema_poset.h" 25 #include "SheafSystem/assert_contract.h" 26 #include "SheafSystem/discretization_iterator.h" 27 #include "SheafSystem/postorder_iterator.h" 38 require(is_ancestor_of(&xother));
42 (void) poset_dof_iterator::operator=(xother);
48 ensure(is_initialized() ? anchor().is_same_state(&xother.
anchor()) :
true);
49 ensure(is_initialized() ? item().is_same_type(&xother.
item()) :
true);
50 ensure(unexecutable(
this is first member of iteration or is_done()));
63 require(is_ancestor_of(&xother));
127 if(invariant_check())
129 disable_invariant_check();
133 enable_invariant_check();
151 require(is_initialized());
171 require(is_initialized());
193 require(is_initialized());
213 require(is_initialized());
311 ensure(
anchor().is_same_state(&xanchor));
314 ensure(unexecutable(!
is_done() implies
this is first member));
int unaliased_version(int xversion) const
The actual version associated with (possibly aliased) version xversion in this.
section_space_schema_poset * host() const
The poset which this is a handle to a component of.
int version(bool xunalias=true) const
The (possibly aliased) version of this component. The version of the host used when evaluating proper...
virtual bool invariant() const
The class invariant.
bool state_is_read_accessible() const
True if this is attached and if the state is accessible for read or access control is disabled...
schema_poset_member & item()
The current member of the iteration (mutable version).
virtual bool is_schematized(bool xauto_access) const
True if this poset has been prepared for use as a schema, that is, if the top member has been schemat...
virtual bool is_initialized() const
True if this has been initialized for iteration with respect to a specific anchor.
Iterates in postorder over dofs of a schema member anchor. Attaches an a handle of type section_space...
section_dof_iterator()
Default constructor; creates an unattached iterator. Protected because this class is abstract...
virtual section_dof_iterator & operator=(const poset_dof_iterator &xother)
Assignment operator.
virtual ~section_dof_iterator()
Destructor.
Abstract base class with useful features for all objects.
virtual bool is_done() const
True if iteration finished.
virtual bool is_initialized() const
True if this has been initialized for iteration with respect to a specific anchor.
virtual bool invariant() const
The class invariant.
virtual bool is_ancestor_of(const any *other) const
True if other conforms to this.
bool is_table_dof() const
True if iterating over table dofs.
schema_poset_member & anchor()
The schema member whose downset is being iterated over; the top member of the domain of iteration (mu...
Iterates in postorder over dofs of a schema member anchor. Attaches a handle of type schema_poset_mem...
A client handle for a poset member which has been prepared for use as a schema for a section space...
section_space_schema_member & item()
The current member of the iteration (mutable version).
virtual bool item_is_ancestor_of(const schema_poset_member &xmbr) const
True if xmbr conforms to the type of item of this.
Namespace for the fiber_bundles component of the sheaf system.
section_space_schema_member & anchor()
The schema member whose downset is being iterated over; the top member of the domain of iteration (mu...
bool is_same_type(const any *other) const
True if other is the same type as this.
A client handle for a poset member which has been prepared for use as a schema.
bool has_version(int xversion) const
True if xversion is a valid version for this.