资源简介
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
相关资源
- 根据正则表达式反向生成测试数据
- 正则表达式与自动机的转换
-
Pla
yer.zip - 正则表达式经典.pdf详细标签
- 正则表达式必知必会第2版·修订版_带
- 清晰版《正则表达式必知必会》
- 学习正则表达式.zip
- 正则表达式必知必会修订版高清带书
- 编译原理程序小集正则表达式 NFA DF
- 正则表达式入门经典.[美]Andrew Watt(带
- 正则表达式PPT、讲解
- 文件路径的正则表达式
- 用lex&yacc制作的计算器
- MTracer-正则表达式测试工具
- 正则表达式中re.1.png
- 正则表达式+LOG4J电子书
- 正则表达式速查 正则表达式举例 正则
- 正则表达式
- TPerlRegEx〖Delphi下的正则表达式组件,
- 正则表达式api全中文版
- 正则式工具自动生成正则表达式
- 正则表达式手册完整版
- delphi 正则表达式类 TRegExpr
- delphi xe 10 正则表达式
- VC 直接调用PRCE 正则表达式(VS2010)
- QT 实现输入隐藏密码,并实现正则表
- 正则表达式转最小化DFA
- 正则表达式和DFA
- 偶数个a和b的正则表达式、右线性表达
评论
共有 条评论