Skip to content
Snippets Groups Projects
Commit 2cb7a32b authored by Jan Trávníček's avatar Jan Trávníček
Browse files

BoyerMooreHorspool pattern is tree type

parent 906ffa09
No related branches found
No related tags found
No related merge requests found
......@@ -25,6 +25,12 @@ std::set < unsigned > BoyerMooreHorspool::match ( const tree::Tree & subject, co
return getInstance ( ).dispatch ( subject.getData ( ), pattern.getData ( ) );
}
 
std::set < unsigned > BoyerMooreHorspool::match ( const tree::PrefixRankedBarTree & subject, const tree::PrefixRankedBarTree & pattern ) {
return match ( subject, tree::PrefixRankedBarPattern ( pattern ) );
}
auto BoyerMooreHorpoolPrefixRankedBarTreePrefixRankedBarTree = BoyerMooreHorspool::RegistratorWrapper < std::set < unsigned >, tree::PrefixRankedBarTree, tree::PrefixRankedBarTree > ( BoyerMooreHorspool::getInstance ( ), BoyerMooreHorspool::match );
std::set < unsigned > BoyerMooreHorspool::match ( const tree::PrefixRankedBarTree & subject, const tree::PrefixRankedBarPattern & pattern ) {
std::set < unsigned > occ;
std::map < alphabet::RankedSymbol, size_t > bcs = BadCharacterShiftTable::bcs ( subject.getAlphabet ( ), pattern );
......
......@@ -28,6 +28,7 @@ public:
*/
static std::set < unsigned > match ( const tree::Tree & subject, const tree::Tree & pattern );
 
static std::set < unsigned > match ( const tree::PrefixRankedBarTree & subject, const tree::PrefixRankedBarTree & pattern );
static std::set < unsigned > match ( const tree::PrefixRankedBarTree & subject, const tree::PrefixRankedBarPattern & pattern );
 
static BoyerMooreHorspool & getInstance ( ) {
......
......@@ -165,5 +165,6 @@ function runTest {
outputResults
}
 
runTest "Exact Boyer Moore Horspool" "./aarbology2 -a boyerMooreHorspool -s <( ./acast2 -t PrefixRankedBarTree -i \"\$SUBJECT_FILE\" ) -p <( ./acast2 -t PrefixRankedBarTree -i \"\$PATTERN_FILE\" ) | ./astat2 -p quantity -s"
runTest "Exact Subtree Automaton" "./arun2 -t occurrences -a <(./aarbology2 -a exactSubtreeMatchingAutomaton -p \"\$PATTERN_FILE\" | ./adeterminize2) -i \"\$SUBJECT_FILE\" | ./astat2 -p quantity -s"
 
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment