Add AST::TuplePatternItems::TuplePatternItemType to differentiate between them
This commit is contained in:
parent
03ec66cf11
commit
4eaec85303
|
@ -1135,6 +1135,12 @@ protected:
|
|||
class TuplePatternItems
|
||||
{
|
||||
public:
|
||||
enum TuplePatternItemType
|
||||
{
|
||||
MULTIPLE,
|
||||
RANGED,
|
||||
};
|
||||
|
||||
virtual ~TuplePatternItems () {}
|
||||
|
||||
// TODO: should this store location data?
|
||||
|
@ -1150,6 +1156,8 @@ public:
|
|||
|
||||
virtual void accept_vis (ASTVisitor &vis) = 0;
|
||||
|
||||
virtual TuplePatternItemType get_pattern_type () const = 0;
|
||||
|
||||
protected:
|
||||
// pure virtual clone implementation
|
||||
virtual TuplePatternItems *clone_tuple_pattern_items_impl () const = 0;
|
||||
|
@ -1234,6 +1242,11 @@ public:
|
|||
return patterns;
|
||||
}
|
||||
|
||||
TuplePatternItemType get_pattern_type () const override
|
||||
{
|
||||
return TuplePatternItemType::MULTIPLE;
|
||||
}
|
||||
|
||||
protected:
|
||||
/* Use covariance to implement clone function as returning this object rather
|
||||
* than base */
|
||||
|
@ -1312,6 +1325,11 @@ public:
|
|||
return upper_patterns;
|
||||
}
|
||||
|
||||
TuplePatternItemType get_pattern_type () const override
|
||||
{
|
||||
return TuplePatternItemType::RANGED;
|
||||
}
|
||||
|
||||
protected:
|
||||
/* Use covariance to implement clone function as returning this object rather
|
||||
* than base */
|
||||
|
|
Loading…
Reference in New Issue