/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2016, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
throw ParseError(str.str());
}
+ using DefaultConstComponentVisitor::pre;
+
void pre(const ComponentBackReference &c) override {
if (c.ref_id) {
if (c.ref_id >= num_ids) {
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2016, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
return numPositions <= MAX_REFERENT_POSITIONS;
}
+ using DefaultConstComponentVisitor::pre;
+ using DefaultConstComponentVisitor::post;
+
void pre(const AsciiComponentClass &) override {
numPositions++;
}
explicit FindSequenceVisitor(unsigned ref_id) : id(ref_id) {}
explicit FindSequenceVisitor(const std::string &s) : name(s) {}
+ using DefaultConstComponentVisitor::pre;
+
void pre(const ComponentSequence &c) override {
if (!name.empty()) {
if (c.getCaptureName() == name) {
PrefilterVisitor(Component *c, const ParseMode &m) : root(c), mode(m) {}
~PrefilterVisitor() override;
+ using DefaultComponentVisitor::visit;
+
/** \brief Calls the visitor (recursively) on a new replacement component
* we've just created. Takes care of freeing it if the sequence is itself
* replaced. */
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2016, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
class UnsupportedVisitor : public DefaultConstComponentVisitor {
public:
~UnsupportedVisitor() override;
+ using DefaultConstComponentVisitor::pre;
void pre(const ComponentAssertion &) override {
throw ParseError("Zero-width assertions are not supported.");
}