mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-12-31 21:59:07 +03:00
Refine ComponentClass::class_empty
ComponentClass::class_empty should only be used on finalized classes to determine whether a given class contains any elements; it should not take the cr_ucp or cps_ucp into account, as they have been folden in by the finalize call. Fixes our failure to identify that the pattern /[^\D\d]/8W can never match.
This commit is contained in:
committed by
Matthew Barr
parent
c68bfe05d8
commit
9cffa7666f
@@ -232,8 +232,12 @@ public:
|
||||
Component *accept(ComponentVisitor &v) override = 0;
|
||||
void accept(ConstComponentVisitor &v) const override = 0;
|
||||
|
||||
/** True iff we have already started adding members to the class. This is
|
||||
* a different concept to Component::empty */
|
||||
/** \brief True if the class contains no members (i.e. it will not match
|
||||
* against anything). This function can only be called on a finalized
|
||||
* class.
|
||||
*
|
||||
* Note: This is a different concept to Component::empty.
|
||||
*/
|
||||
virtual bool class_empty(void) const = 0;
|
||||
|
||||
virtual void add(PredefinedClass c, bool negated) = 0;
|
||||
|
||||
Reference in New Issue
Block a user