資源簡介
hyperscan 源碼

代碼片段和文件信息
/*
?*?Copyright?(c)?2018?Intel?Corporation
?*
?*?Redistribution?and?use?in?source?and?binary?forms?with?or?without
?*?modification?are?permitted?provided?that?the?following?conditions?are?met:
?*
?*??*?Redistributions?of?source?code?must?retain?the?above?copyright?notice
?*????this?list?of?conditions?and?the?following?disclaimer.
?*??*?Redistributions?in?binary?form?must?reproduce?the?above?copyright
?*????notice?this?list?of?conditions?and?the?following?disclaimer?in?the
?*????documentation?and/or?other?materials?provided?with?the?distribution.
?*??*?Neither?the?name?of?Intel?Corporation?nor?the?names?of?its?contributors
?*????may?be?used?to?endorse?or?promote?products?derived?from?this?software
?*????without?specific?prior?written?permission.
?*
?*?THIS?SOFTWARE?IS?PROVIDED?BY?THE?COPYRIGHT?HOLDERS?AND?CONTRIBUTORS?“AS?IS“
?*?AND?ANY?EXPRESS?OR?IMPLIED?WARRANTIES?INCLUDING?BUT?NOT?LIMITED?TO?THE
?*?IMPLIED?WARRANTIES?OF?MERCHANTABILITY?AND?FITNESS?FOR?A?PARTICULAR?PURPOSE
?*?ARE?DISCLAIMED.?IN?NO?EVENT?SHALL?THE?COPYRIGHT?OWNER?OR?CONTRIBUTORS?BE
?*?LIABLE?FOR?ANY?DIRECT?INDIRECT?INCIDENTAL?SPECIAL?EXEMPLARY?OR
?*?CONSEQUENTIAL?DAMAGES?(INCLUDING?BUT?NOT?LIMITED?TO?PROCUREMENT?OF
?*?SUBSTITUTE?GOODS?OR?SERVICES;?LOSS?OF?USE?DATA?OR?PROFITS;?OR?BUSINESS
?*?INTERRUPTION)?HOWEVER?CAUSED?AND?ON?ANY?THEORY?OF?LIABILITY?WHETHER?IN
?*?CONTRACT?STRICT?LIABILITY?OR?TORT?(INCLUDING?NEGLIGENCE?OR?OTHERWISE)
?*?ARISING?IN?ANY?WAY?OUT?OF?THE?USE?OF?THIS?SOFTWARE?EVEN?IF?ADVISED?OF?THE
?*?POSSIBILITY?OF?SUCH?DAMAGE.
?*/
/**?\file
?*?\brief?Runtime?functions?for?setting?custom?allocators.
?*/
#include?“ch.h“
#include?“ch_common.h“
#include?“ch_internal.h“
#include?“hs.h“
#include?“ue2common.h“
#define?default_malloc?malloc
#define?default_free?free
ch_alloc_t?ch_database_alloc?=?default_malloc;
ch_alloc_t?ch_misc_alloc?=?default_malloc;
ch_alloc_t?ch_scratch_alloc?=?default_malloc;
ch_free_t?ch_database_free?=?default_free;
ch_free_t?ch_misc_free?=?default_free;
ch_free_t?ch_scratch_free?=?default_free;
static
ch_alloc_t?normalise_alloc(ch_alloc_t?a)?{
????if?(!a)?{
????????return?default_malloc;
????}?else?{
????????return?a;
????}
}
static
ch_free_t?normalise_free(ch_free_t?f)?{
????if?(!f)?{
????????return?default_free;
????}?else?{
????????return?f;
????}
}
HS_PUBLIC_API
ch_error_t?HS_CDECL?ch_set_allocator(ch_alloc_t?allocfunc
?????????????????????????????????????ch_free_t?freefunc)?{
????ch_set_database_allocator(allocfunc?freefunc);
????ch_set_misc_allocator(allocfunc?freefunc);
????ch_set_scratch_allocator(allocfunc?freefunc);
????//?Set?core?Hyperscan?alloc/free.
????hs_error_t?ret?=?hs_set_allocator(allocfunc?freefunc);
????return?ret;
}
HS_PUBLIC_API
ch_error_t?HS_CDECL?ch_set_database_allocator(ch_alloc_t?allocfunc
??????????????????????????????????????????????ch_free_t?freefunc)?{
????ch_database_alloc?=?normalise_alloc(allocfunc);
????ch_database_free?=?normalise_free(freefunc);
????//?Set?Hyperscan?databas
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-05-25?14:30??hyperscan-master\
?????文件?????????140??2020-05-25?14:30??hyperscan-master\.clang-format
?????文件????????1558??2020-05-25?14:30??hyperscan-master\.gitignore
?????文件???????16248??2020-05-25?14:30??hyperscan-master\CHANGELOG.md
?????文件???????46032??2020-05-25?14:30??hyperscan-master\CMakeLists.txt
?????文件????????1478??2020-05-25?14:30??hyperscan-master\COPYING
?????文件????????6013??2020-05-25?14:30??hyperscan-master\LICENSE
?????文件????????1597??2020-05-25?14:30??hyperscan-master\README.md
?????目錄???????????0??2020-05-25?14:30??hyperscan-master\chimera\
?????文件????????1337??2020-05-25?14:30??hyperscan-master\chimera\CMakeLists.txt
?????文件????????1912??2020-05-25?14:30??hyperscan-master\chimera\ch.h
?????文件????????3757??2020-05-25?14:30??hyperscan-master\chimera\ch_alloc.c
?????文件????????2394??2020-05-25?14:30??hyperscan-master\chimera\ch_alloc.h
?????文件???????11730??2020-05-25?14:30??hyperscan-master\chimera\ch_common.h
?????文件???????30117??2020-05-25?14:30??hyperscan-master\chimera\ch_compile.cpp
?????文件???????16278??2020-05-25?14:30??hyperscan-master\chimera\ch_compile.h
?????文件????????3930??2020-05-25?14:30??hyperscan-master\chimera\ch_databa
?????文件????????5741??2020-05-25?14:30??hyperscan-master\chimera\ch_databa
?????文件????????2109??2020-05-25?14:30??hyperscan-master\chimera\ch_internal.h
?????文件???????21357??2020-05-25?14:30??hyperscan-master\chimera\ch_runtime.c
?????文件???????12460??2020-05-25?14:30??hyperscan-master\chimera\ch_runtime.h
?????文件???????10042??2020-05-25?14:30??hyperscan-master\chimera\ch_scratch.c
?????文件????????4358??2020-05-25?14:30??hyperscan-master\chimera\ch_scratch.h
?????文件?????????360??2020-05-25?14:30??hyperscan-master\chimera\libch.pc.in
?????目錄???????????0??2020-05-25?14:30??hyperscan-master\cmake\
?????文件????????2716??2020-05-25?14:30??hyperscan-master\cmake\arch.cmake
?????文件?????????362??2020-05-25?14:30??hyperscan-master\cmake\attrib.cmake
?????文件????????2052??2020-05-25?14:30??hyperscan-master\cmake\backtrace.cmake
?????文件????????2383??2020-05-25?14:30??hyperscan-master\cmake\boost.cmake
?????文件?????????933??2020-05-25?14:30??hyperscan-master\cmake\build_wrapper.sh
?????文件????????2649??2020-05-25?14:30??hyperscan-master\cmake\config.h.in
............此處省略860個文件信息
- 上一篇:論文查重軟件系統
- 下一篇:深入淺出Node.js-2c1f.epub
評論
共有 條評論