Ignore:
Timestamp:
Aug 28, 2017, 4:00:17 PM (20 months ago)
Author:
nmedfort
Message:

Bug fixes for multigrep mode. Optional PabloKernel? branch hit counter added. Minor optimizations.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/kernels/charclasses.h

    r5578 r5620  
    1414namespace kernel {
    1515
    16 class CharClassesKernel : public pablo::PabloKernel {
     16struct CharClassesSignature {
     17    CharClassesSignature(const std::vector<UCD::UnicodeSet> & ccs);
     18protected:
     19    const std::string mSignature;
     20};
     21
     22class CharClassesKernel : public CharClassesSignature, public pablo::PabloKernel {
    1723public:
    18     CharClassesKernel(const std::unique_ptr<kernel::KernelBuilder> & iBuilder, std::vector<UCD::UnicodeSet> multiplexedCCs);
    19     bool hasSignature() const override { return false; }
     24    CharClassesKernel(const std::unique_ptr<kernel::KernelBuilder> & iBuilder, std::vector<UCD::UnicodeSet> && ccs);
     25    bool hasSignature() const override { return true; }
     26    std::string makeSignature(const std::unique_ptr<kernel::KernelBuilder> & iBuilder) override;
     27    bool isCachable() const override { return true; }
    2028protected:
    2129    void generatePabloMethod() override;
    2230protected:
    23     std::vector<UCD::UnicodeSet> mMultiplexedCCs;
     31    std::vector<UCD::UnicodeSet> mCCs;
    2432};
    2533
Note: See TracChangeset for help on using the changeset viewer.