|
ROSE 0.11.145.354
|
Container classes that store user-defined values.
This library implements a number of container classes. In general, these classes adhere to the naming scheme used throughout the library, which might be somewhat surprising compared with STL containers. The major differences are:
Iterator, ConstIterator, etc. begin and end methods, but rather return iterator ranges with methods like, for the key/value map container, keys, values, and nodes. This allows containers return different types of iterators. The iterator ranges have the usual begin and end methods. isEmpty so they cannot be confused with a similar verb (i.e., it is quite obvious that isEmpty does not empty the container). insert methods come in different flavors depending on what's being inserted. Inserters that insert a value are named insert; those that insert multiple values, like from another container or iterator range, are named insertMultiple. This gives the API more flexibility and consistency across different containers. erase methods also come in different flavors: erase is to erase a single specified value, eraseAt is for erasing based on location (i.e., iterators that point into that container), and eraseMultiple is to erase multiple values at once (e.g., values obtained from a different container). As with insert, this gives container designers more flexibility and at the same time improves consistency. Namespaces | |
| namespace | Algorithm |
| Algorithms that operate on container classes. | |
| namespace | BitVectorSupport |
| Support functions for bit vectors. | |
Classes | |
| class | AddressMap |
| A mapping from address space to values. More... | |
| class | AddressMapConstraints |
| Constraints are used to select addresses from a memory map. More... | |
| struct | AddressMapTraits |
| struct | AddressMapTraits< const AddressMap > |
| class | AddressSegment |
| A homogeneous interval of an address space. More... | |
| class | AllocatingBuffer |
| Allocates memory as needed. More... | |
| class | BiMap |
| One-to-one mapping between source and target values. More... | |
| class | BitVector |
| Bit vectors. More... | |
| class | Buffer |
| Base class for all buffers. More... | |
| class | DenseIntegerSet |
| Unordered set of densely-packed integers. More... | |
| class | DistinctList |
| A doubly-linked list of distinct items. More... | |
| class | Graph |
| Graph containing user-defined vertices and edges. More... | |
| class | GraphBimapIndex |
| Map based index is the default index type when indexes are present. More... | |
| class | GraphEdgeNoKey |
| Type of edge key for graphs that do not index their edges. More... | |
| class | GraphHashIndex |
| Hash-based indexing. More... | |
| struct | GraphIndexTraits |
| Traits for vertex and edge indexing. More... | |
| struct | GraphIndexTraits< GraphEdgeNoKey< EdgeValue >, ConstEdgeIterator > |
| struct | GraphIndexTraits< GraphVertexNoKey< VertexValue >, ConstVertexIterator > |
| class | GraphIteratorBiMap |
| Bidirectional map of graph edge or vertex pointers. More... | |
| class | GraphIteratorMap |
| Map of graph edge or vertex pointers to some other value. More... | |
| class | GraphIteratorSet |
| Set of graph edge or vertex pointers (iterators). More... | |
| struct | GraphTraits |
| Traits for graphs. More... | |
| struct | GraphTraits< const G > |
| class | GraphVertexNoKey |
| Type of vertex key for graphs that do not index their vertices. More... | |
| class | GraphVoidIndex |
| Fake index for graphs that don't have an index. More... | |
| class | HashMap |
| Container associating values with keys. More... | |
| class | IndexedList |
| Doubly-linked list with constant-time indexing. More... | |
| struct | IndexedListTraits |
| Traits for indexed lists. More... | |
| struct | IndexedListTraits< const T > |
| class | Interval |
| Range of values delimited by endpoints. More... | |
| class | IntervalMap |
| An associative container whose keys are non-overlapping intervals. More... | |
| struct | IntervalMapTraits |
| Traits for IntervalMap. More... | |
| struct | IntervalMapTraits< const IntervalMap > |
| class | IntervalSet |
| A container holding a set of values. More... | |
| class | IntervalSetMap |
| Mapping from integers to sets. More... | |
| class | LineVector |
| A buffer of characters indexed by line number. More... | |
| class | Map |
| Container associating values with keys. More... | |
| class | MappedBuffer |
| Memory mapped file. More... | |
| class | MergePolicy |
| Policy indicating how values are merged and split. More... | |
| class | NullBuffer |
| Buffer that has no data. More... | |
| class | SegmentPredicate |
| Base class for testing segment constraints. More... | |
| class | Set |
| Ordered set of values. More... | |
| class | Stack |
| Stack-based container. More... | |
| class | StaticBuffer |
| Points to static data. More... | |
| class | Trace |
| Records and replays traces. More... | |
| struct | TraceIndexTraits |
| Traits for a Trace label index. More... | |
| struct | TraceIndexTraits< Label, Value, TraceVectorIndexTag > |
| class | TraceMapIndexTag |
| Tag for a map-based Trace label index. More... | |
| class | TraceVectorIndexTag |
| Tag for a vector-based Trace label index. More... | |
| class | Tracker |
| Tracks whether something has been seen before. More... | |
| class | TrackerSetIndex |
| Set-based index referenced by TrackerTraits. More... | |
| struct | TrackerTraits |
| Traits for Tracker. More... | |
| class | TrackerUnorderedIndex |
| Hash-based index referenced by TrackerTraits. More... | |
| class | TrackerVectorIndex |
| Vector-based index referenced by TrackerTraits. More... | |
Typedefs | |
| typedef unsigned | MatchFlags |
| Flags for matching constraints. | |
Functions | |
| template<class T , class IndexTag > | |
| std::ostream & | operator<< (std::ostream &out, const Trace< T, IndexTag > &trace) |
| Emit the ordered labels for a trace. | |
| typedef unsigned Sawyer::Container::MatchFlags |
Flags for matching constraints.
Definition at line 46 of file AddressMap.h.
|
inline |
Emit the ordered labels for a trace.
Prints a trace by emitting a comma-separated list of the trace's labels using Trace::print.
Definition at line 678 of file Trace.h.
References Sawyer::Container::Trace< T, IndexTag >::print().