struct
#include <netlist/DriverMap.hpp>
DriverMap Map driven ranges of a particular symbol to driver lists. Each interval maps to a handle that is used to look up the actual DriverList that is managed separately by an ExternalManager.
Public types
- using Handle = ExternalManager<DriverList>::Handle
- using IntervalMapType = IntervalMap<uint32_t, Handle, 8>
- using AllocatorType = IntervalMapType::allocator_type
Public functions
- auto clone(AllocatorType& alloc) const -> auto
- Create a deep copy of this DriverMap.
- auto newDriverList() -> Handle
- Create a DriverList and return its handle.
- auto getDriverList(Handle handle) -> DriverList&
- Get the driver list for the specified handle.
- auto getDriverList(Handle handle) const -> DriverList const&
- Get the driver list for the specified handle.
- void insert(DriverBitRange bounds, DriverListHandle handle, AllocatorType& alloc)
- Insert a new interval mapping to the specified driver list handle.
- auto begin() -> typename IntervalMapType::iterator
- Return an iterator to the beginning of the driver map.
- auto begin() const -> typename IntervalMapType::const_iterator
- Return an iterator to the beginning of the driver map.
- auto end() -> typename IntervalMapType::iterator
- Return an iterator to the end of the driver map.
- auto end() const -> typename IntervalMapType::const_iterator
- Return an iterator to the end of the driver map.
- auto find(DriverBitRange bounds) -> typename IntervalMapType::overlap_iterator
- Return an iterator to all intervals that overlap the specified bounds.
- auto empty() const -> bool
- Check whether the driver map is empty.
- void erase(typename IntervalMapType::overlap_iterator it, AllocatorType& alloc)
- Erase the interval at the specified iterator position.
- void erase(DriverListHandle handle)
- Erase the driver list with the specified handle.
Public variables
- IntervalMapType driverIntervals
- Map driven ranges of a particular symbol to driver list indexes.
- ExternalManager<DriverList> driverLists
- External manager for driver lists.