5#ifndef IDDICT_IdDictRange_H
6#define IDDICT_IdDictRange_H
58 const std::vector<std::string>&
labels);
69 const std::string&
label()
const;
72 const std::vector<int>&
values()
const;
73 const std::vector<std::string>&
labels()
const;
88 void set_range (
int minvalue,
int maxvalue);
114 const std::string& tag =
"")
override;
std::vector< int > m_values
virtual ~IdDictRange()=default
const std::string & field_name() const
const std::string & label() const
const std::vector< int > & values() const
void set_range(const std::string &label)
By label.
virtual Range build_range() const override
void set_next(int next)
Set next value and adjust continuation mode.
void set_prev(int prev)
Set previous value and adjust continuation mode.
std::vector< std::string > m_labels
specification_type specification() const
IdDictRange(const std::string &field_name)
Set name only; no range information.
virtual void generate_implementation(const IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion ®ion, const std::string &tag="") override
const IdDictField * field() const
virtual void resolve_references(IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion ®ion) override
specification_type m_specification
void set_wrap_around()
Enable wraparound.
continuation_mode m_continuation_mode
const std::vector< std::string > & labels() const
bool m_resolved_references
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
std::string label(const std::string &format, int i)