GitXplorerGitXplorer
f

gohs

public
281 stars
50 forks
5 issues

Commits

List of commits on branch master.
Unverified
9dd8ff12354342d63a6e036780f4b19c7ac9ce01

remove old version

fflier committed 2 months ago
Verified
de14fe5f5ce61c28405d8bcfda1fb942a2f82e37

Merge pull request #66 from flier/dac4dependabot/go_modules/golang.org/x/net-0.23.0

fflier committed 2 months ago
Verified
b369d39044686d7358690b70a49c941b55f47b2e

Merge pull request #64 from flier/feature/handleMap

fflier committed 2 months ago
Unverified
3df6ecacec4d6fa2420752bb4205855b1ffde715

Merge remote-tracking branch 'origin/master' into feature/handleMap

fflier committed 2 months ago
Verified
d4a13030e9546d7d893d8e37aad3c5cf3bd4c1bf

Bump golang.org/x/net from 0.9.0 to 0.23.0

ddependabot[bot] committed 2 months ago
Verified
717fbfe69c5e5ff7365d86643bfee51201e05592

Merge pull request #58 from flier/e265dependabot/go_modules/github.com/smartystreets/goconvey-1.8.1

fflier committed 2 months ago

README

The README file for this repository.

gohs Continuous integration Go Report Card codecov Apache MIT

Golang binding for Intel's HyperScan regex matching library: hyperscan.io

Hyperscan Go Reference

Hyperscan is a software regular expression matching engine designed with high performance and flexibility in mind. It is implemented as a library that exposes a straightforward C API.

Build

gohs does not enable the latest api of Hyperscan v5.4 by default, if you want to use it please pass build tags hyperscan_v54.

go get -u -tags hyperscan_v54 github.com/flier/gohs/hyperscan

gohs will use Hyperscan v5 API by default, you can also build for Hyperscan v4 with hyperscan_v4 tag.

go get -u -tags hyperscan_v4 github.com/flier/gohs/hyperscan

Chimera Go Reference

Chimera is a software regular expression matching engine that is a hybrid of Hyperscan and PCRE. The design goals of Chimera are to fully support PCRE syntax as well as to take advantage of the high performance nature of Hyperscan.

Build

It is recommended to compile and link Chimera using static libraries.

$ mkdir build && cd build
$ cmake .. -G Ninja -DBUILD_STATIC_LIBS=on
$ ninja && ninja install
$ go get -u github.com/flier/gohs/hyperscan

Note

You need to download the PCRE library source code to build Chimera, see Chimera Requirements for more details

Vectorscan

The Intel's Hyperscan relies on the SSE/AVX instruction set for x86 platform. If you need to use it on other platforms such as ARM, you can install Vectorscan which is a portable fork of Hyperscan that supports the ARM NEON/ASIMD and Power VSX.

License

This project is licensed under either of Apache License (LICENSE-APACHE) or MIT license (LICENSE-MIT) at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Futures by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.