5#ifndef IDDICT_IdDictAltRegions_H
6#define IDDICT_IdDictAltRegions_H
37 virtual std::string
group_name ()
const override;
49 void add_region (std::unique_ptr<IdDictRegion> region);
61 const std::string& tag =
"")
override;
63 virtual bool verify ()
const override;
64 virtual void clear ()
override;
71 using map_type = std::map<std::string, std::unique_ptr<IdDictRegion> >;
void select_region(const std::string &name)
Select the named region.
IdDictRegion * m_selected_region
void add_region(std::unique_ptr< IdDictRegion > region)
Add a new region, with key given by the tag.
virtual void clear() override
virtual void set_index(size_t index) override
virtual void resolve_references(IdDictMgr &idd, IdDictDictionary &dictionary) override
virtual void generate_implementation(const IdDictMgr &idd, IdDictDictionary &dictionary, const std::string &tag="") override
map_type::iterator map_iterator
virtual Range build_range() const override
virtual ~IdDictAltRegions()
IdDictRegion * selected_region()
Currently selected region.
virtual void reset_implementation() override
map_type::value_type value_type
virtual bool verify() const override
virtual std::string group_name() const override
Group name for this region.
std::map< std::string, std::unique_ptr< IdDictRegion > > map_type
A Range describes the possible ranges for the field values of an ExpandedIdentifier.