Expand description
Hyperscan is a software regular expression matching engine designed with high performance and flexibility in mind.
Modules§
- chimera
- Chimera is a software regular expression matching engine that is a hybrid of Hyperscan and PCRE.
Structs§
- hs_
compile_ error - A type containing error details that is returned by the compile calls (@ref hs_compile(), @ref hs_compile_multi() and @ref hs_compile_ext_multi()) on failure. The caller may inspect the values returned in this type to determine the cause of failure.
- hs_
database - hs_
expr_ ext - A structure containing additional parameters related to an expression, passed in at build time to @ref hs_compile_ext_multi() or @ref hs_expression_ext_info.
- hs_
expr_ info - A type containing information related to an expression that is returned by @ref hs_expression_info() or @ref hs_expression_ext_info.
- hs_
platform_ info - A type containing information on the target platform which may optionally be provided to the compile calls (@ref hs_compile(), @ref hs_compile_multi(), @ref hs_compile_ext_multi()).
- hs_
scratch - hs_
stream - Definition of the stream identifier type.
Constants§
- HS_
ARCH_ ERROR - HS_
BAD_ ALIGN - HS_
BAD_ ALLOC - HS_
COMPILER_ ERROR - HS_
CPU_ FEATURES_ AVX2 - HS_
CPU_ FEATURES_ AVX512 - HS_
CPU_ FEATURES_ AVX512VBMI - HS_
DB_ MODE_ ERROR - HS_
DB_ PLATFORM_ ERROR - HS_
DB_ VERSION_ ERROR - HS_
EXT_ FLAG_ EDIT_ DISTANCE - HS_
EXT_ FLAG_ HAMMING_ DISTANCE - HS_
EXT_ FLAG_ MAX_ OFFSET - HS_
EXT_ FLAG_ MIN_ LENGTH - HS_
EXT_ FLAG_ MIN_ OFFSET - HS_
FLAG_ ALLOWEMPTY - HS_
FLAG_ CASELESS - HS_
FLAG_ COMBINATION - HS_
FLAG_ DOTALL - HS_
FLAG_ MULTILINE - HS_
FLAG_ PREFILTER - HS_
FLAG_ QUIET - HS_
FLAG_ SINGLEMATCH - HS_
FLAG_ SOM_ LEFTMOST - HS_
FLAG_ UCP - HS_
FLAG_ UTF8 - HS_
INSUFFICIENT_ SPACE - HS_
INVALID - HS_
MAJOR - HS_
MINOR - HS_
MODE_ BLOCK - HS_
MODE_ NOSTREAM - HS_
MODE_ SOM_ HORIZON_ LARGE - HS_
MODE_ SOM_ HORIZON_ MEDIUM - HS_
MODE_ SOM_ HORIZON_ SMALL - HS_
MODE_ STREAM - HS_
MODE_ VECTORED - HS_
NOMEM - HS_
OFFSET_ PAST_ HORIZON - HS_
PATCH - HS_
SCAN_ TERMINATED - HS_
SCRATCH_ IN_ USE - HS_
SUCCESS - HS_
TUNE_ FAMILY_ BDW - HS_
TUNE_ FAMILY_ GENERIC - HS_
TUNE_ FAMILY_ GLM - HS_
TUNE_ FAMILY_ HSW - HS_
TUNE_ FAMILY_ ICL - HS_
TUNE_ FAMILY_ ICX - HS_
TUNE_ FAMILY_ IVB - HS_
TUNE_ FAMILY_ SKL - HS_
TUNE_ FAMILY_ SKX - HS_
TUNE_ FAMILY_ SLM - HS_
TUNE_ FAMILY_ SNB - HS_
UNKNOWN_ ERROR
Functions§
- hs_
alloc_ ⚠scratch - Allocate a “scratch” space for use by Hyperscan.
- hs_
clone_ ⚠scratch - Allocate a scratch space that is a clone of an existing scratch space.
- hs_
close_ ⚠stream - Close a stream.
- hs_
compile ⚠ - The basic regular expression compiler.
- hs_
compile_ ⚠ext_ multi - The multiple regular expression compiler with extended parameter support.
- hs_
compile_ ⚠lit - The basic pure literal expression compiler.
- hs_
compile_ ⚠lit_ multi - The multiple pure literal expression compiler.
- hs_
compile_ ⚠multi - The multiple regular expression compiler.
- hs_
compress_ ⚠stream - Creates a compressed representation of the provided stream in the buffer provided. This compressed representation can be converted back into a stream state by using @ref hs_expand_stream() or @ref hs_reset_and_expand_stream(). The size of the compressed representation will be placed into @p used_space.
- hs_
copy_ ⚠stream - Duplicate the given stream. The new stream will have the same state as the original including the current stream offset.
- hs_
database_ ⚠info - Utility function providing information about a database.
- hs_
database_ ⚠size - Provides the size of the given database in bytes.
- hs_
deserialize_ ⚠database - Reconstruct a pattern database from a stream of bytes previously generated by @ref hs_serialize_database().
- hs_
deserialize_ ⚠database_ at - Reconstruct a pattern database from a stream of bytes previously generated by @ref hs_serialize_database() at a given memory location.
- hs_
expand_ ⚠stream - Decompresses a compressed representation created by @ref hs_compress_stream() into a new stream.
- hs_
expression_ ⚠ext_ info - Utility function providing information about a regular expression, with extended parameter support. The information provided in @ref hs_expr_info_t includes the minimum and maximum width of a pattern match.
- hs_
expression_ ⚠info - Utility function providing information about a regular expression. The information provided in @ref hs_expr_info_t includes the minimum and maximum width of a pattern match.
- hs_
free_ ⚠compile_ error - Free an error structure generated by @ref hs_compile(), @ref hs_compile_multi() or @ref hs_compile_ext_multi().
- hs_
free_ ⚠database - Free a compiled pattern database.
- hs_
free_ ⚠scratch - Free a scratch block previously allocated by @ref hs_alloc_scratch() or @ref hs_clone_scratch().
- hs_
open_ ⚠stream - Open and initialise a stream.
- hs_
populate_ ⚠platform - Populates the platform information based on the current host.
- hs_
reset_ ⚠and_ copy_ stream - Duplicate the given ‘from’ stream state onto the ‘to’ stream. The ‘to’ stream will first be reset (reporting any EOD matches if a non-NULL @p onEvent callback handler is provided).
- hs_
reset_ ⚠and_ expand_ stream - Decompresses a compressed representation created by @ref hs_compress_stream() on top of the ‘to’ stream. The ‘to’ stream will first be reset (reporting any EOD matches if a non-NULL @p onEvent callback handler is provided).
- hs_
reset_ ⚠stream - Reset a stream to an initial state.
- hs_scan⚠
- The block (non-streaming) regular expression scanner.
- hs_
scan_ ⚠stream - Write data to be scanned to the opened stream.
- hs_
scan_ ⚠vector - The vectored regular expression scanner.
- hs_
scratch_ ⚠size - Provides the size of the given scratch space.
- hs_
serialize_ ⚠database - Serialize a pattern database to a stream of bytes.
- hs_
serialized_ ⚠database_ info - Utility function providing information about a serialized database.
- hs_
serialized_ ⚠database_ size - Utility function for reporting the size that would be required by a database if it were deserialized.
- hs_
set_ ⚠allocator - Set the allocate and free functions used by Hyperscan for allocating memory at runtime for stream state, scratch space, database bytecode, and various other data structure returned by the Hyperscan API.
- hs_
set_ ⚠database_ allocator - Set the allocate and free functions used by Hyperscan for allocating memory for database bytecode produced by the compile calls (@ref hs_compile(), @ref hs_compile_multi(), @ref hs_compile_ext_multi()) and by database deserialization (@ref hs_deserialize_database()).
- hs_
set_ ⚠misc_ allocator - Set the allocate and free functions used by Hyperscan for allocating memory for items returned by the Hyperscan API such as @ref hs_compile_error_t, @ref hs_expr_info_t and serialized databases.
- hs_
set_ ⚠scratch_ allocator - Set the allocate and free functions used by Hyperscan for allocating memory for scratch space by @ref hs_alloc_scratch() and @ref hs_clone_scratch().
- hs_
set_ ⚠stream_ allocator - Set the allocate and free functions used by Hyperscan for allocating memory for stream state by @ref hs_open_stream().
- hs_
stream_ ⚠size - Provides the size of the stream state allocated by a single stream opened against the given database.
- hs_
valid_ ⚠platform - Utility function to test the current system architecture.
- hs_
version ⚠ - Utility function for identifying this release version.
Type Aliases§
- hs_
alloc_ t - The type of the callback function that will be used by Hyperscan to allocate more memory at runtime as required, for example in @ref hs_open_stream() to allocate stream state.
- hs_
compile_ error_ t - A type containing error details that is returned by the compile calls (@ref hs_compile(), @ref hs_compile_multi() and @ref hs_compile_ext_multi()) on failure. The caller may inspect the values returned in this type to determine the cause of failure.
- hs_
database_ t - A Hyperscan pattern database.
- hs_
error_ t - A type for errors returned by Hyperscan functions.
- hs_
expr_ ext_ t - A structure containing additional parameters related to an expression, passed in at build time to @ref hs_compile_ext_multi() or @ref hs_expression_ext_info.
- hs_
expr_ info_ t - A type containing information related to an expression that is returned by @ref hs_expression_info() or @ref hs_expression_ext_info.
- hs_
free_ t - The type of the callback function that will be used by Hyperscan to free memory regions previously allocated using the @ref hs_alloc_t function.
- hs_
platform_ info_ t - A type containing information on the target platform which may optionally be provided to the compile calls (@ref hs_compile(), @ref hs_compile_multi(), @ref hs_compile_ext_multi()).
- hs_
scratch_ t - A Hyperscan scratch space.
- hs_
stream_ t - The stream identifier returned by @ref hs_open_stream().
- match_
event_ handler - Definition of the match event callback function type.