├── .gitignore
├── .gitmodules
├── .vscode
└── settings.json
├── .whitesource
├── CMakeLists.txt
├── LICENSE
├── README.md
├── appveyor.yml
├── pcre2
├── 132html
├── AUTHORS
├── CMakeLists.txt
├── COPYING
├── ChangeLog
├── CheckMan
├── CleanTxt
├── Detrail
├── HACKING
├── INSTALL
├── LICENCE
├── Makefile.am
├── Makefile.in
├── NEWS
├── NON-AUTOTOOLS-BUILD
├── PrepareRelease
├── README
├── RunGrepTest
├── RunGrepTest.bat
├── RunTest
├── RunTest.bat
├── aclocal.m4
├── ar-lib
├── cmake
│ ├── COPYING-CMAKE-SCRIPTS
│ ├── FindEditline.cmake
│ ├── FindPackageHandleStandardArgs.cmake
│ └── FindReadline.cmake
├── compile
├── config-cmake.h.in
├── config.guess
├── config.sub
├── configure
├── configure.ac
├── depcomp
├── doc
│ ├── html
│ │ ├── NON-AUTOTOOLS-BUILD.txt
│ │ ├── README.txt
│ │ ├── index.html
│ │ ├── pcre2-config.html
│ │ ├── pcre2.html
│ │ ├── pcre2_callout_enumerate.html
│ │ ├── pcre2_code_copy.html
│ │ ├── pcre2_code_copy_with_tables.html
│ │ ├── pcre2_code_free.html
│ │ ├── pcre2_compile.html
│ │ ├── pcre2_compile_context_copy.html
│ │ ├── pcre2_compile_context_create.html
│ │ ├── pcre2_compile_context_free.html
│ │ ├── pcre2_config.html
│ │ ├── pcre2_convert_context_copy.html
│ │ ├── pcre2_convert_context_create.html
│ │ ├── pcre2_convert_context_free.html
│ │ ├── pcre2_converted_pattern_free.html
│ │ ├── pcre2_dfa_match.html
│ │ ├── pcre2_general_context_copy.html
│ │ ├── pcre2_general_context_create.html
│ │ ├── pcre2_general_context_free.html
│ │ ├── pcre2_get_error_message.html
│ │ ├── pcre2_get_mark.html
│ │ ├── pcre2_get_match_data_size.html
│ │ ├── pcre2_get_ovector_count.html
│ │ ├── pcre2_get_ovector_pointer.html
│ │ ├── pcre2_get_startchar.html
│ │ ├── pcre2_jit_compile.html
│ │ ├── pcre2_jit_free_unused_memory.html
│ │ ├── pcre2_jit_match.html
│ │ ├── pcre2_jit_stack_assign.html
│ │ ├── pcre2_jit_stack_create.html
│ │ ├── pcre2_jit_stack_free.html
│ │ ├── pcre2_maketables.html
│ │ ├── pcre2_maketables_free.html
│ │ ├── pcre2_match.html
│ │ ├── pcre2_match_context_copy.html
│ │ ├── pcre2_match_context_create.html
│ │ ├── pcre2_match_context_free.html
│ │ ├── pcre2_match_data_create.html
│ │ ├── pcre2_match_data_create_from_pattern.html
│ │ ├── pcre2_match_data_free.html
│ │ ├── pcre2_pattern_convert.html
│ │ ├── pcre2_pattern_info.html
│ │ ├── pcre2_serialize_decode.html
│ │ ├── pcre2_serialize_encode.html
│ │ ├── pcre2_serialize_free.html
│ │ ├── pcre2_serialize_get_number_of_codes.html
│ │ ├── pcre2_set_bsr.html
│ │ ├── pcre2_set_callout.html
│ │ ├── pcre2_set_character_tables.html
│ │ ├── pcre2_set_compile_extra_options.html
│ │ ├── pcre2_set_compile_recursion_guard.html
│ │ ├── pcre2_set_depth_limit.html
│ │ ├── pcre2_set_glob_escape.html
│ │ ├── pcre2_set_glob_separator.html
│ │ ├── pcre2_set_heap_limit.html
│ │ ├── pcre2_set_match_limit.html
│ │ ├── pcre2_set_max_pattern_length.html
│ │ ├── pcre2_set_newline.html
│ │ ├── pcre2_set_offset_limit.html
│ │ ├── pcre2_set_parens_nest_limit.html
│ │ ├── pcre2_set_recursion_limit.html
│ │ ├── pcre2_set_recursion_memory_management.html
│ │ ├── pcre2_set_substitute_callout.html
│ │ ├── pcre2_substitute.html
│ │ ├── pcre2_substring_copy_byname.html
│ │ ├── pcre2_substring_copy_bynumber.html
│ │ ├── pcre2_substring_free.html
│ │ ├── pcre2_substring_get_byname.html
│ │ ├── pcre2_substring_get_bynumber.html
│ │ ├── pcre2_substring_length_byname.html
│ │ ├── pcre2_substring_length_bynumber.html
│ │ ├── pcre2_substring_list_free.html
│ │ ├── pcre2_substring_list_get.html
│ │ ├── pcre2_substring_nametable_scan.html
│ │ ├── pcre2_substring_number_from_name.html
│ │ ├── pcre2api.html
│ │ ├── pcre2build.html
│ │ ├── pcre2callout.html
│ │ ├── pcre2compat.html
│ │ ├── pcre2convert.html
│ │ ├── pcre2demo.html
│ │ ├── pcre2grep.html
│ │ ├── pcre2jit.html
│ │ ├── pcre2limits.html
│ │ ├── pcre2matching.html
│ │ ├── pcre2partial.html
│ │ ├── pcre2pattern.html
│ │ ├── pcre2perform.html
│ │ ├── pcre2posix.html
│ │ ├── pcre2sample.html
│ │ ├── pcre2serialize.html
│ │ ├── pcre2syntax.html
│ │ ├── pcre2test.html
│ │ └── pcre2unicode.html
│ ├── index.html.src
│ ├── pcre2-config.1
│ ├── pcre2-config.txt
│ ├── pcre2.3
│ ├── pcre2.txt
│ ├── pcre2_callout_enumerate.3
│ ├── pcre2_code_copy.3
│ ├── pcre2_code_copy_with_tables.3
│ ├── pcre2_code_free.3
│ ├── pcre2_compile.3
│ ├── pcre2_compile_context_copy.3
│ ├── pcre2_compile_context_create.3
│ ├── pcre2_compile_context_free.3
│ ├── pcre2_config.3
│ ├── pcre2_convert_context_copy.3
│ ├── pcre2_convert_context_create.3
│ ├── pcre2_convert_context_free.3
│ ├── pcre2_converted_pattern_free.3
│ ├── pcre2_dfa_match.3
│ ├── pcre2_general_context_copy.3
│ ├── pcre2_general_context_create.3
│ ├── pcre2_general_context_free.3
│ ├── pcre2_get_error_message.3
│ ├── pcre2_get_mark.3
│ ├── pcre2_get_match_data_size.3
│ ├── pcre2_get_ovector_count.3
│ ├── pcre2_get_ovector_pointer.3
│ ├── pcre2_get_startchar.3
│ ├── pcre2_jit_compile.3
│ ├── pcre2_jit_free_unused_memory.3
│ ├── pcre2_jit_match.3
│ ├── pcre2_jit_stack_assign.3
│ ├── pcre2_jit_stack_create.3
│ ├── pcre2_jit_stack_free.3
│ ├── pcre2_maketables.3
│ ├── pcre2_maketables_free.3
│ ├── pcre2_match.3
│ ├── pcre2_match_context_copy.3
│ ├── pcre2_match_context_create.3
│ ├── pcre2_match_context_free.3
│ ├── pcre2_match_data_create.3
│ ├── pcre2_match_data_create_from_pattern.3
│ ├── pcre2_match_data_free.3
│ ├── pcre2_pattern_convert.3
│ ├── pcre2_pattern_info.3
│ ├── pcre2_serialize_decode.3
│ ├── pcre2_serialize_encode.3
│ ├── pcre2_serialize_free.3
│ ├── pcre2_serialize_get_number_of_codes.3
│ ├── pcre2_set_bsr.3
│ ├── pcre2_set_callout.3
│ ├── pcre2_set_character_tables.3
│ ├── pcre2_set_compile_extra_options.3
│ ├── pcre2_set_compile_recursion_guard.3
│ ├── pcre2_set_depth_limit.3
│ ├── pcre2_set_glob_escape.3
│ ├── pcre2_set_glob_separator.3
│ ├── pcre2_set_heap_limit.3
│ ├── pcre2_set_match_limit.3
│ ├── pcre2_set_max_pattern_length.3
│ ├── pcre2_set_newline.3
│ ├── pcre2_set_offset_limit.3
│ ├── pcre2_set_parens_nest_limit.3
│ ├── pcre2_set_recursion_limit.3
│ ├── pcre2_set_recursion_memory_management.3
│ ├── pcre2_set_substitute_callout.3
│ ├── pcre2_substitute.3
│ ├── pcre2_substring_copy_byname.3
│ ├── pcre2_substring_copy_bynumber.3
│ ├── pcre2_substring_free.3
│ ├── pcre2_substring_get_byname.3
│ ├── pcre2_substring_get_bynumber.3
│ ├── pcre2_substring_length_byname.3
│ ├── pcre2_substring_length_bynumber.3
│ ├── pcre2_substring_list_free.3
│ ├── pcre2_substring_list_get.3
│ ├── pcre2_substring_nametable_scan.3
│ ├── pcre2_substring_number_from_name.3
│ ├── pcre2api.3
│ ├── pcre2build.3
│ ├── pcre2callout.3
│ ├── pcre2compat.3
│ ├── pcre2convert.3
│ ├── pcre2demo.3
│ ├── pcre2grep.1
│ ├── pcre2grep.txt
│ ├── pcre2jit.3
│ ├── pcre2limits.3
│ ├── pcre2matching.3
│ ├── pcre2partial.3
│ ├── pcre2pattern.3
│ ├── pcre2perform.3
│ ├── pcre2posix.3
│ ├── pcre2sample.3
│ ├── pcre2serialize.3
│ ├── pcre2syntax.3
│ ├── pcre2test.1
│ ├── pcre2test.txt
│ └── pcre2unicode.3
├── install-sh
├── libpcre2-16.pc.in
├── libpcre2-32.pc.in
├── libpcre2-8.pc.in
├── libpcre2-posix.pc.in
├── ltmain.sh
├── m4
│ ├── ax_pthread.m4
│ ├── libtool.m4
│ ├── ltoptions.m4
│ ├── ltsugar.m4
│ ├── ltversion.m4
│ ├── lt~obsolete.m4
│ └── pcre2_visibility.m4
├── missing
├── pcre2-config.in
├── perltest.sh
├── src
│ ├── config.h.generic
│ ├── config.h.in
│ ├── dftables.c
│ ├── pcre2.h.generic
│ ├── pcre2.h.in
│ ├── pcre2_auto_possess.c
│ ├── pcre2_chartables.c.dist
│ ├── pcre2_compile.c
│ ├── pcre2_config.c
│ ├── pcre2_context.c
│ ├── pcre2_convert.c
│ ├── pcre2_dfa_match.c
│ ├── pcre2_error.c
│ ├── pcre2_extuni.c
│ ├── pcre2_find_bracket.c
│ ├── pcre2_fuzzsupport.c
│ ├── pcre2_internal.h
│ ├── pcre2_intmodedep.h
│ ├── pcre2_jit_compile.c
│ ├── pcre2_jit_match.c
│ ├── pcre2_jit_misc.c
│ ├── pcre2_jit_neon_inc.h
│ ├── pcre2_jit_simd_inc.h
│ ├── pcre2_jit_test.c
│ ├── pcre2_maketables.c
│ ├── pcre2_match.c
│ ├── pcre2_match_data.c
│ ├── pcre2_newline.c
│ ├── pcre2_ord2utf.c
│ ├── pcre2_pattern_info.c
│ ├── pcre2_printint.c
│ ├── pcre2_script_run.c
│ ├── pcre2_serialize.c
│ ├── pcre2_string_utils.c
│ ├── pcre2_study.c
│ ├── pcre2_substitute.c
│ ├── pcre2_substring.c
│ ├── pcre2_tables.c
│ ├── pcre2_ucd.c
│ ├── pcre2_ucp.h
│ ├── pcre2_valid_utf.c
│ ├── pcre2_xclass.c
│ ├── pcre2demo.c
│ ├── pcre2grep.c
│ ├── pcre2posix.c
│ ├── pcre2posix.h
│ ├── pcre2test.c
│ └── sljit
│ │ ├── sljitConfig.h
│ │ ├── sljitConfigInternal.h
│ │ ├── sljitExecAllocator.c
│ │ ├── sljitLir.c
│ │ ├── sljitLir.h
│ │ ├── sljitNativeARM_32.c
│ │ ├── sljitNativeARM_64.c
│ │ ├── sljitNativeARM_T2_32.c
│ │ ├── sljitNativeMIPS_32.c
│ │ ├── sljitNativeMIPS_64.c
│ │ ├── sljitNativeMIPS_common.c
│ │ ├── sljitNativePPC_32.c
│ │ ├── sljitNativePPC_64.c
│ │ ├── sljitNativePPC_common.c
│ │ ├── sljitNativeSPARC_32.c
│ │ ├── sljitNativeSPARC_common.c
│ │ ├── sljitNativeTILEGX-encoder.c
│ │ ├── sljitNativeTILEGX_64.c
│ │ ├── sljitNativeX86_32.c
│ │ ├── sljitNativeX86_64.c
│ │ ├── sljitNativeX86_common.c
│ │ ├── sljitProtExecAllocator.c
│ │ └── sljitUtils.c
├── test-driver
└── testdata
│ ├── grepbinary
│ ├── grepfilelist
│ ├── grepinput
│ ├── grepinput3
│ ├── grepinput8
│ ├── grepinputM
│ ├── grepinputv
│ ├── grepinputx
│ ├── greplist
│ ├── grepoutput
│ ├── grepoutput8
│ ├── grepoutputC
│ ├── grepoutputCN
│ ├── grepoutputN
│ ├── greppatN4
│ ├── testinput1
│ ├── testinput10
│ ├── testinput11
│ ├── testinput12
│ ├── testinput13
│ ├── testinput14
│ ├── testinput15
│ ├── testinput16
│ ├── testinput17
│ ├── testinput18
│ ├── testinput19
│ ├── testinput2
│ ├── testinput20
│ ├── testinput21
│ ├── testinput22
│ ├── testinput23
│ ├── testinput24
│ ├── testinput25
│ ├── testinput3
│ ├── testinput4
│ ├── testinput5
│ ├── testinput6
│ ├── testinput7
│ ├── testinput8
│ ├── testinput9
│ ├── testinputEBC
│ ├── testoutput1
│ ├── testoutput10
│ ├── testoutput11-16
│ ├── testoutput11-32
│ ├── testoutput12-16
│ ├── testoutput12-32
│ ├── testoutput13
│ ├── testoutput14-16
│ ├── testoutput14-32
│ ├── testoutput14-8
│ ├── testoutput15
│ ├── testoutput16
│ ├── testoutput17
│ ├── testoutput18
│ ├── testoutput19
│ ├── testoutput2
│ ├── testoutput20
│ ├── testoutput21
│ ├── testoutput22-16
│ ├── testoutput22-32
│ ├── testoutput22-8
│ ├── testoutput23
│ ├── testoutput24
│ ├── testoutput25
│ ├── testoutput3
│ ├── testoutput3A
│ ├── testoutput3B
│ ├── testoutput4
│ ├── testoutput5
│ ├── testoutput6
│ ├── testoutput7
│ ├── testoutput8-16-2
│ ├── testoutput8-16-3
│ ├── testoutput8-16-4
│ ├── testoutput8-32-2
│ ├── testoutput8-32-3
│ ├── testoutput8-32-4
│ ├── testoutput8-8-2
│ ├── testoutput8-8-3
│ ├── testoutput8-8-4
│ ├── testoutput9
│ ├── testoutputEBC
│ ├── valgrind-jit.supp
│ ├── wintestinput3
│ └── wintestoutput3
├── pcre2posix.h
└── win-headers
├── config.h
├── magic.def
└── unistd.h
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Prerequisites
3 | *.d
4 |
5 | # Object files
6 | *.o
7 | *.ko
8 | *.obj
9 | *.elf
10 |
11 | # Linker output
12 | *.ilk
13 | *.map
14 | *.exp
15 |
16 | # Precompiled Headers
17 | *.gch
18 | *.pch
19 |
20 | # Libraries
21 | *.lib
22 | *.a
23 | *.la
24 | *.lo
25 |
26 | # Shared objects (inc. Windows DLLs)
27 | *.dll
28 | *.so
29 | *.so.*
30 | *.dylib
31 |
32 | # Executables
33 | *.exe
34 | *.out
35 | *.app
36 | *.i*86
37 | *.x86_64
38 | *.hex
39 |
40 | # Debug files
41 | *.dSYM/
42 | *.su
43 | *.idb
44 | *.pdb
45 |
46 | # Kernel Module Compile Results
47 | *.mod*
48 | *.cmd
49 | .tmp_versions/
50 | modules.order
51 | Module.symvers
52 | Mkfile.old
53 | dkms.conf
54 |
55 | .vscode/*
56 | !.vscode/settings.json
57 | !.vscode/tasks.json
58 | !.vscode/launch.json
59 | !.vscode/extensions.json
60 |
61 | # Windows thumbnail cache files
62 | Thumbs.db
63 | ehthumbs.db
64 | ehthumbs_vista.db
65 |
66 | # Dump file
67 | *.stackdump
68 |
69 | # Folder config file
70 | Desktop.ini
71 |
72 | # Recycle Bin used on file shares
73 | $RECYCLE.BIN/
74 |
75 | # Windows Installer files
76 | *.cab
77 | *.msi
78 | *.msm
79 | *.msp
80 |
81 | # Windows shortcuts
82 | *.lnk
83 | x64/
84 | CMakeFiles/
85 | *.vcxproj
86 | *.filters
87 | *.cmake
88 | *.sln
89 | *.db
90 | *.user
91 | *.suo
92 | CMakeCache.txt
93 | magic
94 | magic.c
95 | magic.in
96 | magic.mgc
97 | readelf.c
98 | libmagic.dir/
99 | file.dir/
100 | file_test.dir/
101 | pcre2/pcre2-8.dir/
102 | pcre2/pcre2grep.dir/
103 | pcre2/pcre2-posix.dir/
104 | pcre2/pcre2test.dir/
105 | *.opendb
106 |
107 |
108 | # ignore copied regex.h
109 | pcre2/src/regex.h
110 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "file"]
2 | path = file
3 | url = https://github.com/file/file.git
4 | [submodule "dirent"]
5 | path = dirent
6 | url = https://github.com/tronkko/dirent.git
7 | [submodule "getopt"]
8 | path = getopt
9 | url = https://github.com/skandhurkat/Getopt-for-Visual-Studio.git
10 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "files.associations": {
3 | "mygetopt.h": "c"
4 | }
5 | }
--------------------------------------------------------------------------------
/.whitesource:
--------------------------------------------------------------------------------
1 | {
2 | "scanSettings": {
3 | "baseBranches": []
4 | },
5 | "checkRunSettings": {
6 | "vulnerableCheckRunConclusionLevel": "failure",
7 | "displayMode": "diff"
8 | },
9 | "issueSettings": {
10 | "minSeverityLevel": "LOW"
11 | }
12 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Julian David Rath
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | [](https://ci.appveyor.com/project/julian-r/file-windows)
3 |
4 | This aims to have everything one needs to build file on windows with visual studio.
5 |
6 | ## Checkout with submodules
7 |
8 | ```sh
9 | git submodule update --init --recursiv
10 | ```
11 |
12 | ## External Dependencies
13 |
14 | - *regex*: I am using [PCRE2](http://www.pcre.org/) version 10.30.
15 | Unfortunately this is not available on github with tags, so I commited it in this repo.
16 | I copied `pcre2posix.h` to `regex.h`.
17 | - *dirent*: Dirent is not available on windows, so I used a implementation from [tronkko](https://github.com/tronkko/dirent).
18 | - *getopt*: A similar problem exists with getopt, so I used a implementation from [skandhurkat](https://github.com/skandhurkat/Getopt-for-Visual-Studio).
19 |
20 | ## Linking
21 |
22 | - all the dependencies are statically linked or compiled into the dll
23 | - There is a `.def` file in windows headers describing the exports for the linker
24 | - Since dirent defines some of the symbols used in files `readelf.c` and `magic.c` the include is "patched" into them in the `CMakeLists.txt`
25 |
26 | ## Updating file
27 |
28 | - Checkout the version in the `file` submodule.
29 | - Update `CMakeLists.txt`
30 | - Update `appveyor.yml`
31 |
32 | ## Updating pcre2
33 |
34 | - I disabled the test in the `CMakeFile.txt` manually, the rest is vanilla.
35 |
--------------------------------------------------------------------------------
/pcre2/AUTHORS:
--------------------------------------------------------------------------------
1 | THE MAIN PCRE2 LIBRARY CODE
2 | ---------------------------
3 |
4 | Written by: Philip Hazel
5 | Email local part: ph10
6 | Email domain: cam.ac.uk
7 |
8 | University of Cambridge Computing Service,
9 | Cambridge, England.
10 |
11 | Copyright (c) 1997-2019 University of Cambridge
12 | All rights reserved
13 |
14 |
15 | PCRE2 JUST-IN-TIME COMPILATION SUPPORT
16 | --------------------------------------
17 |
18 | Written by: Zoltan Herczeg
19 | Email local part: hzmester
20 | Emain domain: freemail.hu
21 |
22 | Copyright(c) 2010-2019 Zoltan Herczeg
23 | All rights reserved.
24 |
25 |
26 | STACK-LESS JUST-IN-TIME COMPILER
27 | --------------------------------
28 |
29 | Written by: Zoltan Herczeg
30 | Email local part: hzmester
31 | Emain domain: freemail.hu
32 |
33 | Copyright(c) 2009-2019 Zoltan Herczeg
34 | All rights reserved.
35 |
36 | ####
37 |
--------------------------------------------------------------------------------
/pcre2/COPYING:
--------------------------------------------------------------------------------
1 | PCRE2 LICENCE
2 |
3 | Please see the file LICENCE in the PCRE2 distribution for licensing details.
4 |
5 | End
6 |
--------------------------------------------------------------------------------
/pcre2/CheckMan:
--------------------------------------------------------------------------------
1 | #! /usr/bin/perl
2 |
3 | # A script to scan PCRE2's man pages to check for typos in the control
4 | # sequences. I use only a small set of the available repertoire, so it is
5 | # straightforward to check that nothing else has slipped in by mistake. This
6 | # script should be called in the doc directory.
7 |
8 | $yield = 0;
9 |
10 | while (scalar(@ARGV) > 0)
11 | {
12 | $line = 0;
13 | $file = shift @ARGV;
14 |
15 | open (IN, $file) || die "Failed to open $file\n";
16 |
17 | while ()
18 | {
19 | $line++;
20 | if (/^\s*$/)
21 | {
22 | printf "Empty line $line of $file\n";
23 | $yield = 1;
24 | }
25 | elsif (/^\./)
26 | {
27 | if (!/^\.\s*$|
28 | ^\.B\s+\S|
29 | ^\.TH\s\S|
30 | ^\.SH\s\S|
31 | ^\.SS\s\S|
32 | ^\.TP(?:\s?\d+)?\s*$|
33 | ^\.SM\s*$|
34 | ^\.br\s*$|
35 | ^\.rs\s*$|
36 | ^\.sp\s*$|
37 | ^\.nf\s*$|
38 | ^\.fi\s*$|
39 | ^\.P\s*$|
40 | ^\.PP\s*$|
41 | ^\.\\"(?:\ HREF)?\s*$|
42 | ^\.\\"\sHTML\s\s*$|
43 | ^\.\\"\sHTML\s<\/a>\s*$|
44 | ^\.\\"\s<\/a>\s*$|
45 | ^\.\\"\sJOINSH\s*$|
46 | ^\.\\"\sJOIN\s*$/x
47 | )
48 | {
49 | printf "Bad control line $line of $file\n";
50 | $yield = 1;
51 | }
52 | }
53 | else
54 | {
55 | if (/\\[^ef]|\\f[^IBP]/)
56 | {
57 | printf "Bad backslash in line $line of $file\n";
58 | $yield = 1;
59 | }
60 | }
61 | }
62 |
63 | close(IN);
64 | }
65 |
66 | exit $yield;
67 | # End
68 |
--------------------------------------------------------------------------------
/pcre2/Detrail:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | # This is a script for removing trailing whitespace from lines in files that
4 | # are listed on the command line.
5 |
6 | # This subroutine does the work for one file.
7 |
8 | sub detrail {
9 | my($file) = $_[0];
10 | my($changed) = 0;
11 | open(IN, "$file") || die "Can't open $file for input";
12 | @lines = ;
13 | close(IN);
14 | foreach (@lines)
15 | {
16 | if (/\s+\n$/)
17 | {
18 | s/\s+\n$/\n/;
19 | $changed = 1;
20 | }
21 | }
22 | if ($changed)
23 | {
24 | open(OUT, ">$file") || die "Can't open $file for output";
25 | print OUT @lines;
26 | close(OUT);
27 | }
28 | }
29 |
30 | # This is the main program
31 |
32 | $, = ""; # Output field separator
33 | for ($i = 0; $i < @ARGV; $i++) { &detrail($ARGV[$i]); }
34 |
35 | # End
36 |
--------------------------------------------------------------------------------
/pcre2/cmake/COPYING-CMAKE-SCRIPTS:
--------------------------------------------------------------------------------
1 | Redistribution and use in source and binary forms, with or without
2 | modification, are permitted provided that the following conditions
3 | are met:
4 |
5 | 1. Redistributions of source code must retain the copyright
6 | notice, this list of conditions and the following disclaimer.
7 | 2. Redistributions in binary form must reproduce the copyright
8 | notice, this list of conditions and the following disclaimer in the
9 | documentation and/or other materials provided with the distribution.
10 | 3. The name of the author may not be used to endorse or promote products
11 | derived from this software without specific prior written permission.
12 |
13 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
15 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
16 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
17 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
18 | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
19 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
20 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
22 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23 |
--------------------------------------------------------------------------------
/pcre2/cmake/FindEditline.cmake:
--------------------------------------------------------------------------------
1 | # Modified from FindReadline.cmake (PH Feb 2012)
2 |
3 | if(EDITLINE_INCLUDE_DIR AND EDITLINE_LIBRARY AND NCURSES_LIBRARY)
4 | set(EDITLINE_FOUND TRUE)
5 | else(EDITLINE_INCLUDE_DIR AND EDITLINE_LIBRARY AND NCURSES_LIBRARY)
6 | FIND_PATH(EDITLINE_INCLUDE_DIR readline.h
7 | /usr/include/editline
8 | /usr/include/edit/readline
9 | /usr/include/readline
10 | )
11 |
12 | FIND_LIBRARY(EDITLINE_LIBRARY NAMES edit)
13 | include(FindPackageHandleStandardArgs)
14 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(Editline DEFAULT_MSG EDITLINE_INCLUDE_DIR EDITLINE_LIBRARY )
15 |
16 | MARK_AS_ADVANCED(EDITLINE_INCLUDE_DIR EDITLINE_LIBRARY)
17 | endif(EDITLINE_INCLUDE_DIR AND EDITLINE_LIBRARY AND NCURSES_LIBRARY)
18 |
--------------------------------------------------------------------------------
/pcre2/cmake/FindReadline.cmake:
--------------------------------------------------------------------------------
1 | # from http://websvn.kde.org/trunk/KDE/kdeedu/cmake/modules/FindReadline.cmake
2 | # http://websvn.kde.org/trunk/KDE/kdeedu/cmake/modules/COPYING-CMAKE-SCRIPTS
3 | # --> BSD licensed
4 | #
5 | # GNU Readline library finder
6 | if(READLINE_INCLUDE_DIR AND READLINE_LIBRARY AND NCURSES_LIBRARY)
7 | set(READLINE_FOUND TRUE)
8 | else(READLINE_INCLUDE_DIR AND READLINE_LIBRARY AND NCURSES_LIBRARY)
9 | FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h
10 | /usr/include/readline
11 | )
12 |
13 | # 2008-04-22 The next clause used to read like this:
14 | #
15 | # FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
16 | # FIND_LIBRARY(NCURSES_LIBRARY NAMES ncurses )
17 | # include(FindPackageHandleStandardArgs)
18 | # FIND_PACKAGE_HANDLE_STANDARD_ARGS(Readline DEFAULT_MSG NCURSES_LIBRARY READLINE_INCLUDE_DIR READLINE_LIBRARY )
19 | #
20 | # I was advised to modify it such that it will find an ncurses library if
21 | # required, but not if one was explicitly given, that is, it allows the
22 | # default to be overridden. PH
23 |
24 | FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
25 | include(FindPackageHandleStandardArgs)
26 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(Readline DEFAULT_MSG READLINE_INCLUDE_DIR READLINE_LIBRARY )
27 |
28 | MARK_AS_ADVANCED(READLINE_INCLUDE_DIR READLINE_LIBRARY)
29 | endif(READLINE_INCLUDE_DIR AND READLINE_LIBRARY AND NCURSES_LIBRARY)
30 |
--------------------------------------------------------------------------------
/pcre2/config-cmake.h.in:
--------------------------------------------------------------------------------
1 | /* config.h for CMake builds */
2 |
3 | #cmakedefine HAVE_DIRENT_H 1
4 | #cmakedefine HAVE_INTTYPES_H 1
5 | #cmakedefine HAVE_STDINT_H 1
6 | #cmakedefine HAVE_STRERROR 1
7 | #cmakedefine HAVE_SYS_STAT_H 1
8 | #cmakedefine HAVE_SYS_TYPES_H 1
9 | #cmakedefine HAVE_UNISTD_H 1
10 | #cmakedefine HAVE_WINDOWS_H 1
11 |
12 | #cmakedefine HAVE_BCOPY 1
13 | #cmakedefine HAVE_MEMMOVE 1
14 |
15 | #cmakedefine PCRE2_STATIC 1
16 |
17 | #cmakedefine SUPPORT_PCRE2_8 1
18 | #cmakedefine SUPPORT_PCRE2_16 1
19 | #cmakedefine SUPPORT_PCRE2_32 1
20 | #cmakedefine PCRE2_DEBUG 1
21 | #cmakedefine DISABLE_PERCENT_ZT 1
22 |
23 | #cmakedefine SUPPORT_LIBBZ2 1
24 | #cmakedefine SUPPORT_LIBEDIT 1
25 | #cmakedefine SUPPORT_LIBREADLINE 1
26 | #cmakedefine SUPPORT_LIBZ 1
27 |
28 | #cmakedefine SUPPORT_JIT 1
29 | #cmakedefine SLJIT_PROT_EXECUTABLE_ALLOCATOR 1
30 | #cmakedefine SUPPORT_PCRE2GREP_JIT 1
31 | #cmakedefine SUPPORT_PCRE2GREP_CALLOUT 1
32 | #cmakedefine SUPPORT_PCRE2GREP_CALLOUT_FORK 1
33 | #cmakedefine SUPPORT_UNICODE 1
34 | #cmakedefine SUPPORT_VALGRIND 1
35 |
36 | #cmakedefine BSR_ANYCRLF 1
37 | #cmakedefine EBCDIC 1
38 | #cmakedefine EBCDIC_NL25 1
39 | #cmakedefine HEAP_MATCH_RECURSE 1
40 | #cmakedefine NEVER_BACKSLASH_C 1
41 |
42 | #define LINK_SIZE @PCRE2_LINK_SIZE@
43 | #define HEAP_LIMIT @PCRE2_HEAP_LIMIT@
44 | #define MATCH_LIMIT @PCRE2_MATCH_LIMIT@
45 | #define MATCH_LIMIT_DEPTH @PCRE2_MATCH_LIMIT_DEPTH@
46 | #define NEWLINE_DEFAULT @NEWLINE_DEFAULT@
47 | #define PARENS_NEST_LIMIT @PCRE2_PARENS_NEST_LIMIT@
48 | #define PCRE2GREP_BUFSIZE @PCRE2GREP_BUFSIZE@
49 | #define PCRE2GREP_MAX_BUFSIZE @PCRE2GREP_MAX_BUFSIZE@
50 |
51 | #define MAX_NAME_SIZE 32
52 | #define MAX_NAME_COUNT 10000
53 |
54 | /* end config.h for CMake builds */
55 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_code_copy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_code_copy specification
4 |
5 |
6 | pcre2_code_copy man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_code *pcre2_code_copy(const pcre2_code *code);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function makes a copy of the memory used for a compiled pattern, excluding
29 | any memory used by the JIT compiler. Without a subsequent call to
30 | pcre2_jit_compile(), the copy can be used only for non-JIT matching. The
31 | pointer to the character tables is copied, not the tables themselves (see
32 | pcre2_code_copy_with_tables()). The yield of the function is NULL if
33 | code is NULL or if sufficient memory cannot be obtained.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_code_copy_with_tables.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_code_copy_with_tables specification
4 |
5 |
6 | pcre2_code_copy_with_tables man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_code *pcre2_code_copy_with_tables(const pcre2_code *code);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function makes a copy of the memory used for a compiled pattern, excluding
29 | any memory used by the JIT compiler. Without a subsequent call to
30 | pcre2_jit_compile(), the copy can be used only for non-JIT matching.
31 | Unlike pcre2_code_copy(), a separate copy of the character tables is also
32 | made, with the new code pointing to it. This memory will be automatically freed
33 | when pcre2_code_free() is called. The yield of the function is NULL if
34 | code is NULL or if sufficient memory cannot be obtained.
35 |
36 |
37 | There is a complete description of the PCRE2 native API in the
38 | pcre2api
39 | page and a description of the POSIX API in the
40 | pcre2posix
41 | page.
42 |
43 | Return to the PCRE2 index page.
44 |
45 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_code_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_code_free specification
4 |
5 |
6 | pcre2_code_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_code_free(pcre2_code *code);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | If code is NULL, this function does nothing. Otherwise, code must
29 | point to a compiled pattern. This function frees its memory, including any
30 | memory used by the JIT compiler. If the compiled pattern was created by a call
31 | to pcre2_code_copy_with_tables(), the memory for the character tables is
32 | also freed.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_compile_context_copy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_compile_context_copy specification
4 |
5 |
6 | pcre2_compile_context_copy man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_compile_context *pcre2_compile_context_copy(
23 | pcre2_compile_context *ccontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function makes a new copy of a compile context, using the memory
30 | allocation function that was used for the original context. The result is NULL
31 | if the memory cannot be obtained.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_compile_context_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_compile_context_create specification
4 |
5 |
6 | pcre2_compile_context_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_compile_context *pcre2_compile_context_create(
23 | pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function creates and initializes a new compile context. If its argument is
30 | NULL, malloc() is used to get the necessary memory; otherwise the memory
31 | allocation function within the general context is used. The result is NULL if
32 | the memory could not be obtained.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_compile_context_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_compile_context_free specification
4 |
5 |
6 | pcre2_compile_context_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_compile_context_free(pcre2_compile_context *ccontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function frees the memory occupied by a compile context, using the memory
29 | freeing function from the general context with which it was created, or
30 | free() if that was not set. If the argument is NULL, the function returns
31 | immediately without doing anything.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_convert_context_copy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_convert_context_copy specification
4 |
5 |
6 | pcre2_convert_context_copy man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_convert_context *pcre2_convert_context_copy(
23 | pcre2_convert_context *cvcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is part of an experimental set of pattern conversion functions.
30 | It makes a new copy of a convert context, using the memory allocation function
31 | that was used for the original context. The result is NULL if the memory cannot
32 | be obtained.
33 |
34 |
35 | The pattern conversion functions are described in the
36 | pcre2convert
37 | documentation.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_convert_context_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_convert_context_create specification
4 |
5 |
6 | pcre2_convert_context_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_convert_context *pcre2_convert_context_create(
23 | pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is part of an experimental set of pattern conversion functions.
30 | It creates and initializes a new convert context. If its argument is
31 | NULL, malloc() is used to get the necessary memory; otherwise the memory
32 | allocation function within the general context is used. The result is NULL if
33 | the memory could not be obtained.
34 |
35 |
36 | The pattern conversion functions are described in the
37 | pcre2convert
38 | documentation.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_convert_context_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_convert_context_free specification
4 |
5 |
6 | pcre2_convert_context_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_convert_context_free(pcre2_convert_context *cvcontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function is part of an experimental set of pattern conversion functions.
29 | It frees the memory occupied by a convert context, using the memory
30 | freeing function from the general context with which it was created, or
31 | free() if that was not set. If the argument is NULL, the function returns
32 | immediately without doing anything.
33 |
34 |
35 | The pattern conversion functions are described in the
36 | pcre2convert
37 | documentation.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_converted_pattern_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_converted_pattern_free specification
4 |
5 |
6 | pcre2_converted_pattern_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_converted_pattern_free(PCRE2_UCHAR *converted_pattern);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function is part of an experimental set of pattern conversion functions.
29 | It frees the memory occupied by a converted pattern that was obtained by
30 | calling pcre2_pattern_convert() with arguments that caused it to place
31 | the converted pattern into newly obtained heap memory. If the argument is NULL,
32 | the function returns immediately without doing anything.
33 |
34 |
35 | The pattern conversion functions are described in the
36 | pcre2convert
37 | documentation.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_general_context_copy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_general_context_copy specification
4 |
5 |
6 | pcre2_general_context_copy man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_general_context *pcre2_general_context_copy(
23 | pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function makes a new copy of a general context, using the memory
30 | allocation functions in the context, if set, to get the necessary memory.
31 | Otherwise malloc() is used. The result is NULL if the memory cannot be
32 | obtained.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_general_context_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_general_context_create specification
4 |
5 |
6 | pcre2_general_context_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_general_context *pcre2_general_context_create(
23 | void *(*private_malloc)(PCRE2_SIZE, void *),
24 | void (*private_free)(void *, void *), void *memory_data);
25 |
26 |
27 | DESCRIPTION
28 |
29 |
30 | This function creates and initializes a general context. The arguments define
31 | custom memory management functions and a data value that is passed to them when
32 | they are called. The private_malloc() function is used to get memory for
33 | the context. If either of the first two arguments is NULL, the system memory
34 | management function is used. The result is NULL if no memory could be obtained.
35 |
36 |
37 | There is a complete description of the PCRE2 native API in the
38 | pcre2api
39 | page and a description of the POSIX API in the
40 | pcre2posix
41 | page.
42 |
43 | Return to the PCRE2 index page.
44 |
45 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_general_context_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_general_context_free specification
4 |
5 |
6 | pcre2_general_context_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_general_context_free(pcre2_general_context *gcontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function frees the memory occupied by a general context, using the memory
29 | freeing function within the context, if set. If the argument is NULL, the
30 | function returns immediately without doing anything.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_error_message.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_error_message specification
4 |
5 |
6 | pcre2_get_error_message man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_get_error_message(int errorcode, PCRE2_UCHAR *buffer,
23 | PCRE2_SIZE bufflen);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function provides a textual error message for each PCRE2 error code.
30 | Compilation errors are positive numbers; UTF formatting errors and matching
31 | errors are negative numbers. The arguments are:
32 |
33 | errorcode an error code (positive or negative)
34 | buffer where to put the message
35 | bufflen the length of the buffer (code units)
36 |
37 | The function returns the length of the message in code units, excluding the
38 | trailing zero, or the negative error code PCRE2_ERROR_NOMEMORY if the buffer is
39 | too small. In this case, the returned message is truncated (but still with a
40 | trailing zero). If errorcode does not contain a recognized error code
41 | number, the negative value PCRE2_ERROR_BADDATA is returned.
42 |
43 |
44 | There is a complete description of the PCRE2 native API in the
45 | pcre2api
46 | page and a description of the POSIX API in the
47 | pcre2posix
48 | page.
49 |
50 | Return to the PCRE2 index page.
51 |
52 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_mark.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_mark specification
4 |
5 |
6 | pcre2_get_mark man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | PCRE2_SPTR pcre2_get_mark(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | After a call of pcre2_match() that was passed the match block that is
29 | this function's argument, this function returns a pointer to the last (*MARK),
30 | (*PRUNE), or (*THEN) name that was encountered during the matching process. The
31 | name is zero-terminated, and is within the compiled pattern. The length of the
32 | name is in the preceding code unit. If no name is available, NULL is returned.
33 |
34 |
35 | After a successful match, the name that is returned is the last one on the
36 | matching path. After a failed match or a partial match, the last encountered
37 | name is returned.
38 |
39 |
40 | There is a complete description of the PCRE2 native API in the
41 | pcre2api
42 | page and a description of the POSIX API in the
43 | pcre2posix
44 | page.
45 |
46 | Return to the PCRE2 index page.
47 |
48 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_match_data_size.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_match_data_size specification
4 |
5 |
6 | pcre2_get_match_data_size man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | PCRE2_SIZE pcre2_get_match_data_size(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function returns the size, in bytes, of the match data block that is its
29 | argument.
30 |
31 |
32 | There is a complete description of the PCRE2 native API in the
33 | pcre2api
34 | page and a description of the POSIX API in the
35 | pcre2posix
36 | page.
37 |
38 | Return to the PCRE2 index page.
39 |
40 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_ovector_count.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_ovector_count specification
4 |
5 |
6 | pcre2_get_ovector_count man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | uint32_t pcre2_get_ovector_count(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function returns the number of pairs of offsets in the ovector that forms
29 | part of the given match data block.
30 |
31 |
32 | There is a complete description of the PCRE2 native API in the
33 | pcre2api
34 | page and a description of the POSIX API in the
35 | pcre2posix
36 | page.
37 |
38 | Return to the PCRE2 index page.
39 |
40 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_ovector_pointer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_ovector_pointer specification
4 |
5 |
6 | pcre2_get_ovector_pointer man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | PCRE2_SIZE *pcre2_get_ovector_pointer(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function returns a pointer to the vector of offsets that forms part of the
29 | given match data block. The number of pairs can be found by calling
30 | pcre2_get_ovector_count().
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_get_startchar.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_get_startchar specification
4 |
5 |
6 | pcre2_get_startchar man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | PCRE2_SIZE pcre2_get_startchar(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | After a successful call of pcre2_match() that was passed the match block
29 | that is this function's argument, this function returns the code unit offset of
30 | the character at which the successful match started. For a non-partial match,
31 | this can be different to the value of ovector[0] if the pattern contains
32 | the \K escape sequence. After a partial match, however, this value is always
33 | the same as ovector[0] because \K does not affect the result of a
34 | partial match.
35 |
36 |
37 | There is a complete description of the PCRE2 native API in the
38 | pcre2api
39 | page and a description of the POSIX API in the
40 | pcre2posix
41 | page.
42 |
43 | Return to the PCRE2 index page.
44 |
45 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_jit_free_unused_memory.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_jit_free_unused_memory specification
4 |
5 |
6 | pcre2_jit_free_unused_memory man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_jit_free_unused_memory(pcre2_general_context *gcontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function frees unused JIT executable memory. The argument is a general
29 | context, for custom memory management, or NULL for standard memory management.
30 | JIT memory allocation retains some memory in order to improve future JIT
31 | compilation speed. In low memory conditions,
32 | \fBpcre2_jit_free_unused_memory()\fB can be used to cause this memory to be
33 | freed.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_jit_match.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_jit_match specification
4 |
5 |
6 | pcre2_jit_match man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_jit_match(const pcre2_code *code, PCRE2_SPTR subject,
23 | PCRE2_SIZE length, PCRE2_SIZE startoffset,
24 | uint32_t options, pcre2_match_data *match_data,
25 | pcre2_match_context *mcontext);
26 |
27 |
28 | DESCRIPTION
29 |
30 |
31 | This function matches a compiled regular expression that has been successfully
32 | processed by the JIT compiler against a given subject string, using a matching
33 | algorithm that is similar to Perl's. It is a "fast path" interface to JIT, and
34 | it bypasses some of the sanity checks that pcre2_match() applies.
35 | Its arguments are exactly the same as for
36 | pcre2_match().
37 |
38 |
39 | The supported options are PCRE2_NOTBOL, PCRE2_NOTEOL, PCRE2_NOTEMPTY,
40 | PCRE2_NOTEMPTY_ATSTART, PCRE2_PARTIAL_HARD, and PCRE2_PARTIAL_SOFT. Unsupported
41 | options are ignored. The subject string is not checked for UTF validity.
42 |
43 |
44 | The return values are the same as for pcre2_match() plus
45 | PCRE2_ERROR_JIT_BADOPTION if a matching mode (partial or complete) is requested
46 | that was not compiled. For details of partial matching, see the
47 | pcre2partial
48 | page.
49 |
50 |
51 | There is a complete description of the PCRE2 native API in the
52 | pcre2api
53 | page and a description of the JIT API in the
54 | pcre2jit
55 | page.
56 |
57 | Return to the PCRE2 index page.
58 |
59 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_jit_stack_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_jit_stack_create specification
4 |
5 |
6 | pcre2_jit_stack_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_jit_stack *pcre2_jit_stack_create(PCRE2_SIZE startsize,
23 | PCRE2_SIZE maxsize, pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is used to create a stack for use by the code compiled by the JIT
30 | compiler. The first two arguments are a starting size for the stack, and a
31 | maximum size to which it is allowed to grow. The final argument is a general
32 | context, for memory allocation functions, or NULL for standard memory
33 | allocation. The result can be passed to the JIT run-time code by calling
34 | pcre2_jit_stack_assign() to associate the stack with a compiled pattern,
35 | which can then be processed by pcre2_match() or pcre2_jit_match().
36 | A maximum stack size of 512KiB to 1MiB should be more than enough for any
37 | pattern. For more details, see the
38 | pcre2jit
39 | page.
40 |
41 |
42 | There is a complete description of the PCRE2 native API in the
43 | pcre2api
44 | page and a description of the POSIX API in the
45 | pcre2posix
46 | page.
47 |
48 | Return to the PCRE2 index page.
49 |
50 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_jit_stack_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_jit_stack_free specification
4 |
5 |
6 | pcre2_jit_stack_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_jit_stack_free(pcre2_jit_stack *jit_stack);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function is used to free a JIT stack that was created by
29 | pcre2_jit_stack_create() when it is no longer needed. If the argument is
30 | NULL, the function returns immediately without doing anything. For more
31 | details, see the
32 | pcre2jit
33 | page.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_maketables.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_maketables specification
4 |
5 |
6 | pcre2_maketables man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | const uint8_t *pcre2_maketables(pcre2_general_context *gcontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function builds a set of character tables for character code points that
29 | are less than 256. These can be passed to pcre2_compile() in a compile
30 | context in order to override the internal, built-in tables (which were either
31 | defaulted or made by pcre2_maketables() when PCRE2 was compiled). See the
32 | pcre2_set_character_tables()
33 | page. You might want to do this if you are using a non-standard locale.
34 |
35 |
36 | If the argument is NULL, malloc() is used to get memory for the tables.
37 | Otherwise it must point to a general context, which can supply pointers to a
38 | custom memory manager. The function yields a pointer to the tables.
39 |
40 |
41 | There is a complete description of the PCRE2 native API in the
42 | pcre2api
43 | page and a description of the POSIX API in the
44 | pcre2posix
45 | page.
46 |
47 | Return to the PCRE2 index page.
48 |
49 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_maketables_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_maketables_free specification
4 |
5 |
6 | pcre2_maketables_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_maketables_free(pcre2_general_context *gcontext,
23 | const uint8_t *tables);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function discards a set of character tables that were created by a call
30 | to
31 | pcre2_maketables().
32 |
33 |
34 | The gcontext parameter should match what was used in that call to
35 | account for any custom allocators that might be in use; if it is NULL
36 | the system free() is used.
37 |
38 |
39 | There is a complete description of the PCRE2 native API in the
40 | pcre2api
41 | page.
42 |
43 | Return to the PCRE2 index page.
44 |
45 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_context_copy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_context_copy specification
4 |
5 |
6 | pcre2_match_context_copy man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_match_context *pcre2_match_context_copy(
23 | pcre2_match_context *mcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function makes a new copy of a match context, using the memory
30 | allocation function that was used for the original context. The result is NULL
31 | if the memory cannot be obtained.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_context_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_context_create specification
4 |
5 |
6 | pcre2_match_context_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_match_context *pcre2_match_context_create(
23 | pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function creates and initializes a new match context. If its argument is
30 | NULL, malloc() is used to get the necessary memory; otherwise the memory
31 | allocation function within the general context is used. The result is NULL if
32 | the memory could not be obtained.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_context_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_context_free specification
4 |
5 |
6 | pcre2_match_context_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_match_context_free(pcre2_match_context *mcontext);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function frees the memory occupied by a match context, using the memory
29 | freeing function from the general context with which it was created, or
30 | free() if that was not set. If the argument is NULL, the function returns
31 | immediately without doing anything.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_data_create.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_data_create specification
4 |
5 |
6 | pcre2_match_data_create man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_match_data *pcre2_match_data_create(uint32_t ovecsize,
23 | pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function creates a new match data block, which is used for holding the
30 | result of a match. The first argument specifies the number of pairs of offsets
31 | that are required. These form the "output vector" (ovector) within the match
32 | data block, and are used to identify the matched string and any captured
33 | substrings. There is always one pair of offsets; if ovecsize is zero, it
34 | is treated as one.
35 |
36 |
37 | The second argument points to a general context, for custom memory management,
38 | or is NULL for system memory management. The result of the function is NULL if
39 | the memory for the block could not be obtained.
40 |
41 |
42 | There is a complete description of the PCRE2 native API in the
43 | pcre2api
44 | page and a description of the POSIX API in the
45 | pcre2posix
46 | page.
47 |
48 | Return to the PCRE2 index page.
49 |
50 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_data_create_from_pattern.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_data_create_from_pattern specification
4 |
5 |
6 | pcre2_match_data_create_from_pattern man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | pcre2_match_data *pcre2_match_data_create_from_pattern(
23 | const pcre2_code *code, pcre2_general_context *gcontext);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function creates a new match data block, which is used for holding the
30 | result of a match. The first argument points to a compiled pattern. The number
31 | of capturing parentheses within the pattern is used to compute the number of
32 | pairs of offsets that are required in the match data block. These form the
33 | "output vector" (ovector) within the match data block, and are used to identify
34 | the matched string and any captured substrings.
35 |
36 |
37 | The second argument points to a general context, for custom memory management,
38 | or is NULL to use the same memory allocator as was used for the compiled
39 | pattern. The result of the function is NULL if the memory for the block could
40 | not be obtained.
41 |
42 |
43 | There is a complete description of the PCRE2 native API in the
44 | pcre2api
45 | page and a description of the POSIX API in the
46 | pcre2posix
47 | page.
48 |
49 | Return to the PCRE2 index page.
50 |
51 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_match_data_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_match_data_free specification
4 |
5 |
6 | pcre2_match_data_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_match_data_free(pcre2_match_data *match_data);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | If match_data is NULL, this function does nothing. Otherwise,
29 | match_data must point to a match data block, which this function frees,
30 | using the memory freeing function from the general context or compiled pattern
31 | with which it was created, or free() if that was not set.
32 |
33 |
34 | If the PCRE2_COPY_MATCHED_SUBJECT was used for a successful match using this
35 | match data block, the copy of the subject that was remembered with the block is
36 | also freed.
37 |
38 |
39 | There is a complete description of the PCRE2 native API in the
40 | pcre2api
41 | page and a description of the POSIX API in the
42 | pcre2posix
43 | page.
44 |
45 | Return to the PCRE2 index page.
46 |
47 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_serialize_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_serialize_free specification
4 |
5 |
6 | pcre2_serialize_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_serialize_free(uint8_t *bytes);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This function frees the memory that was obtained by
29 | pcre2_serialize_encode() to hold a serialized byte stream. The argument
30 | must point to such a byte stream or be NULL, in which case the function returns
31 | without doing anything.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the serialization functions in the
37 | pcre2serialize
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_serialize_get_number_of_codes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_serialize_get_number_of_codes specification
4 |
5 |
6 | pcre2_serialize_get_number_of_codes man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int32_t pcre2_serialize_get_number_of_codes(const uint8_t *bytes);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | The bytes argument must point to a serialized byte stream that was
29 | originally created by pcre2_serialize_encode() (though it may have been
30 | saved on disc or elsewhere in the meantime). The function returns the number of
31 | serialized patterns in the byte stream, or one of the following negative error
32 | codes:
33 |
34 | PCRE2_ERROR_BADMAGIC mismatch of id bytes in bytes
35 | PCRE2_ERROR_BADMODE mismatch of variable unit size or PCRE version
36 | PCRE2_ERROR_NULL the argument is NULL
37 |
38 | PCRE2_ERROR_BADMAGIC may mean that the data is corrupt, or that it was compiled
39 | on a system with different endianness.
40 |
41 |
42 | There is a complete description of the PCRE2 native API in the
43 | pcre2api
44 | page and a description of the serialization functions in the
45 | pcre2serialize
46 | page.
47 |
48 | Return to the PCRE2 index page.
49 |
50 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_bsr.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_bsr specification
4 |
5 |
6 | pcre2_set_bsr man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_bsr(pcre2_compile_context *ccontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the convention for processing \R within a compile context.
30 | The second argument must be one of PCRE2_BSR_ANYCRLF or PCRE2_BSR_UNICODE. The
31 | result is zero for success or PCRE2_ERROR_BADDATA if the second argument is
32 | invalid.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_callout.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_callout specification
4 |
5 |
6 | pcre2_set_callout man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_callout(pcre2_match_context *mcontext,
23 | int (*callout_function)(pcre2_callout_block *),
24 | void *callout_data);
25 |
26 |
27 | DESCRIPTION
28 |
29 |
30 | This function sets the callout fields in a match context (the first argument).
31 | The second argument specifies a callout function, and the third argument is an
32 | opaque data item that is passed to it. The result of this function is always
33 | zero.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_character_tables.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_character_tables specification
4 |
5 |
6 | pcre2_set_character_tables man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_character_tables(pcre2_compile_context *ccontext,
23 | const uint8_t *tables);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets a pointer to custom character tables within a compile
30 | context. The second argument must be the result of a call to
31 | pcre2_maketables() or NULL to request the default tables. The result is
32 | always zero.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_compile_extra_options.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_compile_extra_options specification
4 |
5 |
6 | pcre2_set_compile_extra_options man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_compile_extra_options(pcre2_compile_context *ccontext,
23 | uint32_t extra_options);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets additional option bits for pcre2_compile() that are
30 | housed in a compile context. It completely replaces all the bits. The extra
31 | options are:
32 |
33 | PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES Allow \x{df800} to \x{dfff} in UTF-8 and UTF-32 modes
34 | PCRE2_EXTRA_ALT_BSUX Extended alternate \u, \U, and \x handling
35 | PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL Treat all invalid escapes as a literal following character
36 | PCRE2_EXTRA_ESCAPED_CR_IS_LF Interpret \r as \n
37 | PCRE2_EXTRA_MATCH_LINE Pattern matches whole lines
38 | PCRE2_EXTRA_MATCH_WORD Pattern matches "words"
39 |
40 | There is a complete description of the PCRE2 native API in the
41 | pcre2api
42 | page and a description of the POSIX API in the
43 | pcre2posix
44 | page.
45 |
46 | Return to the PCRE2 index page.
47 |
48 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_compile_recursion_guard.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_compile_recursion_guard specification
4 |
5 |
6 | pcre2_set_compile_recursion_guard man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_compile_recursion_guard(pcre2_compile_context *ccontext,
23 | int (*guard_function)(uint32_t, void *), void *user_data);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function defines, within a compile context, a function that is called
30 | whenever pcre2_compile() starts to compile a parenthesized part of a
31 | pattern. The first argument to the function gives the current depth of
32 | parenthesis nesting, and the second is user data that is supplied when the
33 | function is set up. The callout function should return zero if all is well, or
34 | non-zero to force an error. This feature is provided so that applications can
35 | check the available system stack space, in order to avoid running out. The
36 | result of pcre2_set_compile_recursion_guard() is always zero.
37 |
38 |
39 | There is a complete description of the PCRE2 native API in the
40 | pcre2api
41 | page and a description of the POSIX API in the
42 | pcre2posix
43 | page.
44 |
45 | Return to the PCRE2 index page.
46 |
47 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_depth_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_depth_limit specification
4 |
5 |
6 | pcre2_set_depth_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_depth_limit(pcre2_match_context *mcontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the backtracking depth limit field in a match context. The
30 | result is always zero.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_glob_escape.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_glob_escape specification
4 |
5 |
6 | pcre2_set_glob_escape man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_glob_escape(pcre2_convert_context *cvcontext,
23 | uint32_t escape_char);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is part of an experimental set of pattern conversion functions.
30 | It sets the escape character that is used when converting globs. The second
31 | argument must either be zero (meaning there is no escape character) or a
32 | punctuation character whose code point is less than 256. The default is grave
33 | accent if running under Windows, otherwise backslash. The result of the
34 | function is zero for success or PCRE2_ERROR_BADDATA if the second argument is
35 | invalid.
36 |
37 |
38 | The pattern conversion functions are described in the
39 | pcre2convert
40 | documentation.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_glob_separator.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_glob_separator specification
4 |
5 |
6 | pcre2_set_glob_separator man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_glob_separator(pcre2_convert_context *cvcontext,
23 | uint32_t separator_char);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is part of an experimental set of pattern conversion functions.
30 | It sets the component separator character that is used when converting globs.
31 | The second argument must be one of the characters forward slash, backslash, or
32 | dot. The default is backslash when running under Windows, otherwise forward
33 | slash. The result of the function is zero for success or PCRE2_ERROR_BADDATA if
34 | the second argument is invalid.
35 |
36 |
37 | The pattern conversion functions are described in the
38 | pcre2convert
39 | documentation.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_heap_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_heap_limit specification
4 |
5 |
6 | pcre2_set_heap_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_heap_limit(pcre2_match_context *mcontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the backtracking heap limit field in a match context. The
30 | result is always zero.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_match_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_match_limit specification
4 |
5 |
6 | pcre2_set_match_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_match_limit(pcre2_match_context *mcontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the match limit field in a match context. The result is
30 | always zero.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_max_pattern_length.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_max_pattern_length specification
4 |
5 |
6 | pcre2_set_max_pattern_length man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_max_pattern_length(pcre2_compile_context *ccontext,
23 | PCRE2_SIZE value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets, in a compile context, the maximum text length (in code
30 | units) of the pattern that can be compiled. The result is always zero. If a
31 | longer pattern is passed to pcre2_compile() there is an immediate error
32 | return. The default is effectively unlimited, being the largest value a
33 | PCRE2_SIZE variable can hold.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_newline.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_newline specification
4 |
5 |
6 | pcre2_set_newline man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_newline(pcre2_compile_context *ccontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the newline convention within a compile context. This
30 | specifies which character(s) are recognized as newlines when compiling and
31 | matching patterns. The second argument must be one of:
32 |
33 | PCRE2_NEWLINE_CR Carriage return only
34 | PCRE2_NEWLINE_LF Linefeed only
35 | PCRE2_NEWLINE_CRLF CR followed by LF only
36 | PCRE2_NEWLINE_ANYCRLF Any of the above
37 | PCRE2_NEWLINE_ANY Any Unicode newline sequence
38 | PCRE2_NEWLINE_NUL The NUL character (binary zero)
39 |
40 | The result is zero for success or PCRE2_ERROR_BADDATA if the second argument is
41 | invalid.
42 |
43 |
44 | There is a complete description of the PCRE2 native API in the
45 | pcre2api
46 | page and a description of the POSIX API in the
47 | pcre2posix
48 | page.
49 |
50 | Return to the PCRE2 index page.
51 |
52 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_offset_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_offset_limit specification
4 |
5 |
6 | pcre2_set_offset_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_offset_limit(pcre2_match_context *mcontext,
23 | PCRE2_SIZE value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets the offset limit field in a match context. The result is
30 | always zero.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_parens_nest_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_parens_nest_limit specification
4 |
5 |
6 | pcre2_set_parens_nest_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_parens_nest_limit(pcre2_compile_context *ccontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function sets, in a compile context, the maximum depth of nested
30 | parentheses in a pattern. The result is always zero.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_recursion_limit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_recursion_limit specification
4 |
5 |
6 | pcre2_set_recursion_limit man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_recursion_limit(pcre2_match_context *mcontext,
23 | uint32_t value);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function is obsolete and should not be used in new code. Use
30 | pcre2_set_depth_limit() instead.
31 |
32 |
33 | There is a complete description of the PCRE2 native API in the
34 | pcre2api
35 | page and a description of the POSIX API in the
36 | pcre2posix
37 | page.
38 |
39 | Return to the PCRE2 index page.
40 |
41 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_recursion_memory_management.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_recursion_memory_management specification
4 |
5 |
6 | pcre2_set_recursion_memory_management man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_recursion_memory_management(
23 | pcre2_match_context *mcontext,
24 | void *(*private_malloc)(PCRE2_SIZE, void *),
25 | void (*private_free)(void *, void *), void *memory_data);
26 |
27 |
28 | DESCRIPTION
29 |
30 |
31 | From release 10.30 onwards, this function is obsolete and does nothing. The
32 | result is always zero.
33 |
34 |
35 | There is a complete description of the PCRE2 native API in the
36 | pcre2api
37 | page and a description of the POSIX API in the
38 | pcre2posix
39 | page.
40 |
41 | Return to the PCRE2 index page.
42 |
43 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_set_substitute_callout.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_set_substitute_callout specification
4 |
5 |
6 | pcre2_set_substitute_callout man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_set_substitute_callout(pcre2_match_context *mcontext,
23 | int (*callout_function)(pcre2_substitute_callout_block *),
24 | void *callout_data);
25 |
26 |
27 | DESCRIPTION
28 |
29 |
30 | This function sets the substitute callout fields in a match context (the first
31 | argument). The second argument specifies a callout function, and the third
32 | argument is an opaque data item that is passed to it. The result of this
33 | function is always zero.
34 |
35 |
36 | There is a complete description of the PCRE2 native API in the
37 | pcre2api
38 | page and a description of the POSIX API in the
39 | pcre2posix
40 | page.
41 |
42 | Return to the PCRE2 index page.
43 |
44 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_copy_byname.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_copy_byname specification
4 |
5 |
6 | pcre2_substring_copy_byname man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_copy_byname(pcre2_match_data *match_data,
23 | PCRE2_SPTR name, PCRE2_UCHAR *buffer, PCRE2_SIZE *bufflen);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This is a convenience function for extracting a captured substring, identified
30 | by name, into a given buffer. The arguments are:
31 |
32 | match_data The match data block for the match
33 | name Name of the required substring
34 | buffer Buffer to receive the string
35 | bufflen Length of buffer (code units)
36 |
37 | The bufflen variable is updated to contain the length of the extracted
38 | string, excluding the trailing zero. The yield of the function is zero for
39 | success or one of the following error numbers:
40 |
41 | PCRE2_ERROR_NOSUBSTRING there are no groups of that name
42 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
43 | PCRE2_ERROR_UNSET the group did not participate in the match
44 | PCRE2_ERROR_NOMEMORY the buffer is not big enough
45 |
46 | If there is more than one group with the given name, the first one that is set
47 | is returned. In this situation PCRE2_ERROR_UNSET means that no group with the
48 | given name was set.
49 |
50 |
51 | There is a complete description of the PCRE2 native API in the
52 | pcre2api
53 | page and a description of the POSIX API in the
54 | pcre2posix
55 | page.
56 |
57 | Return to the PCRE2 index page.
58 |
59 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_copy_bynumber.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_copy_bynumber specification
4 |
5 |
6 | pcre2_substring_copy_bynumber man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_copy_bynumber(pcre2_match_data *match_data,
23 | uint32_t number, PCRE2_UCHAR *buffer,
24 | PCRE2_SIZE *bufflen);
25 |
26 |
27 | DESCRIPTION
28 |
29 |
30 | This is a convenience function for extracting a captured substring into a given
31 | buffer. The arguments are:
32 |
33 | match_data The match data block for the match
34 | number Number of the required substring
35 | buffer Buffer to receive the string
36 | bufflen Length of buffer
37 |
38 | The bufflen variable is updated with the length of the extracted string,
39 | excluding the terminating zero. The yield of the function is zero for success
40 | or one of the following error numbers:
41 |
42 | PCRE2_ERROR_NOSUBSTRING there are no groups of that number
43 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
44 | PCRE2_ERROR_UNSET the group did not participate in the match
45 | PCRE2_ERROR_NOMEMORY the buffer is too small
46 |
47 |
48 |
49 |
50 | There is a complete description of the PCRE2 native API in the
51 | pcre2api
52 | page and a description of the POSIX API in the
53 | pcre2posix
54 | page.
55 |
56 | Return to the PCRE2 index page.
57 |
58 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_free specification
4 |
5 |
6 | pcre2_substring_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_substring_free(PCRE2_UCHAR *buffer);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This is a convenience function for freeing the memory obtained by a previous
29 | call to pcre2_substring_get_byname() or
30 | pcre2_substring_get_bynumber(). Its only argument is a pointer to the
31 | string. If the argument is NULL, the function does nothing.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_get_bynumber.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_get_bynumber specification
4 |
5 |
6 | pcre2_substring_get_bynumber man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_get_bynumber(pcre2_match_data *match_data,
23 | uint32_t number, PCRE2_UCHAR **bufferptr, PCRE2_SIZE *bufflen);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This is a convenience function for extracting a captured substring by number
30 | into newly acquired memory. The arguments are:
31 |
32 | match_data The match data for the match
33 | number Number of the required substring
34 | bufferptr Where to put the string pointer
35 | bufflen Where to put the string length
36 |
37 | The memory in which the substring is placed is obtained by calling the same
38 | memory allocation function that was used for the match data block. The
39 | convenience function pcre2_substring_free() can be used to free it when
40 | it is no longer needed. The yield of the function is zero for success or one of
41 | the following error numbers:
42 |
43 | PCRE2_ERROR_NOSUBSTRING there are no groups of that number
44 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
45 | PCRE2_ERROR_UNSET the group did not participate in the match
46 | PCRE2_ERROR_NOMEMORY memory could not be obtained
47 |
48 |
49 |
50 |
51 | There is a complete description of the PCRE2 native API in the
52 | pcre2api
53 | page and a description of the POSIX API in the
54 | pcre2posix
55 | page.
56 |
57 | Return to the PCRE2 index page.
58 |
59 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_length_byname.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_length_byname specification
4 |
5 |
6 | pcre2_substring_length_byname man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_length_byname(pcre2_match_data *match_data,
23 | PCRE2_SPTR name, PCRE2_SIZE *length);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function returns the length of a matched substring, identified by name.
30 | The arguments are:
31 |
32 | match_data The match data block for the match
33 | name The substring name
34 | length Where to return the length
35 |
36 | The yield is zero on success, or an error code if the substring is not found.
37 |
38 |
39 | There is a complete description of the PCRE2 native API in the
40 | pcre2api
41 | page and a description of the POSIX API in the
42 | pcre2posix
43 | page.
44 |
45 | Return to the PCRE2 index page.
46 |
47 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_length_bynumber.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_length_bynumber specification
4 |
5 |
6 | pcre2_substring_length_bynumber man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_length_bynumber(pcre2_match_data *match_data,
23 | uint32_t number, PCRE2_SIZE *length);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This function returns the length of a matched substring, identified by number.
30 | The arguments are:
31 |
32 | match_data The match data block for the match
33 | number The substring number
34 | length Where to return the length, or NULL
35 |
36 | The third argument may be NULL if all you want to know is whether or not a
37 | substring is set. The yield is zero on success, or a negative error code
38 | otherwise. After a partial match, only substring 0 is available.
39 |
40 |
41 | There is a complete description of the PCRE2 native API in the
42 | pcre2api
43 | page and a description of the POSIX API in the
44 | pcre2posix
45 | page.
46 |
47 | Return to the PCRE2 index page.
48 |
49 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_list_free.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_list_free specification
4 |
5 |
6 | pcre2_substring_list_free man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | void pcre2_substring_list_free(PCRE2_SPTR *list);
23 |
24 |
25 | DESCRIPTION
26 |
27 |
28 | This is a convenience function for freeing the store obtained by a previous
29 | call to pcre2substring_list_get(). Its only argument is a pointer to
30 | the list of string pointers. If the argument is NULL, the function returns
31 | immediately, without doing anything.
32 |
33 |
34 | There is a complete description of the PCRE2 native API in the
35 | pcre2api
36 | page and a description of the POSIX API in the
37 | pcre2posix
38 | page.
39 |
40 | Return to the PCRE2 index page.
41 |
42 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_nametable_scan.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_nametable_scan specification
4 |
5 |
6 | pcre2_substring_nametable_scan man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_nametable_scan(const pcre2_code *code,
23 | PCRE2_SPTR name, PCRE2_SPTR *first, PCRE2_SPTR *last);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This convenience function finds, for a compiled pattern, the first and last
30 | entries for a given name in the table that translates capture group names into
31 | numbers.
32 |
33 | code Compiled regular expression
34 | name Name whose entries required
35 | first Where to return a pointer to the first entry
36 | last Where to return a pointer to the last entry
37 |
38 | When the name is found in the table, if first is NULL, the function
39 | returns a group number, but if there is more than one matching entry, it is not
40 | defined which one. Otherwise, when both pointers have been set, the yield of
41 | the function is the length of each entry in code units. If the name is not
42 | found, PCRE2_ERROR_NOSUBSTRING is returned.
43 |
44 |
45 | There is a complete description of the PCRE2 native API, including the format of
46 | the table entries, in the
47 | pcre2api
48 | page, and a description of the POSIX API in the
49 | pcre2posix
50 | page.
51 |
52 | Return to the PCRE2 index page.
53 |
54 |
--------------------------------------------------------------------------------
/pcre2/doc/html/pcre2_substring_number_from_name.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | pcre2_substring_number_from_name specification
4 |
5 |
6 | pcre2_substring_number_from_name man page
7 |
8 | Return to the PCRE2 index page.
9 |
10 |
11 | This page is part of the PCRE2 HTML documentation. It was generated
12 | automatically from the original man page. If there is any nonsense in it,
13 | please consult the man page, in case the conversion went wrong.
14 |
15 |
16 | SYNOPSIS
17 |
18 |
19 | #include <pcre2.h>
20 |
21 |
22 | int pcre2_substring_number_from_name(const pcre2_code *code,
23 | PCRE2_SPTR name);
24 |
25 |
26 | DESCRIPTION
27 |
28 |
29 | This convenience function finds the number of a named substring capturing
30 | parenthesis in a compiled pattern, provided that it is a unique name. The
31 | function arguments are:
32 |
33 | code Compiled regular expression
34 | name Name whose number is required
35 |
36 | The yield of the function is the number of the parenthesis if the name is
37 | found, or PCRE2_ERROR_NOSUBSTRING if it is not found. When duplicate names are
38 | allowed (PCRE2_DUPNAMES is set), if the name is not unique,
39 | PCRE2_ERROR_NOUNIQUESUBSTRING is returned. You can obtain the list of numbers
40 | with the same name by calling pcre2_substring_nametable_scan().
41 |
42 |
43 | There is a complete description of the PCRE2 native API in the
44 | pcre2api
45 | page and a description of the POSIX API in the
46 | pcre2posix
47 | page.
48 |
49 | Return to the PCRE2 index page.
50 |
51 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_callout_enumerate.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_COMPILE 3 "23 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_callout_enumerate(const pcre2_code *\fIcode\fP,
11 | .B " int (*\fIcallback\fP)(pcre2_callout_enumerate_block *, void *),"
12 | .B " void *\fIcallout_data\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This function scans a compiled regular expression and calls the \fIcallback()\fP
19 | function for each callout within the pattern. The yield of the function is zero
20 | for success and non-zero otherwise. The arguments are:
21 | .sp
22 | \fIcode\fP Points to the compiled pattern
23 | \fIcallback\fP The callback function
24 | \fIcallout_data\fP User data that is passed to the callback
25 | .sp
26 | The \fIcallback()\fP function is passed a pointer to a data block containing
27 | the following fields (not necessarily in this order):
28 | .sp
29 | uint32_t \fIversion\fP Block version number
30 | uint32_t \fIcallout_number\fP Number for numbered callouts
31 | PCRE2_SIZE \fIpattern_position\fP Offset to next item in pattern
32 | PCRE2_SIZE \fInext_item_length\fP Length of next item in pattern
33 | PCRE2_SIZE \fIcallout_string_offset\fP Offset to string within pattern
34 | PCRE2_SIZE \fIcallout_string_length\fP Length of callout string
35 | PCRE2_SPTR \fIcallout_string\fP Points to callout string or is NULL
36 | .sp
37 | The second argument passed to the \fBcallback()\fP function is the callout data
38 | that was passed to \fBpcre2_callout_enumerate()\fP. The \fBcallback()\fP
39 | function must return zero for success. Any other value causes the pattern scan
40 | to stop, with the value being passed back as the result of
41 | \fBpcre2_callout_enumerate()\fP.
42 | .P
43 | There is a complete description of the PCRE2 native API in the
44 | .\" HREF
45 | \fBpcre2api\fP
46 | .\"
47 | page and a description of the POSIX API in the
48 | .\" HREF
49 | \fBpcre2posix\fP
50 | .\"
51 | page.
52 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_code_copy.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CODE_COPY 3 "22 November 2016" "PCRE2 10.23"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_code *pcre2_code_copy(const pcre2_code *\fIcode\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function makes a copy of the memory used for a compiled pattern, excluding
17 | any memory used by the JIT compiler. Without a subsequent call to
18 | \fBpcre2_jit_compile()\fP, the copy can be used only for non-JIT matching. The
19 | pointer to the character tables is copied, not the tables themselves (see
20 | \fBpcre2_code_copy_with_tables()\fP). The yield of the function is NULL if
21 | \fIcode\fP is NULL or if sufficient memory cannot be obtained.
22 | .P
23 | There is a complete description of the PCRE2 native API in the
24 | .\" HREF
25 | \fBpcre2api\fP
26 | .\"
27 | page and a description of the POSIX API in the
28 | .\" HREF
29 | \fBpcre2posix\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_code_copy_with_tables.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CODE_COPY 3 "22 November 2016" "PCRE2 10.23"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_code *pcre2_code_copy_with_tables(const pcre2_code *\fIcode\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function makes a copy of the memory used for a compiled pattern, excluding
17 | any memory used by the JIT compiler. Without a subsequent call to
18 | \fBpcre2_jit_compile()\fP, the copy can be used only for non-JIT matching.
19 | Unlike \fBpcre2_code_copy()\fP, a separate copy of the character tables is also
20 | made, with the new code pointing to it. This memory will be automatically freed
21 | when \fBpcre2_code_free()\fP is called. The yield of the function is NULL if
22 | \fIcode\fP is NULL or if sufficient memory cannot be obtained.
23 | .P
24 | There is a complete description of the PCRE2 native API in the
25 | .\" HREF
26 | \fBpcre2api\fP
27 | .\"
28 | page and a description of the POSIX API in the
29 | .\" HREF
30 | \fBpcre2posix\fP
31 | .\"
32 | page.
33 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_code_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CODE_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_code_free(pcre2_code *\fIcode\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | If \fIcode\fP is NULL, this function does nothing. Otherwise, \fIcode\fP must
17 | point to a compiled pattern. This function frees its memory, including any
18 | memory used by the JIT compiler. If the compiled pattern was created by a call
19 | to \fBpcre2_code_copy_with_tables()\fP, the memory for the character tables is
20 | also freed.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_compile_context_copy.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_COMPILE_CONTEXT_COPY 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_compile_context *pcre2_compile_context_copy(
11 | .B " pcre2_compile_context *\fIccontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function makes a new copy of a compile context, using the memory
18 | allocation function that was used for the original context. The result is NULL
19 | if the memory cannot be obtained.
20 | .P
21 | There is a complete description of the PCRE2 native API in the
22 | .\" HREF
23 | \fBpcre2api\fP
24 | .\"
25 | page and a description of the POSIX API in the
26 | .\" HREF
27 | \fBpcre2posix\fP
28 | .\"
29 | page.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_compile_context_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_COMPILE_CONTEXT_CREATE 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_compile_context *pcre2_compile_context_create(
11 | .B " pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function creates and initializes a new compile context. If its argument is
18 | NULL, \fBmalloc()\fP is used to get the necessary memory; otherwise the memory
19 | allocation function within the general context is used. The result is NULL if
20 | the memory could not be obtained.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_compile_context_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_COMPILE_CONTEXT_FREE 3 "29 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_compile_context_free(pcre2_compile_context *\fIccontext\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function frees the memory occupied by a compile context, using the memory
17 | freeing function from the general context with which it was created, or
18 | \fBfree()\fP if that was not set. If the argument is NULL, the function returns
19 | immediately without doing anything.
20 | .P
21 | There is a complete description of the PCRE2 native API in the
22 | .\" HREF
23 | \fBpcre2api\fP
24 | .\"
25 | page and a description of the POSIX API in the
26 | .\" HREF
27 | \fBpcre2posix\fP
28 | .\"
29 | page.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_convert_context_copy.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CONVERT_CONTEXT_COPY 3 "10 July 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_convert_context *pcre2_convert_context_copy(
11 | .B " pcre2_convert_context *\fIcvcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is part of an experimental set of pattern conversion functions.
18 | It makes a new copy of a convert context, using the memory allocation function
19 | that was used for the original context. The result is NULL if the memory cannot
20 | be obtained.
21 | .P
22 | The pattern conversion functions are described in the
23 | .\" HREF
24 | \fBpcre2convert\fP
25 | .\"
26 | documentation.
27 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_convert_context_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CONVERT_CONTEXT_CREATE 3 "10 July 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_convert_context *pcre2_convert_context_create(
11 | .B " pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is part of an experimental set of pattern conversion functions.
18 | It creates and initializes a new convert context. If its argument is
19 | NULL, \fBmalloc()\fP is used to get the necessary memory; otherwise the memory
20 | allocation function within the general context is used. The result is NULL if
21 | the memory could not be obtained.
22 | .P
23 | The pattern conversion functions are described in the
24 | .\" HREF
25 | \fBpcre2convert\fP
26 | .\"
27 | documentation.
28 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_convert_context_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CONVERT_CONTEXT_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_convert_context_free(pcre2_convert_context *\fIcvcontext\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function is part of an experimental set of pattern conversion functions.
17 | It frees the memory occupied by a convert context, using the memory
18 | freeing function from the general context with which it was created, or
19 | \fBfree()\fP if that was not set. If the argument is NULL, the function returns
20 | immediately without doing anything.
21 | .P
22 | The pattern conversion functions are described in the
23 | .\" HREF
24 | \fBpcre2convert\fP
25 | .\"
26 | documentation.
27 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_converted_pattern_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_CONVERTED_PATTERN_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_converted_pattern_free(PCRE2_UCHAR *\fIconverted_pattern\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function is part of an experimental set of pattern conversion functions.
17 | It frees the memory occupied by a converted pattern that was obtained by
18 | calling \fBpcre2_pattern_convert()\fP with arguments that caused it to place
19 | the converted pattern into newly obtained heap memory. If the argument is NULL,
20 | the function returns immediately without doing anything.
21 | .P
22 | The pattern conversion functions are described in the
23 | .\" HREF
24 | \fBpcre2convert\fP
25 | .\"
26 | documentation.
27 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_general_context_copy.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GENERAL_CONTEXT_COPY 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_general_context *pcre2_general_context_copy(
11 | .B " pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function makes a new copy of a general context, using the memory
18 | allocation functions in the context, if set, to get the necessary memory.
19 | Otherwise \fBmalloc()\fP is used. The result is NULL if the memory cannot be
20 | obtained.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_general_context_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GENERAL_CONTEXT_CREATE 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_general_context *pcre2_general_context_create(
11 | .B " void *(*\fIprivate_malloc\fP)(PCRE2_SIZE, void *),"
12 | .B " void (*\fIprivate_free\fP)(void *, void *), void *\fImemory_data\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This function creates and initializes a general context. The arguments define
19 | custom memory management functions and a data value that is passed to them when
20 | they are called. The \fBprivate_malloc()\fP function is used to get memory for
21 | the context. If either of the first two arguments is NULL, the system memory
22 | management function is used. The result is NULL if no memory could be obtained.
23 | .P
24 | There is a complete description of the PCRE2 native API in the
25 | .\" HREF
26 | \fBpcre2api\fP
27 | .\"
28 | page and a description of the POSIX API in the
29 | .\" HREF
30 | \fBpcre2posix\fP
31 | .\"
32 | page.
33 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_general_context_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GENERAL_CONTEXT_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_general_context_free(pcre2_general_context *\fIgcontext\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function frees the memory occupied by a general context, using the memory
17 | freeing function within the context, if set. If the argument is NULL, the
18 | function returns immediately without doing anything.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_error_message.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_ERROR_MESSAGE 3 "24 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_get_error_message(int \fIerrorcode\fP, PCRE2_UCHAR *\fIbuffer\fP,
11 | .B " PCRE2_SIZE \fIbufflen\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function provides a textual error message for each PCRE2 error code.
18 | Compilation errors are positive numbers; UTF formatting errors and matching
19 | errors are negative numbers. The arguments are:
20 | .sp
21 | \fIerrorcode\fP an error code (positive or negative)
22 | \fIbuffer\fP where to put the message
23 | \fIbufflen\fP the length of the buffer (code units)
24 | .sp
25 | The function returns the length of the message in code units, excluding the
26 | trailing zero, or the negative error code PCRE2_ERROR_NOMEMORY if the buffer is
27 | too small. In this case, the returned message is truncated (but still with a
28 | trailing zero). If \fIerrorcode\fP does not contain a recognized error code
29 | number, the negative value PCRE2_ERROR_BADDATA is returned.
30 | .P
31 | There is a complete description of the PCRE2 native API in the
32 | .\" HREF
33 | \fBpcre2api\fP
34 | .\"
35 | page and a description of the POSIX API in the
36 | .\" HREF
37 | \fBpcre2posix\fP
38 | .\"
39 | page.
40 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_mark.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_MARK 3 "13 October 2017" "PCRE2 10.31"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B PCRE2_SPTR pcre2_get_mark(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | After a call of \fBpcre2_match()\fP that was passed the match block that is
17 | this function's argument, this function returns a pointer to the last (*MARK),
18 | (*PRUNE), or (*THEN) name that was encountered during the matching process. The
19 | name is zero-terminated, and is within the compiled pattern. The length of the
20 | name is in the preceding code unit. If no name is available, NULL is returned.
21 | .P
22 | After a successful match, the name that is returned is the last one on the
23 | matching path. After a failed match or a partial match, the last encountered
24 | name is returned.
25 | .P
26 | There is a complete description of the PCRE2 native API in the
27 | .\" HREF
28 | \fBpcre2api\fP
29 | .\"
30 | page and a description of the POSIX API in the
31 | .\" HREF
32 | \fBpcre2posix\fP
33 | .\"
34 | page.
35 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_match_data_size.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_MATCH_DATA_SIZE 3 "16 July 2019" "PCRE2 10.34"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B PCRE2_SIZE pcre2_get_match_data_size(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function returns the size, in bytes, of the match data block that is its
17 | argument.
18 | .P
19 | There is a complete description of the PCRE2 native API in the
20 | .\" HREF
21 | \fBpcre2api\fP
22 | .\"
23 | page and a description of the POSIX API in the
24 | .\" HREF
25 | \fBpcre2posix\fP
26 | .\"
27 | page.
28 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_ovector_count.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_OVECTOR_COUNT 3 "24 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B uint32_t pcre2_get_ovector_count(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function returns the number of pairs of offsets in the ovector that forms
17 | part of the given match data block.
18 | .P
19 | There is a complete description of the PCRE2 native API in the
20 | .\" HREF
21 | \fBpcre2api\fP
22 | .\"
23 | page and a description of the POSIX API in the
24 | .\" HREF
25 | \fBpcre2posix\fP
26 | .\"
27 | page.
28 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_ovector_pointer.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_OVECTOR_POINTER 3 "24 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B PCRE2_SIZE *pcre2_get_ovector_pointer(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function returns a pointer to the vector of offsets that forms part of the
17 | given match data block. The number of pairs can be found by calling
18 | \fBpcre2_get_ovector_count()\fP.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_get_startchar.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_GET_STARTCHAR 3 "24 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B PCRE2_SIZE pcre2_get_startchar(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | After a successful call of \fBpcre2_match()\fP that was passed the match block
17 | that is this function's argument, this function returns the code unit offset of
18 | the character at which the successful match started. For a non-partial match,
19 | this can be different to the value of \fIovector[0]\fP if the pattern contains
20 | the \eK escape sequence. After a partial match, however, this value is always
21 | the same as \fIovector[0]\fP because \eK does not affect the result of a
22 | partial match.
23 | .P
24 | There is a complete description of the PCRE2 native API in the
25 | .\" HREF
26 | \fBpcre2api\fP
27 | .\"
28 | page and a description of the POSIX API in the
29 | .\" HREF
30 | \fBpcre2posix\fP
31 | .\"
32 | page.
33 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_compile.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_COMPILE 3 "29 July 2019" "PCRE2 10.34"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_jit_compile(pcre2_code *\fIcode\fP, uint32_t \fIoptions\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function requests JIT compilation, which, if the just-in-time compiler is
17 | available, further processes a compiled pattern into machine code that executes
18 | much faster than the \fBpcre2_match()\fP interpretive matching function. Full
19 | details are given in the
20 | .\" HREF
21 | \fBpcre2jit\fP
22 | .\"
23 | documentation.
24 | .P
25 | The first argument is a pointer that was returned by a successful call to
26 | \fBpcre2_compile()\fP, and the second must contain one or more of the following
27 | bits:
28 | .sp
29 | PCRE2_JIT_COMPLETE compile code for full matching
30 | PCRE2_JIT_PARTIAL_SOFT compile code for soft partial matching
31 | PCRE2_JIT_PARTIAL_HARD compile code for hard partial matching
32 | .sp
33 | There is also an obsolete option called PCRE2_JIT_INVALID_UTF, which has been
34 | superseded by the \fBpcre2_compile()\fP option PCRE2_MATCH_INVALID_UTF. The old
35 | option is deprecated and may be removed in the future.
36 | .P
37 | The yield of the function is 0 for success, or a negative error code otherwise.
38 | In particular, PCRE2_ERROR_JIT_BADOPTION is returned if JIT is not supported or
39 | if an unknown bit is set in \fIoptions\fP. The function can also return
40 | PCRE2_ERROR_NOMEMORY if JIT is unable to allocate executable memory for the
41 | compiler, even if it was because of a system security restriction.
42 | .P
43 | There is a complete description of the PCRE2 native API in the
44 | .\" HREF
45 | \fBpcre2api\fP
46 | .\"
47 | page and a description of the POSIX API in the
48 | .\" HREF
49 | \fBpcre2posix\fP
50 | .\"
51 | page.
52 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_free_unused_memory.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_FREE_UNUSED_MEMORY 3 "27 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_jit_free_unused_memory(pcre2_general_context *\fIgcontext\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function frees unused JIT executable memory. The argument is a general
17 | context, for custom memory management, or NULL for standard memory management.
18 | JIT memory allocation retains some memory in order to improve future JIT
19 | compilation speed. In low memory conditions,
20 | \fBpcre2_jit_free_unused_memory()\fB can be used to cause this memory to be
21 | freed.
22 | .P
23 | There is a complete description of the PCRE2 native API in the
24 | .\" HREF
25 | \fBpcre2api\fP
26 | .\"
27 | page and a description of the POSIX API in the
28 | .\" HREF
29 | \fBpcre2posix\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_match.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_MATCH 3 "03 November 2014" "PCRE2 10.0"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_jit_match(const pcre2_code *\fIcode\fP, PCRE2_SPTR \fIsubject\fP,
11 | .B " PCRE2_SIZE \fIlength\fP, PCRE2_SIZE \fIstartoffset\fP,"
12 | .B " uint32_t \fIoptions\fP, pcre2_match_data *\fImatch_data\fP,"
13 | .B " pcre2_match_context *\fImcontext\fP);"
14 | .fi
15 | .
16 | .SH DESCRIPTION
17 | .rs
18 | .sp
19 | This function matches a compiled regular expression that has been successfully
20 | processed by the JIT compiler against a given subject string, using a matching
21 | algorithm that is similar to Perl's. It is a "fast path" interface to JIT, and
22 | it bypasses some of the sanity checks that \fBpcre2_match()\fP applies.
23 | Its arguments are exactly the same as for
24 | .\" HREF
25 | \fBpcre2_match()\fP.
26 | .\"
27 | .P
28 | The supported options are PCRE2_NOTBOL, PCRE2_NOTEOL, PCRE2_NOTEMPTY,
29 | PCRE2_NOTEMPTY_ATSTART, PCRE2_PARTIAL_HARD, and PCRE2_PARTIAL_SOFT. Unsupported
30 | options are ignored. The subject string is not checked for UTF validity.
31 | .P
32 | The return values are the same as for \fBpcre2_match()\fP plus
33 | PCRE2_ERROR_JIT_BADOPTION if a matching mode (partial or complete) is requested
34 | that was not compiled. For details of partial matching, see the
35 | .\" HREF
36 | \fBpcre2partial\fP
37 | .\"
38 | page.
39 | .P
40 | There is a complete description of the PCRE2 native API in the
41 | .\" HREF
42 | \fBpcre2api\fP
43 | .\"
44 | page and a description of the JIT API in the
45 | .\" HREF
46 | \fBpcre2jit\fP
47 | .\"
48 | page.
49 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_stack_assign.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_STACK_ASSIGN 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_jit_stack_assign(pcre2_match_context *\fImcontext\fP,
11 | .B " pcre2_jit_callback \fIcallback_function\fP, void *\fIcallback_data\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function provides control over the memory used by JIT as a run-time stack
18 | when \fBpcre2_match()\fP or \fBpcre2_jit_match()\fP is called with a pattern
19 | that has been successfully processed by the JIT compiler. The information that
20 | determines which stack is used is put into a match context that is subsequently
21 | passed to a matching function. The arguments of this function are:
22 | .sp
23 | mcontext a pointer to a match context
24 | callback a callback function
25 | callback_data a JIT stack or a value to be passed to the callback
26 | .P
27 | If \fImcontext\fP is NULL, the function returns immediately, without doing
28 | anything.
29 | .P
30 | If \fIcallback\fP is NULL and \fIcallback_data\fP is NULL, an internal 32KiB
31 | block on the machine stack is used.
32 | .P
33 | If \fIcallback\fP is NULL and \fIcallback_data\fP is not NULL,
34 | \fIcallback_data\fP must be a valid JIT stack, the result of calling
35 | \fBpcre2_jit_stack_create()\fP.
36 | .P
37 | If \fIcallback\fP not NULL, it is called with \fIcallback_data\fP as an
38 | argument at the start of matching, in order to set up a JIT stack. If the
39 | result is NULL, the internal 32KiB stack is used; otherwise the return value
40 | must be a valid JIT stack, the result of calling
41 | \fBpcre2_jit_stack_create()\fP.
42 | .P
43 | You may safely use the same JIT stack for multiple patterns, as long as they
44 | are all matched in the same thread. In a multithread application, each thread
45 | must use its own JIT stack. For more details, see the
46 | .\" HREF
47 | \fBpcre2jit\fP
48 | .\"
49 | page.
50 | .P
51 | There is a complete description of the PCRE2 native API in the
52 | .\" HREF
53 | \fBpcre2api\fP
54 | .\"
55 | page and a description of the POSIX API in the
56 | .\" HREF
57 | \fBpcre2posix\fP
58 | .\"
59 | page.
60 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_stack_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_STACK_CREATE 3 "24 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_jit_stack *pcre2_jit_stack_create(PCRE2_SIZE \fIstartsize\fP,
11 | .B " PCRE2_SIZE \fImaxsize\fP, pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is used to create a stack for use by the code compiled by the JIT
18 | compiler. The first two arguments are a starting size for the stack, and a
19 | maximum size to which it is allowed to grow. The final argument is a general
20 | context, for memory allocation functions, or NULL for standard memory
21 | allocation. The result can be passed to the JIT run-time code by calling
22 | \fBpcre2_jit_stack_assign()\fP to associate the stack with a compiled pattern,
23 | which can then be processed by \fBpcre2_match()\fP or \fBpcre2_jit_match()\fP.
24 | A maximum stack size of 512KiB to 1MiB should be more than enough for any
25 | pattern. For more details, see the
26 | .\" HREF
27 | \fBpcre2jit\fP
28 | .\"
29 | page.
30 | .P
31 | There is a complete description of the PCRE2 native API in the
32 | .\" HREF
33 | \fBpcre2api\fP
34 | .\"
35 | page and a description of the POSIX API in the
36 | .\" HREF
37 | \fBpcre2posix\fP
38 | .\"
39 | page.
40 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_jit_stack_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_JIT_STACK_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .SM
10 | .B void pcre2_jit_stack_free(pcre2_jit_stack *\fIjit_stack\fP);
11 | .
12 | .SH DESCRIPTION
13 | .rs
14 | .sp
15 | This function is used to free a JIT stack that was created by
16 | \fBpcre2_jit_stack_create()\fP when it is no longer needed. If the argument is
17 | NULL, the function returns immediately without doing anything. For more
18 | details, see the
19 | .\" HREF
20 | \fBpcre2jit\fP
21 | .\"
22 | page.
23 | .P
24 | There is a complete description of the PCRE2 native API in the
25 | .\" HREF
26 | \fBpcre2api\fP
27 | .\"
28 | page and a description of the POSIX API in the
29 | .\" HREF
30 | \fBpcre2posix\fP
31 | .\"
32 | page.
33 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_maketables.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MAKETABLES 3 "17 April 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .SM
10 | .B const uint8_t *pcre2_maketables(pcre2_general_context *\fIgcontext\fP);
11 | .
12 | .SH DESCRIPTION
13 | .rs
14 | .sp
15 | This function builds a set of character tables for character code points that
16 | are less than 256. These can be passed to \fBpcre2_compile()\fP in a compile
17 | context in order to override the internal, built-in tables (which were either
18 | defaulted or made by \fBpcre2_maketables()\fP when PCRE2 was compiled). See the
19 | .\" HREF
20 | \fBpcre2_set_character_tables()\fP
21 | .\"
22 | page. You might want to do this if you are using a non-standard locale.
23 | .P
24 | If the argument is NULL, \fBmalloc()\fP is used to get memory for the tables.
25 | Otherwise it must point to a general context, which can supply pointers to a
26 | custom memory manager. The function yields a pointer to the tables.
27 | .P
28 | There is a complete description of the PCRE2 native API in the
29 | .\" HREF
30 | \fBpcre2api\fP
31 | .\"
32 | page and a description of the POSIX API in the
33 | .\" HREF
34 | \fBpcre2posix\fP
35 | .\"
36 | page.
37 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_maketables_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MAKETABLES_FREE 3 "02 September 2019" "PCRE2 10.34"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_maketables_free(pcre2_general_context *\fIgcontext\fP,
11 | .B " const uint8_t *\fItables\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function discards a set of character tables that were created by a call
18 | to
19 | .\" HREF
20 | \fBpcre2_maketables()\fP.
21 | .\"
22 | .P
23 | The \fIgcontext\fP parameter should match what was used in that call to
24 | account for any custom allocators that might be in use; if it is NULL
25 | the system \fBfree()\fP is used.
26 | .P
27 | There is a complete description of the PCRE2 native API in the
28 | .\" HREF
29 | \fBpcre2api\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_context_copy.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_CONTEXT_COPY 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_match_context *pcre2_match_context_copy(
11 | .B " pcre2_match_context *\fImcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function makes a new copy of a match context, using the memory
18 | allocation function that was used for the original context. The result is NULL
19 | if the memory cannot be obtained.
20 | .P
21 | There is a complete description of the PCRE2 native API in the
22 | .\" HREF
23 | \fBpcre2api\fP
24 | .\"
25 | page and a description of the POSIX API in the
26 | .\" HREF
27 | \fBpcre2posix\fP
28 | .\"
29 | page.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_context_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_CONTEXT_CREATE 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_match_context *pcre2_match_context_create(
11 | .B " pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function creates and initializes a new match context. If its argument is
18 | NULL, \fBmalloc()\fP is used to get the necessary memory; otherwise the memory
19 | allocation function within the general context is used. The result is NULL if
20 | the memory could not be obtained.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_context_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_CONTEXT_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_match_context_free(pcre2_match_context *\fImcontext\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function frees the memory occupied by a match context, using the memory
17 | freeing function from the general context with which it was created, or
18 | \fBfree()\fP if that was not set. If the argument is NULL, the function returns
19 | immediately without doing anything.
20 | .P
21 | There is a complete description of the PCRE2 native API in the
22 | .\" HREF
23 | \fBpcre2api\fP
24 | .\"
25 | page and a description of the POSIX API in the
26 | .\" HREF
27 | \fBpcre2posix\fP
28 | .\"
29 | page.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_data_create.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_DATA_CREATE 3 "29 July 2015" "PCRE2 10.21"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_match_data *pcre2_match_data_create(uint32_t \fIovecsize\fP,
11 | .B " pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function creates a new match data block, which is used for holding the
18 | result of a match. The first argument specifies the number of pairs of offsets
19 | that are required. These form the "output vector" (ovector) within the match
20 | data block, and are used to identify the matched string and any captured
21 | substrings. There is always one pair of offsets; if \fBovecsize\fP is zero, it
22 | is treated as one.
23 | .P
24 | The second argument points to a general context, for custom memory management,
25 | or is NULL for system memory management. The result of the function is NULL if
26 | the memory for the block could not be obtained.
27 | .P
28 | There is a complete description of the PCRE2 native API in the
29 | .\" HREF
30 | \fBpcre2api\fP
31 | .\"
32 | page and a description of the POSIX API in the
33 | .\" HREF
34 | \fBpcre2posix\fP
35 | .\"
36 | page.
37 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_data_create_from_pattern.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_DATA_CREATE_FROM_PATTERN 3 "29 July 2015" "PCRE2 10.21"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B pcre2_match_data *pcre2_match_data_create_from_pattern(
11 | .B " const pcre2_code *\fIcode\fP, pcre2_general_context *\fIgcontext\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function creates a new match data block, which is used for holding the
18 | result of a match. The first argument points to a compiled pattern. The number
19 | of capturing parentheses within the pattern is used to compute the number of
20 | pairs of offsets that are required in the match data block. These form the
21 | "output vector" (ovector) within the match data block, and are used to identify
22 | the matched string and any captured substrings.
23 | .P
24 | The second argument points to a general context, for custom memory management,
25 | or is NULL to use the same memory allocator as was used for the compiled
26 | pattern. The result of the function is NULL if the memory for the block could
27 | not be obtained.
28 | .P
29 | There is a complete description of the PCRE2 native API in the
30 | .\" HREF
31 | \fBpcre2api\fP
32 | .\"
33 | page and a description of the POSIX API in the
34 | .\" HREF
35 | \fBpcre2posix\fP
36 | .\"
37 | page.
38 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_match_data_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_MATCH_DATA_FREE 3 "16 October 2018" "PCRE2 10.33"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_match_data_free(pcre2_match_data *\fImatch_data\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | If \fImatch_data\fP is NULL, this function does nothing. Otherwise,
17 | \fImatch_data\fP must point to a match data block, which this function frees,
18 | using the memory freeing function from the general context or compiled pattern
19 | with which it was created, or \fBfree()\fP if that was not set.
20 | .P
21 | If the PCRE2_COPY_MATCHED_SUBJECT was used for a successful match using this
22 | match data block, the copy of the subject that was remembered with the block is
23 | also freed.
24 | .P
25 | There is a complete description of the PCRE2 native API in the
26 | .\" HREF
27 | \fBpcre2api\fP
28 | .\"
29 | page and a description of the POSIX API in the
30 | .\" HREF
31 | \fBpcre2posix\fP
32 | .\"
33 | page.
34 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_serialize_decode.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SERIALIZE_DECODE 3 "27 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int32_t pcre2_serialize_decode(pcre2_code **\fIcodes\fP,
11 | .B " int32_t \fInumber_of_codes\fP, const uint8_t *\fIbytes\fP,"
12 | .B " pcre2_general_context *\fIgcontext\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This function decodes a serialized set of compiled patterns back into a list of
19 | individual patterns. This is possible only on a host that is running the same
20 | version of PCRE2, with the same code unit width, and the host must also have
21 | the same endianness, pointer width and PCRE2_SIZE type. The arguments for
22 | \fBpcre2_serialize_decode()\fP are:
23 | .sp
24 | \fIcodes\fP pointer to a vector in which to build the list
25 | \fInumber_of_codes\fP number of slots in the vector
26 | \fIbytes\fP the serialized byte stream
27 | \fIgcontext\fP pointer to a general context or NULL
28 | .sp
29 | The \fIbytes\fP argument must point to a block of data that was originally
30 | created by \fBpcre2_serialize_encode()\fP, though it may have been saved on
31 | disc or elsewhere in the meantime. If there are more codes in the serialized
32 | data than slots in the list, only those compiled patterns that will fit are
33 | decoded. The yield of the function is the number of decoded patterns, or one of
34 | the following negative error codes:
35 | .sp
36 | PCRE2_ERROR_BADDATA \fInumber_of_codes\fP is zero or less
37 | PCRE2_ERROR_BADMAGIC mismatch of id bytes in \fIbytes\fP
38 | PCRE2_ERROR_BADMODE mismatch of variable unit size or PCRE version
39 | PCRE2_ERROR_MEMORY memory allocation failed
40 | PCRE2_ERROR_NULL \fIcodes\fP or \fIbytes\fP is NULL
41 | .sp
42 | PCRE2_ERROR_BADMAGIC may mean that the data is corrupt, or that it was compiled
43 | on a system with different endianness.
44 | .P
45 | There is a complete description of the PCRE2 native API in the
46 | .\" HREF
47 | \fBpcre2api\fP
48 | .\"
49 | page and a description of the serialization functions in the
50 | .\" HREF
51 | \fBpcre2serialize\fP
52 | .\"
53 | page.
54 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_serialize_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SERIALIZE_FREE 3 "27 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B void pcre2_serialize_free(uint8_t *\fIbytes\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | This function frees the memory that was obtained by
17 | \fBpcre2_serialize_encode()\fP to hold a serialized byte stream. The argument
18 | must point to such a byte stream or be NULL, in which case the function returns
19 | without doing anything.
20 | .P
21 | There is a complete description of the PCRE2 native API in the
22 | .\" HREF
23 | \fBpcre2api\fP
24 | .\"
25 | page and a description of the serialization functions in the
26 | .\" HREF
27 | \fBpcre2serialize\fP
28 | .\"
29 | page.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_serialize_get_number_of_codes.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SERIALIZE_GET_NUMBER_OF_CODES 3 "27 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int32_t pcre2_serialize_get_number_of_codes(const uint8_t *\fIbytes\fP);
11 | .fi
12 | .
13 | .SH DESCRIPTION
14 | .rs
15 | .sp
16 | The \fIbytes\fP argument must point to a serialized byte stream that was
17 | originally created by \fBpcre2_serialize_encode()\fP (though it may have been
18 | saved on disc or elsewhere in the meantime). The function returns the number of
19 | serialized patterns in the byte stream, or one of the following negative error
20 | codes:
21 | .sp
22 | PCRE2_ERROR_BADMAGIC mismatch of id bytes in \fIbytes\fP
23 | PCRE2_ERROR_BADMODE mismatch of variable unit size or PCRE version
24 | PCRE2_ERROR_NULL the argument is NULL
25 | .sp
26 | PCRE2_ERROR_BADMAGIC may mean that the data is corrupt, or that it was compiled
27 | on a system with different endianness.
28 | .P
29 | There is a complete description of the PCRE2 native API in the
30 | .\" HREF
31 | \fBpcre2api\fP
32 | .\"
33 | page and a description of the serialization functions in the
34 | .\" HREF
35 | \fBpcre2serialize\fP
36 | .\"
37 | page.
38 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_bsr.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_BSR 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_bsr(pcre2_compile_context *\fIccontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the convention for processing \eR within a compile context.
18 | The second argument must be one of PCRE2_BSR_ANYCRLF or PCRE2_BSR_UNICODE. The
19 | result is zero for success or PCRE2_ERROR_BADDATA if the second argument is
20 | invalid.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_callout.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_CALLOUT 3 "21 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_callout(pcre2_match_context *\fImcontext\fP,
11 | .B " int (*\fIcallout_function\fP)(pcre2_callout_block *),"
12 | .B " void *\fIcallout_data\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This function sets the callout fields in a match context (the first argument).
19 | The second argument specifies a callout function, and the third argument is an
20 | opaque data item that is passed to it. The result of this function is always
21 | zero.
22 | .P
23 | There is a complete description of the PCRE2 native API in the
24 | .\" HREF
25 | \fBpcre2api\fP
26 | .\"
27 | page and a description of the POSIX API in the
28 | .\" HREF
29 | \fBpcre2posix\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_character_tables.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_CHARACTER_TABLES 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_character_tables(pcre2_compile_context *\fIccontext\fP,
11 | .B " const uint8_t *\fItables\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets a pointer to custom character tables within a compile
18 | context. The second argument must be the result of a call to
19 | \fBpcre2_maketables()\fP or NULL to request the default tables. The result is
20 | always zero.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_compile_extra_options.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_COMPILE_EXTRA_OPTIONS 3 "11 February 2019" "PCRE2 10.33"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_compile_extra_options(pcre2_compile_context *\fIccontext\fP,
11 | .B " uint32_t \fIextra_options\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets additional option bits for \fBpcre2_compile()\fP that are
18 | housed in a compile context. It completely replaces all the bits. The extra
19 | options are:
20 | .sp
21 | .\" JOIN
22 | PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES Allow \ex{df800} to \ex{dfff}
23 | in UTF-8 and UTF-32 modes
24 | .\" JOIN
25 | PCRE2_EXTRA_ALT_BSUX Extended alternate \eu, \eU, and \ex
26 | handling
27 | .\" JOIN
28 | PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL Treat all invalid escapes as
29 | a literal following character
30 | PCRE2_EXTRA_ESCAPED_CR_IS_LF Interpret \er as \en
31 | PCRE2_EXTRA_MATCH_LINE Pattern matches whole lines
32 | PCRE2_EXTRA_MATCH_WORD Pattern matches "words"
33 | .sp
34 | There is a complete description of the PCRE2 native API in the
35 | .\" HREF
36 | \fBpcre2api\fP
37 | .\"
38 | page and a description of the POSIX API in the
39 | .\" HREF
40 | \fBpcre2posix\fP
41 | .\"
42 | page.
43 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_compile_recursion_guard.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_COMPILE_RECURSION_GUARD 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_compile_recursion_guard(pcre2_compile_context *\fIccontext\fP,
11 | .B " int (*\fIguard_function\fP)(uint32_t, void *), void *\fIuser_data\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function defines, within a compile context, a function that is called
18 | whenever \fBpcre2_compile()\fP starts to compile a parenthesized part of a
19 | pattern. The first argument to the function gives the current depth of
20 | parenthesis nesting, and the second is user data that is supplied when the
21 | function is set up. The callout function should return zero if all is well, or
22 | non-zero to force an error. This feature is provided so that applications can
23 | check the available system stack space, in order to avoid running out. The
24 | result of \fBpcre2_set_compile_recursion_guard()\fP is always zero.
25 | .P
26 | There is a complete description of the PCRE2 native API in the
27 | .\" HREF
28 | \fBpcre2api\fP
29 | .\"
30 | page and a description of the POSIX API in the
31 | .\" HREF
32 | \fBpcre2posix\fP
33 | .\"
34 | page.
35 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_depth_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_DEPTH_LIMIT 3 "25 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_depth_limit(pcre2_match_context *\fImcontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the backtracking depth limit field in a match context. The
18 | result is always zero.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_glob_escape.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_GLOB_ESCAPE 3 "11 July 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_glob_escape(pcre2_convert_context *\fIcvcontext\fP,
11 | .B " uint32_t \fIescape_char\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is part of an experimental set of pattern conversion functions.
18 | It sets the escape character that is used when converting globs. The second
19 | argument must either be zero (meaning there is no escape character) or a
20 | punctuation character whose code point is less than 256. The default is grave
21 | accent if running under Windows, otherwise backslash. The result of the
22 | function is zero for success or PCRE2_ERROR_BADDATA if the second argument is
23 | invalid.
24 | .P
25 | The pattern conversion functions are described in the
26 | .\" HREF
27 | \fBpcre2convert\fP
28 | .\"
29 | documentation.
30 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_glob_separator.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_GLOB_SEPARATOR 3 "11 July 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_glob_separator(pcre2_convert_context *\fIcvcontext\fP,
11 | .B " uint32_t \fIseparator_char\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is part of an experimental set of pattern conversion functions.
18 | It sets the component separator character that is used when converting globs.
19 | The second argument must be one of the characters forward slash, backslash, or
20 | dot. The default is backslash when running under Windows, otherwise forward
21 | slash. The result of the function is zero for success or PCRE2_ERROR_BADDATA if
22 | the second argument is invalid.
23 | .P
24 | The pattern conversion functions are described in the
25 | .\" HREF
26 | \fBpcre2convert\fP
27 | .\"
28 | documentation.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_heap_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_HEAP_LIMIT 3 "11 April 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_heap_limit(pcre2_match_context *\fImcontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the backtracking heap limit field in a match context. The
18 | result is always zero.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_match_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_MATCH_LIMIT 3 "24 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_match_limit(pcre2_match_context *\fImcontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the match limit field in a match context. The result is
18 | always zero.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_max_pattern_length.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_MAX_PATTERN_LENGTH 3 "05 October 2016" "PCRE2 10.23"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_max_pattern_length(pcre2_compile_context *\fIccontext\fP,
11 | .B " PCRE2_SIZE \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets, in a compile context, the maximum text length (in code
18 | units) of the pattern that can be compiled. The result is always zero. If a
19 | longer pattern is passed to \fBpcre2_compile()\fP there is an immediate error
20 | return. The default is effectively unlimited, being the largest value a
21 | PCRE2_SIZE variable can hold.
22 | .P
23 | There is a complete description of the PCRE2 native API in the
24 | .\" HREF
25 | \fBpcre2api\fP
26 | .\"
27 | page and a description of the POSIX API in the
28 | .\" HREF
29 | \fBpcre2posix\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_newline.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_NEWLINE 3 "26 May 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_newline(pcre2_compile_context *\fIccontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the newline convention within a compile context. This
18 | specifies which character(s) are recognized as newlines when compiling and
19 | matching patterns. The second argument must be one of:
20 | .sp
21 | PCRE2_NEWLINE_CR Carriage return only
22 | PCRE2_NEWLINE_LF Linefeed only
23 | PCRE2_NEWLINE_CRLF CR followed by LF only
24 | PCRE2_NEWLINE_ANYCRLF Any of the above
25 | PCRE2_NEWLINE_ANY Any Unicode newline sequence
26 | PCRE2_NEWLINE_NUL The NUL character (binary zero)
27 | .sp
28 | The result is zero for success or PCRE2_ERROR_BADDATA if the second argument is
29 | invalid.
30 | .P
31 | There is a complete description of the PCRE2 native API in the
32 | .\" HREF
33 | \fBpcre2api\fP
34 | .\"
35 | page and a description of the POSIX API in the
36 | .\" HREF
37 | \fBpcre2posix\fP
38 | .\"
39 | page.
40 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_offset_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_OFFSET_LIMIT 3 "22 September 2015" "PCRE2 10.21"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_offset_limit(pcre2_match_context *\fImcontext\fP,
11 | .B " PCRE2_SIZE \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets the offset limit field in a match context. The result is
18 | always zero.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_parens_nest_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_PARENS_NEST_LIMIT 3 "22 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_parens_nest_limit(pcre2_compile_context *\fIccontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function sets, in a compile context, the maximum depth of nested
18 | parentheses in a pattern. The result is always zero.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_recursion_limit.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_RECURSION_LIMIT 3 "25 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_recursion_limit(pcre2_match_context *\fImcontext\fP,
11 | .B " uint32_t \fIvalue\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function is obsolete and should not be used in new code. Use
18 | \fBpcre2_set_depth_limit()\fP instead.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_recursion_memory_management.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_RECURSION_MEMORY_MANAGEMENT 3 "25 March 2017" "PCRE2 10.30"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_recursion_memory_management(
11 | .B " pcre2_match_context *\fImcontext\fP,"
12 | .B " void *(*\fIprivate_malloc\fP)(PCRE2_SIZE, void *),"
13 | .B " void (*\fIprivate_free\fP)(void *, void *), void *\fImemory_data\fP);"
14 | .fi
15 | .
16 | .SH DESCRIPTION
17 | .rs
18 | .sp
19 | From release 10.30 onwards, this function is obsolete and does nothing. The
20 | result is always zero.
21 | .P
22 | There is a complete description of the PCRE2 native API in the
23 | .\" HREF
24 | \fBpcre2api\fP
25 | .\"
26 | page and a description of the POSIX API in the
27 | .\" HREF
28 | \fBpcre2posix\fP
29 | .\"
30 | page.
31 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_set_substitute_callout.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SET_SUBSTITUTE_CALLOUT 3 "12 November 2018" "PCRE2 10.33"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_set_substitute_callout(pcre2_match_context *\fImcontext\fP,
11 | .B " int (*\fIcallout_function\fP)(pcre2_substitute_callout_block *),"
12 | .B " void *\fIcallout_data\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This function sets the substitute callout fields in a match context (the first
19 | argument). The second argument specifies a callout function, and the third
20 | argument is an opaque data item that is passed to it. The result of this
21 | function is always zero.
22 | .P
23 | There is a complete description of the PCRE2 native API in the
24 | .\" HREF
25 | \fBpcre2api\fP
26 | .\"
27 | page and a description of the POSIX API in the
28 | .\" HREF
29 | \fBpcre2posix\fP
30 | .\"
31 | page.
32 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_copy_byname.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_COPY_BYNAME 3 "21 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_copy_byname(pcre2_match_data *\fImatch_data\fP,
11 | .B " PCRE2_SPTR \fIname\fP, PCRE2_UCHAR *\fIbuffer\fP, PCRE2_SIZE *\fIbufflen\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This is a convenience function for extracting a captured substring, identified
18 | by name, into a given buffer. The arguments are:
19 | .sp
20 | \fImatch_data\fP The match data block for the match
21 | \fIname\fP Name of the required substring
22 | \fIbuffer\fP Buffer to receive the string
23 | \fIbufflen\fP Length of buffer (code units)
24 | .sp
25 | The \fIbufflen\fP variable is updated to contain the length of the extracted
26 | string, excluding the trailing zero. The yield of the function is zero for
27 | success or one of the following error numbers:
28 | .sp
29 | PCRE2_ERROR_NOSUBSTRING there are no groups of that name
30 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
31 | PCRE2_ERROR_UNSET the group did not participate in the match
32 | PCRE2_ERROR_NOMEMORY the buffer is not big enough
33 | .sp
34 | If there is more than one group with the given name, the first one that is set
35 | is returned. In this situation PCRE2_ERROR_UNSET means that no group with the
36 | given name was set.
37 | .P
38 | There is a complete description of the PCRE2 native API in the
39 | .\" HREF
40 | \fBpcre2api\fP
41 | .\"
42 | page and a description of the POSIX API in the
43 | .\" HREF
44 | \fBpcre2posix\fP
45 | .\"
46 | page.
47 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_copy_bynumber.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_COPY_BYNUMBER 3 "13 December 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_copy_bynumber(pcre2_match_data *\fImatch_data\fP,
11 | .B " uint32_t \fInumber\fP, PCRE2_UCHAR *\fIbuffer\fP,"
12 | .B " PCRE2_SIZE *\fIbufflen\fP);"
13 | .fi
14 | .
15 | .SH DESCRIPTION
16 | .rs
17 | .sp
18 | This is a convenience function for extracting a captured substring into a given
19 | buffer. The arguments are:
20 | .sp
21 | \fImatch_data\fP The match data block for the match
22 | \fInumber\fP Number of the required substring
23 | \fIbuffer\fP Buffer to receive the string
24 | \fIbufflen\fP Length of buffer
25 | .sp
26 | The \fIbufflen\fP variable is updated with the length of the extracted string,
27 | excluding the terminating zero. The yield of the function is zero for success
28 | or one of the following error numbers:
29 | .sp
30 | PCRE2_ERROR_NOSUBSTRING there are no groups of that number
31 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
32 | PCRE2_ERROR_UNSET the group did not participate in the match
33 | PCRE2_ERROR_NOMEMORY the buffer is too small
34 | .sp
35 | .P
36 | There is a complete description of the PCRE2 native API in the
37 | .\" HREF
38 | \fBpcre2api\fP
39 | .\"
40 | page and a description of the POSIX API in the
41 | .\" HREF
42 | \fBpcre2posix\fP
43 | .\"
44 | page.
45 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .SM
10 | .B void pcre2_substring_free(PCRE2_UCHAR *\fIbuffer\fP);
11 | .
12 | .SH DESCRIPTION
13 | .rs
14 | .sp
15 | This is a convenience function for freeing the memory obtained by a previous
16 | call to \fBpcre2_substring_get_byname()\fP or
17 | \fBpcre2_substring_get_bynumber()\fP. Its only argument is a pointer to the
18 | string. If the argument is NULL, the function does nothing.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_get_byname.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_GET_BYNAME 3 "21 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_get_byname(pcre2_match_data *\fImatch_data\fP,
11 | .B " PCRE2_SPTR \fIname\fP, PCRE2_UCHAR **\fIbufferptr\fP, PCRE2_SIZE *\fIbufflen\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This is a convenience function for extracting a captured substring by name into
18 | newly acquired memory. The arguments are:
19 | .sp
20 | \fImatch_data\fP The match data for the match
21 | \fIname\fP Name of the required substring
22 | \fIbufferptr\fP Where to put the string pointer
23 | \fIbufflen\fP Where to put the string length
24 | .sp
25 | The memory in which the substring is placed is obtained by calling the same
26 | memory allocation function that was used for the match data block. The
27 | convenience function \fBpcre2_substring_free()\fP can be used to free it when
28 | it is no longer needed. The yield of the function is zero for success or one of
29 | the following error numbers:
30 | .sp
31 | PCRE2_ERROR_NOSUBSTRING there are no groups of that name
32 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
33 | PCRE2_ERROR_UNSET the group did not participate in the match
34 | PCRE2_ERROR_NOMEMORY memory could not be obtained
35 | .sp
36 | If there is more than one group with the given name, the first one that is set
37 | is returned. In this situation PCRE2_ERROR_UNSET means that no group with the
38 | given name was set.
39 | .P
40 | There is a complete description of the PCRE2 native API in the
41 | .\" HREF
42 | \fBpcre2api\fP
43 | .\"
44 | page and a description of the POSIX API in the
45 | .\" HREF
46 | \fBpcre2posix\fP
47 | .\"
48 | page.
49 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_get_bynumber.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_GET_BYNUMBER 3 "13 December 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_get_bynumber(pcre2_match_data *\fImatch_data\fP,
11 | .B " uint32_t \fInumber\fP, PCRE2_UCHAR **\fIbufferptr\fP, PCRE2_SIZE *\fIbufflen\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This is a convenience function for extracting a captured substring by number
18 | into newly acquired memory. The arguments are:
19 | .sp
20 | \fImatch_data\fP The match data for the match
21 | \fInumber\fP Number of the required substring
22 | \fIbufferptr\fP Where to put the string pointer
23 | \fIbufflen\fP Where to put the string length
24 | .sp
25 | The memory in which the substring is placed is obtained by calling the same
26 | memory allocation function that was used for the match data block. The
27 | convenience function \fBpcre2_substring_free()\fP can be used to free it when
28 | it is no longer needed. The yield of the function is zero for success or one of
29 | the following error numbers:
30 | .sp
31 | PCRE2_ERROR_NOSUBSTRING there are no groups of that number
32 | PCRE2_ERROR_UNAVAILBLE the ovector was too small for that group
33 | PCRE2_ERROR_UNSET the group did not participate in the match
34 | PCRE2_ERROR_NOMEMORY memory could not be obtained
35 | .sp
36 | .P
37 | There is a complete description of the PCRE2 native API in the
38 | .\" HREF
39 | \fBpcre2api\fP
40 | .\"
41 | page and a description of the POSIX API in the
42 | .\" HREF
43 | \fBpcre2posix\fP
44 | .\"
45 | page.
46 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_length_byname.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_LENGTH_BYNAME 3 "21 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_length_byname(pcre2_match_data *\fImatch_data\fP,
11 | .B " PCRE2_SPTR \fIname\fP, PCRE2_SIZE *\fIlength\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function returns the length of a matched substring, identified by name.
18 | The arguments are:
19 | .sp
20 | \fImatch_data\fP The match data block for the match
21 | \fIname\fP The substring name
22 | \fIlength\fP Where to return the length
23 | .sp
24 | The yield is zero on success, or an error code if the substring is not found.
25 | .P
26 | There is a complete description of the PCRE2 native API in the
27 | .\" HREF
28 | \fBpcre2api\fP
29 | .\"
30 | page and a description of the POSIX API in the
31 | .\" HREF
32 | \fBpcre2posix\fP
33 | .\"
34 | page.
35 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_length_bynumber.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_LENGTH_BYNUMBER 3 "22 December 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_length_bynumber(pcre2_match_data *\fImatch_data\fP,
11 | .B " uint32_t \fInumber\fP, PCRE2_SIZE *\fIlength\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This function returns the length of a matched substring, identified by number.
18 | The arguments are:
19 | .sp
20 | \fImatch_data\fP The match data block for the match
21 | \fInumber\fP The substring number
22 | \fIlength\fP Where to return the length, or NULL
23 | .sp
24 | The third argument may be NULL if all you want to know is whether or not a
25 | substring is set. The yield is zero on success, or a negative error code
26 | otherwise. After a partial match, only substring 0 is available.
27 | .P
28 | There is a complete description of the PCRE2 native API in the
29 | .\" HREF
30 | \fBpcre2api\fP
31 | .\"
32 | page and a description of the POSIX API in the
33 | .\" HREF
34 | \fBpcre2posix\fP
35 | .\"
36 | page.
37 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_list_free.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_LIST_FREE 3 "28 June 2018" "PCRE2 10.32"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .SM
10 | .B void pcre2_substring_list_free(PCRE2_SPTR *\fIlist\fP);
11 | .
12 | .SH DESCRIPTION
13 | .rs
14 | .sp
15 | This is a convenience function for freeing the store obtained by a previous
16 | call to \fBpcre2substring_list_get()\fP. Its only argument is a pointer to
17 | the list of string pointers. If the argument is NULL, the function returns
18 | immediately, without doing anything.
19 | .P
20 | There is a complete description of the PCRE2 native API in the
21 | .\" HREF
22 | \fBpcre2api\fP
23 | .\"
24 | page and a description of the POSIX API in the
25 | .\" HREF
26 | \fBpcre2posix\fP
27 | .\"
28 | page.
29 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_list_get.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_LIST_GET 3 "21 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_list_get(pcre2_match_data *\fImatch_data\fP,
11 | .B " PCRE2_UCHAR ***\fIlistptr\fP, PCRE2_SIZE **\fIlengthsptr\fP);
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This is a convenience function for extracting all the captured substrings after
18 | a pattern match. It builds a list of pointers to the strings, and (optionally)
19 | a second list that contains their lengths (in code units), excluding a
20 | terminating zero that is added to each of them. All this is done in a single
21 | block of memory that is obtained using the same memory allocation function that
22 | was used to get the match data block. The convenience function
23 | \fBpcre2_substring_list_free()\fP can be used to free it when it is no longer
24 | needed. The arguments are:
25 | .sp
26 | \fImatch_data\fP The match data block
27 | \fIlistptr\fP Where to put a pointer to the list
28 | \fIlengthsptr\fP Where to put a pointer to the lengths, or NULL
29 | .sp
30 | A pointer to a list of pointers is put in the variable whose address is in
31 | \fIlistptr\fP. The list is terminated by a NULL pointer. If \fIlengthsptr\fP is
32 | not NULL, a matching list of lengths is created, and its address is placed in
33 | \fIlengthsptr\fP. The yield of the function is zero on success or
34 | PCRE2_ERROR_NOMEMORY if sufficient memory could not be obtained.
35 | .P
36 | There is a complete description of the PCRE2 native API in the
37 | .\" HREF
38 | \fBpcre2api\fP
39 | .\"
40 | page and a description of the POSIX API in the
41 | .\" HREF
42 | \fBpcre2posix\fP
43 | .\"
44 | page.
45 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_nametable_scan.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_NAMETABLE_SCAN 3 "03 February 2019" "PCRE2 10.33"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_nametable_scan(const pcre2_code *\fIcode\fP,
11 | .B " PCRE2_SPTR \fIname\fP, PCRE2_SPTR *\fIfirst\fP, PCRE2_SPTR *\fIlast\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This convenience function finds, for a compiled pattern, the first and last
18 | entries for a given name in the table that translates capture group names into
19 | numbers.
20 | .sp
21 | \fIcode\fP Compiled regular expression
22 | \fIname\fP Name whose entries required
23 | \fIfirst\fP Where to return a pointer to the first entry
24 | \fIlast\fP Where to return a pointer to the last entry
25 | .sp
26 | When the name is found in the table, if \fIfirst\fP is NULL, the function
27 | returns a group number, but if there is more than one matching entry, it is not
28 | defined which one. Otherwise, when both pointers have been set, the yield of
29 | the function is the length of each entry in code units. If the name is not
30 | found, PCRE2_ERROR_NOSUBSTRING is returned.
31 | .P
32 | There is a complete description of the PCRE2 native API, including the format of
33 | the table entries, in the
34 | .\" HREF
35 | \fBpcre2api\fP
36 | .\"
37 | page, and a description of the POSIX API in the
38 | .\" HREF
39 | \fBpcre2posix\fP
40 | .\"
41 | page.
42 |
--------------------------------------------------------------------------------
/pcre2/doc/pcre2_substring_number_from_name.3:
--------------------------------------------------------------------------------
1 | .TH PCRE2_SUBSTRING_NUMBER_FROM_NAME 3 "21 October 2014" "PCRE2 10.00"
2 | .SH NAME
3 | PCRE2 - Perl-compatible regular expressions (revised API)
4 | .SH SYNOPSIS
5 | .rs
6 | .sp
7 | .B #include
8 | .PP
9 | .nf
10 | .B int pcre2_substring_number_from_name(const pcre2_code *\fIcode\fP,
11 | .B " PCRE2_SPTR \fIname\fP);"
12 | .fi
13 | .
14 | .SH DESCRIPTION
15 | .rs
16 | .sp
17 | This convenience function finds the number of a named substring capturing
18 | parenthesis in a compiled pattern, provided that it is a unique name. The
19 | function arguments are:
20 | .sp
21 | \fIcode\fP Compiled regular expression
22 | \fIname\fP Name whose number is required
23 | .sp
24 | The yield of the function is the number of the parenthesis if the name is
25 | found, or PCRE2_ERROR_NOSUBSTRING if it is not found. When duplicate names are
26 | allowed (PCRE2_DUPNAMES is set), if the name is not unique,
27 | PCRE2_ERROR_NOUNIQUESUBSTRING is returned. You can obtain the list of numbers
28 | with the same name by calling \fBpcre2_substring_nametable_scan()\fP.
29 | .P
30 | There is a complete description of the PCRE2 native API in the
31 | .\" HREF
32 | \fBpcre2api\fP
33 | .\"
34 | page and a description of the POSIX API in the
35 | .\" HREF
36 | \fBpcre2posix\fP
37 | .\"
38 | page.
39 |
--------------------------------------------------------------------------------
/pcre2/libpcre2-16.pc.in:
--------------------------------------------------------------------------------
1 | # Package Information for pkg-config
2 |
3 | prefix=@prefix@
4 | exec_prefix=@exec_prefix@
5 | libdir=@libdir@
6 | includedir=@includedir@
7 |
8 | Name: libpcre2-16
9 | Description: PCRE2 - Perl compatible regular expressions C library (2nd API) with 16 bit character support
10 | Version: @PACKAGE_VERSION@
11 | Libs: -L${libdir} -lpcre2-16
12 | Libs.private: @PTHREAD_CFLAGS@ @PTHREAD_LIBS@
13 | Cflags: -I${includedir} @PCRE2_STATIC_CFLAG@
14 |
--------------------------------------------------------------------------------
/pcre2/libpcre2-32.pc.in:
--------------------------------------------------------------------------------
1 | # Package Information for pkg-config
2 |
3 | prefix=@prefix@
4 | exec_prefix=@exec_prefix@
5 | libdir=@libdir@
6 | includedir=@includedir@
7 |
8 | Name: libpcre2-32
9 | Description: PCRE2 - Perl compatible regular expressions C library (2nd API) with 32 bit character support
10 | Version: @PACKAGE_VERSION@
11 | Libs: -L${libdir} -lpcre2-32
12 | Libs.private: @PTHREAD_CFLAGS@ @PTHREAD_LIBS@
13 | Cflags: -I${includedir} @PCRE2_STATIC_CFLAG@
14 |
--------------------------------------------------------------------------------
/pcre2/libpcre2-8.pc.in:
--------------------------------------------------------------------------------
1 | # Package Information for pkg-config
2 |
3 | prefix=@prefix@
4 | exec_prefix=@exec_prefix@
5 | libdir=@libdir@
6 | includedir=@includedir@
7 |
8 | Name: libpcre2-8
9 | Description: PCRE2 - Perl compatible regular expressions C library (2nd API) with 8 bit character support
10 | Version: @PACKAGE_VERSION@
11 | Libs: -L${libdir} -lpcre2-8
12 | Libs.private: @PTHREAD_CFLAGS@ @PTHREAD_LIBS@
13 | Cflags: -I${includedir} @PCRE2_STATIC_CFLAG@
14 |
--------------------------------------------------------------------------------
/pcre2/libpcre2-posix.pc.in:
--------------------------------------------------------------------------------
1 | # Package Information for pkg-config
2 |
3 | prefix=@prefix@
4 | exec_prefix=@exec_prefix@
5 | libdir=@libdir@
6 | includedir=@includedir@
7 |
8 | Name: libpcre2-posix
9 | Description: Posix compatible interface to libpcre2-8
10 | Version: @PACKAGE_VERSION@
11 | Libs: -L${libdir} -lpcre2-posix
12 | Cflags: -I${includedir} @PCRE2_STATIC_CFLAG@
13 | Requires.private: libpcre2-8
14 |
--------------------------------------------------------------------------------
/pcre2/m4/ltversion.m4:
--------------------------------------------------------------------------------
1 | # ltversion.m4 -- version numbers -*- Autoconf -*-
2 | #
3 | # Copyright (C) 2004, 2011-2018 Free Software Foundation, Inc.
4 | # Written by Scott James Remnant, 2004
5 | #
6 | # This file is free software; the Free Software Foundation gives
7 | # unlimited permission to copy and/or distribute it, with or without
8 | # modifications, as long as this notice is preserved.
9 |
10 | # @configure_input@
11 |
12 | # serial 4221 ltversion.m4
13 | # This file is part of GNU Libtool
14 |
15 | m4_define([LT_PACKAGE_VERSION], [2.4.6.42-b88ce])
16 | m4_define([LT_PACKAGE_REVISION], [2.4.6.42])
17 |
18 | AC_DEFUN([LTVERSION_VERSION],
19 | [macro_version='2.4.6.42-b88ce'
20 | macro_revision='2.4.6.42'
21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
22 | _LT_DECL(, macro_revision, 0)
23 | ])
24 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepbinary:
--------------------------------------------------------------------------------
1 | The quick brown f x jumps over the lazy dog.
2 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepfilelist:
--------------------------------------------------------------------------------
1 | testdata/grepinputv
2 |
3 | testdata/grepinputx
4 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepinput3:
--------------------------------------------------------------------------------
1 | triple: t1_txt s1_tag s_txt p_tag p_txt o_tag o_txt
2 |
3 | triple: t2_txt s1_tag s_txt p_tag p_txt o_tag
4 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
5 |
6 | triple: t3_txt s2_tag s_txt p_tag p_txt o_tag o_txt
7 |
8 | triple: t4_txt s1_tag s_txt p_tag p_txt o_tag o_txt
9 |
10 | triple: t5_txt s1_tag s_txt p_tag p_txt o_tag
11 | o_txt
12 |
13 | triple: t6_txt s2_tag s_txt p_tag p_txt o_tag o_txt
14 |
15 | triple: t7_txt s1_tag s_txt p_tag p_txt o_tag o_txt
16 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepinput8:
--------------------------------------------------------------------------------
1 | X one
2 | X twoX threeX four
X five
3 | X six
4 | X seven
X eight
X nine
X ten
5 |
6 | Before 111
7 | Before 222
Before 333
Match
8 | After 111
9 | After 222
After 333
10 | And so on and so on
11 | And so on and so on
12 | ſ
13 | ſſſſſ
14 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepinputM:
--------------------------------------------------------------------------------
1 | Data file for multiline tests of multiple matches.
2 |
3 | start end in between start
4 | end and following
5 | Other stuff
6 |
7 | start end in between start
8 | end and following start
9 | end other stuff
10 |
11 | start end in between start
12 |
13 | end
14 |
15 | ** These two lines must be last.
16 | start end in between start
17 | end
18 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepinputv:
--------------------------------------------------------------------------------
1 | The quick brown
2 | fox jumps
3 | over the lazy dog.
4 | This time it jumps and jumps and jumps.
5 | This line contains \E and (regex) *meta* [characters].
6 | The word is cat in this line
7 | The caterpillar sat on the mat
8 | The snowcat is not an animal
9 | A buried feline in the syndicate
10 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepinputx:
--------------------------------------------------------------------------------
1 | This is a second file of input for the pcregrep tests.
2 |
3 | Here is the pattern again.
4 |
5 | Pattern
6 | That time it was on a line by itself.
7 |
8 | To pat or not to pat, that is the question.
9 |
10 | complete pair
11 | of lines
12 |
13 | That was a complete pair
14 | of lines all by themselves.
15 |
16 | complete pair
17 | of lines
18 |
19 | And there they were again, to check line numbers.
20 |
21 | one
22 | two
23 | three
24 | four
25 | five
26 | six
27 | seven
28 | eight
29 | nine
30 | ten
31 | eleven
32 | twelve
33 | thirteen
34 | fourteen
35 | fifteen
36 | sixteen
37 | seventeen
38 | eighteen
39 | nineteen
40 | twenty
41 |
42 | This line contains pattern not on a line by itself.
43 | This is the last line of this file.
44 |
--------------------------------------------------------------------------------
/pcre2/testdata/greplist:
--------------------------------------------------------------------------------
1 | This is a file of patterns for testing the -f option. Don't include any blank
2 | lines because they will match everything! This is no longer true, so have one.
3 |
4 | pattern
5 | line by itself
6 |
7 | End of the list of patterns.
8 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepoutput8:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/grepoutput8
--------------------------------------------------------------------------------
/pcre2/testdata/grepoutputC:
--------------------------------------------------------------------------------
1 | Arg1: [T] [he ] [ ] Arg2: |T| () () (0)
2 | Arg1: [T] [his] [s] Arg2: |T| () () (0)
3 | Arg1: [T] [his] [s] Arg2: |T| () () (0)
4 | Arg1: [T] [he ] [ ] Arg2: |T| () () (0)
5 | Arg1: [T] [he ] [ ] Arg2: |T| () () (0)
6 | Arg1: [T] [he ] [ ] Arg2: |T| () () (0)
7 | The quick brown
8 | This time it jumps and jumps and jumps.
9 | This line contains \E and (regex) *meta* [characters].
10 | The word is cat in this line
11 | The caterpillar sat on the mat
12 | The snowcat is not an animal
13 | Arg1: [qu] [qu]
14 | Arg1: [ t] [ t]
15 | Arg1: [ l] [ l]
16 | Arg1: [wo] [wo]
17 | Arg1: [ca] [ca]
18 | Arg1: [sn] [sn]
19 | The quick brown
20 | This time it jumps and jumps and jumps.
21 | This line contains \E and (regex) *meta* [characters].
22 | The word is cat in this line
23 | The caterpillar sat on the mat
24 | The snowcat is not an animal
25 | 0:T
26 | The quick brown
27 | 0:T
28 | This time it jumps and jumps and jumps.
29 | 0:T
30 | This line contains \E and (regex) *meta* [characters].
31 | 0:T
32 | The word is cat in this line
33 | 0:T
34 | The caterpillar sat on the mat
35 | 0:T
36 | The snowcat is not an animal
37 | T
38 | T
39 | T
40 | T
41 | T
42 | T
43 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepoutputCN:
--------------------------------------------------------------------------------
1 | The quick brown
2 | This time it jumps and jumps and jumps.
3 | This line contains \E and (regex) *meta* [characters].
4 | The word is cat in this line
5 | The caterpillar sat on the mat
6 | The snowcat is not an animal
7 | The quick brown
8 | This time it jumps and jumps and jumps.
9 | This line contains \E and (regex) *meta* [characters].
10 | The word is cat in this line
11 | The caterpillar sat on the mat
12 | The snowcat is not an animal
13 | 0:T
14 | The quick brown
15 | 0:T
16 | This time it jumps and jumps and jumps.
17 | 0:T
18 | This line contains \E and (regex) *meta* [characters].
19 | 0:T
20 | The word is cat in this line
21 | 0:T
22 | The caterpillar sat on the mat
23 | 0:T
24 | The snowcat is not an animal
25 | T
26 | T
27 | T
28 | T
29 | T
30 | T
31 |
--------------------------------------------------------------------------------
/pcre2/testdata/grepoutputN:
--------------------------------------------------------------------------------
1 | ---------------------------- Test N1 ------------------------------
2 | 1:abc
2:def
---------------------------- Test N2 ------------------------------
3 | 1:abc
def
4 | 2:ghi
5 | jkl---------------------------- Test N3 ------------------------------
6 | 2:def
3:
7 | ghi
8 | jkl---------------------------- Test N4 ------------------------------
9 | 2:ghi
10 | jkl---------------------------- Test N5 ------------------------------
11 | 1:abc
2:def
12 | 3:ghi
13 | 4:jkl---------------------------- Test N6 ------------------------------
14 | 1:abc
2:def
15 | 3:ghi
16 | 4:jkl---------------------------- Test N7 ------------------------------
17 | 1:abcZERO2:def
18 |
--------------------------------------------------------------------------------
/pcre2/testdata/greppatN4:
--------------------------------------------------------------------------------
1 | xxx
2 | jkl
--------------------------------------------------------------------------------
/pcre2/testdata/testinput1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput1
--------------------------------------------------------------------------------
/pcre2/testdata/testinput10:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput10
--------------------------------------------------------------------------------
/pcre2/testdata/testinput11:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput11
--------------------------------------------------------------------------------
/pcre2/testdata/testinput12:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput12
--------------------------------------------------------------------------------
/pcre2/testdata/testinput13:
--------------------------------------------------------------------------------
1 | # These DFA tests are for the handling of characters greater than 255 in
2 | # 16-bit or 32-bit, non-UTF mode.
3 |
4 | #forbid_utf
5 | #subject dfa
6 |
7 | /^\x{ffff}+/i
8 | \x{ffff}
9 |
10 | /^\x{ffff}?/i
11 | \x{ffff}
12 |
13 | /^\x{ffff}*/i
14 | \x{ffff}
15 |
16 | /^\x{ffff}{3}/i
17 | \x{ffff}\x{ffff}\x{ffff}
18 |
19 | /^\x{ffff}{0,3}/i
20 | \x{ffff}
21 |
22 | # End of testinput13
23 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput14:
--------------------------------------------------------------------------------
1 | # These test special (mostly error) UTF features of DFA matching. They are a
2 | # selection of the more comprehensive tests that are run for non-DFA matching.
3 | # The output is different for the different widths.
4 |
5 | #subject dfa
6 |
7 | /X/utf
8 | XX\x{d800}
9 | XX\x{d800}\=offset=3
10 | XX\x{d800}\=no_utf_check
11 | XX\x{da00}
12 | XX\x{da00}\=no_utf_check
13 | XX\x{dc00}
14 | XX\x{dc00}\=no_utf_check
15 | XX\x{de00}
16 | XX\x{de00}\=no_utf_check
17 | XX\x{dfff}
18 | XX\x{dfff}\=no_utf_check
19 | XX\x{110000}
20 | XX\x{d800}\x{1234}
21 |
22 | /badutf/utf
23 | X\xdf
24 | XX\xef
25 | XXX\xef\x80
26 | X\xf7
27 | XX\xf7\x80
28 | XXX\xf7\x80\x80
29 |
30 | /shortutf/utf
31 | XX\xdf\=ph
32 | XX\xef\=ph
33 | XX\xef\x80\=ph
34 | \xf7\=ph
35 | \xf7\x80\=ph
36 |
37 | # End of testinput14
38 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput16:
--------------------------------------------------------------------------------
1 | # This test is run only when JIT support is not available. It checks that an
2 | # attempt to use it has the expected behaviour. It also tests things that
3 | # are different without JIT.
4 |
5 | /abc/I,jit,jitverify
6 |
7 | /a*/I
8 |
9 | # End of testinput16
10 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput19:
--------------------------------------------------------------------------------
1 | # This set of tests is run only with the 8-bit library. It tests the POSIX
2 | # interface with UTF/UCP support, which is supported only with the 8-bit
3 | # library. This test should not be run with JIT (which is not available for the
4 | # POSIX interface).
5 |
6 | #pattern posix
7 |
8 | /a\x{1234}b/utf
9 | a\x{1234}b
10 |
11 | /\w/
12 | \= Expect no match
13 | +++\x{c2}
14 |
15 | /\w/ucp
16 | +++\x{c2}
17 |
18 | /"^AB" 00 "\x{1234}$"/hex,utf
19 | AB\x{00}\x{1234}\=posix_startend=0:6
20 |
21 | # End of testdata/testinput19
22 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput2
--------------------------------------------------------------------------------
/pcre2/testdata/testinput20:
--------------------------------------------------------------------------------
1 | # This set of tests exercises the serialization/deserialization and code copy
2 | # functions in the library. It does not use UTF or JIT.
3 |
4 | #forbid_utf
5 |
6 | # Compile several patterns, push them onto the stack, and then write them
7 | # all to a file.
8 |
9 | #pattern push
10 |
11 | /(?(?&NAME_PAT))\s+(?(?&ADDRESS_PAT))
12 | (?(DEFINE)
13 | (?[a-z]+)
14 | (?\d+)
15 | )/x
16 | /^(?:((.)(?1)\2|)|((.)(?3)\4|.))$/i
17 |
18 | #save testsaved1
19 |
20 | # Do it again for some more patterns.
21 |
22 | /(*MARK:A)(*SKIP:B)(C|X)/mark
23 | /(?:(?foo)|(?bar))\k/dupnames
24 |
25 | #save testsaved2
26 | #pattern -push
27 |
28 | # Reload the patterns, then pop them one by one and check them.
29 |
30 | #load testsaved1
31 | #load testsaved2
32 |
33 | #pop info
34 | foofoo
35 | barbar
36 |
37 | #pop mark
38 | C
39 | \= Expect no match
40 | D
41 |
42 | #pop
43 | AmanaplanacanalPanama
44 |
45 | #pop info
46 | metcalfe 33
47 |
48 | # Check for an error when different tables are used.
49 |
50 | /abc/push,tables=1
51 | /xyz/push,tables=2
52 | #save testsaved1
53 |
54 | #pop
55 | xyz
56 |
57 | #pop
58 | abc
59 |
60 | #pop should give an error
61 | pqr
62 |
63 | /abcd/pushcopy
64 | abcd
65 |
66 | #pop
67 | abcd
68 |
69 | #pop should give an error
70 |
71 | /abcd/push
72 | #popcopy
73 | abcd
74 |
75 | #pop
76 | abcd
77 |
78 | /abcd/push
79 | #save testsaved1
80 | #pop should give an error
81 |
82 | #load testsaved1
83 | #popcopy
84 | abcd
85 |
86 | #pop
87 | abcd
88 |
89 | #pop should give an error
90 |
91 | /abcd/pushtablescopy
92 | abcd
93 |
94 | #popcopy
95 | abcd
96 |
97 | #pop
98 | abcd
99 |
100 | # Must only specify one of these
101 |
102 | //push,pushcopy
103 |
104 | //push,pushtablescopy
105 |
106 | //pushcopy,pushtablescopy
107 |
108 | # End of testinput20
109 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput21:
--------------------------------------------------------------------------------
1 | # These are tests of \C that do not involve UTF. They are not run when \C is
2 | # disabled by compiling with --enable-never-backslash-C.
3 |
4 | /\C+\D \C+\d \C+\S \C+\s \C+\W \C+\w \C+. \C+\R \C+\H \C+\h \C+\V \C+\v \C+\Z \C+\z \C+$/Bx
5 |
6 | /\D+\C \d+\C \S+\C \s+\C \W+\C \w+\C .+\C \R+\C \H+\C \h+\C \V+\C \v+\C a+\C \n+\C \C+\C/Bx
7 |
8 | /ab\Cde/never_backslash_c
9 |
10 | /ab\Cde/info
11 | abXde
12 |
13 | /(?<=ab\Cde)X/
14 | abZdeX
15 |
16 | # End of testinput21
17 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput23:
--------------------------------------------------------------------------------
1 | # This test is run when PCRE2 has been built with --enable-never-backslash-C,
2 | # which disables the use of \C. All we can do is check that it gives the
3 | # correct error message.
4 |
5 | /a\Cb/
6 |
7 | # End of testinput23
8 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput25:
--------------------------------------------------------------------------------
1 | # This file tests the auxiliary pattern conversion features of the PCRE2
2 | # library, in UTF mode.
3 |
4 | #newline_default lf any anycrlf
5 |
6 | # -------- Tests of glob conversion --------
7 |
8 | # Set the glob separator explicitly so that different OS defaults are not a
9 | # problem. Then test various errors.
10 |
11 | #pattern convert=glob,convert_glob_escape=\,convert_glob_separator=/
12 |
13 | # The fact that this one works in 13 bytes in the 8-bit library shows that the
14 | # output is in UTF-8, though pcre2test shows the character as an escape.
15 |
16 | /'>' c4 a3 '<'/hex,utf,convert_length=13
17 |
18 | # End of testinput25
19 |
--------------------------------------------------------------------------------
/pcre2/testdata/testinput3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput3
--------------------------------------------------------------------------------
/pcre2/testdata/testinput5:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput5
--------------------------------------------------------------------------------
/pcre2/testdata/testinput6:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinput6
--------------------------------------------------------------------------------
/pcre2/testdata/testinputEBC:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testinputEBC
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput1
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput10:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput10
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput11-16:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput11-16
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput11-32:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput11-32
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput12-16:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput12-16
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput12-32:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput12-32
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput13:
--------------------------------------------------------------------------------
1 | # These DFA tests are for the handling of characters greater than 255 in
2 | # 16-bit or 32-bit, non-UTF mode.
3 |
4 | #forbid_utf
5 | #subject dfa
6 |
7 | /^\x{ffff}+/i
8 | \x{ffff}
9 | 0: \x{ffff}
10 |
11 | /^\x{ffff}?/i
12 | \x{ffff}
13 | 0: \x{ffff}
14 |
15 | /^\x{ffff}*/i
16 | \x{ffff}
17 | 0: \x{ffff}
18 |
19 | /^\x{ffff}{3}/i
20 | \x{ffff}\x{ffff}\x{ffff}
21 | 0: \x{ffff}\x{ffff}\x{ffff}
22 |
23 | /^\x{ffff}{0,3}/i
24 | \x{ffff}
25 | 0: \x{ffff}
26 |
27 | # End of testinput13
28 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput14-16:
--------------------------------------------------------------------------------
1 | # These test special (mostly error) UTF features of DFA matching. They are a
2 | # selection of the more comprehensive tests that are run for non-DFA matching.
3 | # The output is different for the different widths.
4 |
5 | #subject dfa
6 |
7 | /X/utf
8 | XX\x{d800}
9 | Failed: error -24: UTF-16 error: missing low surrogate at end at offset 2
10 | XX\x{d800}\=offset=3
11 | No match
12 | XX\x{d800}\=no_utf_check
13 | 0: X
14 | XX\x{da00}
15 | Failed: error -24: UTF-16 error: missing low surrogate at end at offset 2
16 | XX\x{da00}\=no_utf_check
17 | 0: X
18 | XX\x{dc00}
19 | Failed: error -26: UTF-16 error: isolated low surrogate at offset 2
20 | XX\x{dc00}\=no_utf_check
21 | 0: X
22 | XX\x{de00}
23 | Failed: error -26: UTF-16 error: isolated low surrogate at offset 2
24 | XX\x{de00}\=no_utf_check
25 | 0: X
26 | XX\x{dfff}
27 | Failed: error -26: UTF-16 error: isolated low surrogate at offset 2
28 | XX\x{dfff}\=no_utf_check
29 | 0: X
30 | XX\x{110000}
31 | ** Failed: character \x{110000} is greater than 0x10ffff and so cannot be converted to UTF-16
32 | XX\x{d800}\x{1234}
33 | Failed: error -25: UTF-16 error: invalid low surrogate at offset 3
34 |
35 | /badutf/utf
36 | X\xdf
37 | No match
38 | XX\xef
39 | No match
40 | XXX\xef\x80
41 | No match
42 | X\xf7
43 | No match
44 | XX\xf7\x80
45 | No match
46 | XXX\xf7\x80\x80
47 | No match
48 |
49 | /shortutf/utf
50 | XX\xdf\=ph
51 | No match
52 | XX\xef\=ph
53 | No match
54 | XX\xef\x80\=ph
55 | No match
56 | \xf7\=ph
57 | No match
58 | \xf7\x80\=ph
59 | No match
60 |
61 | # End of testinput14
62 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput14-32:
--------------------------------------------------------------------------------
1 | # These test special (mostly error) UTF features of DFA matching. They are a
2 | # selection of the more comprehensive tests that are run for non-DFA matching.
3 | # The output is different for the different widths.
4 |
5 | #subject dfa
6 |
7 | /X/utf
8 | XX\x{d800}
9 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
10 | XX\x{d800}\=offset=3
11 | No match
12 | XX\x{d800}\=no_utf_check
13 | 0: X
14 | XX\x{da00}
15 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
16 | XX\x{da00}\=no_utf_check
17 | 0: X
18 | XX\x{dc00}
19 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
20 | XX\x{dc00}\=no_utf_check
21 | 0: X
22 | XX\x{de00}
23 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
24 | XX\x{de00}\=no_utf_check
25 | 0: X
26 | XX\x{dfff}
27 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
28 | XX\x{dfff}\=no_utf_check
29 | 0: X
30 | XX\x{110000}
31 | Failed: error -28: UTF-32 error: code points greater than 0x10ffff are not defined at offset 2
32 | XX\x{d800}\x{1234}
33 | Failed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
34 |
35 | /badutf/utf
36 | X\xdf
37 | No match
38 | XX\xef
39 | No match
40 | XXX\xef\x80
41 | No match
42 | X\xf7
43 | No match
44 | XX\xf7\x80
45 | No match
46 | XXX\xf7\x80\x80
47 | No match
48 |
49 | /shortutf/utf
50 | XX\xdf\=ph
51 | No match
52 | XX\xef\=ph
53 | No match
54 | XX\xef\x80\=ph
55 | No match
56 | \xf7\=ph
57 | No match
58 | \xf7\x80\=ph
59 | No match
60 |
61 | # End of testinput14
62 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput16:
--------------------------------------------------------------------------------
1 | # This test is run only when JIT support is not available. It checks that an
2 | # attempt to use it has the expected behaviour. It also tests things that
3 | # are different without JIT.
4 |
5 | /abc/I,jit,jitverify
6 | Capture group count = 0
7 | First code unit = 'a'
8 | Last code unit = 'c'
9 | Subject length lower bound = 3
10 | JIT support is not available in this version of PCRE2
11 |
12 | /a*/I
13 | Capture group count = 0
14 | May match empty string
15 | Subject length lower bound = 0
16 |
17 | # End of testinput16
18 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput19:
--------------------------------------------------------------------------------
1 | # This set of tests is run only with the 8-bit library. It tests the POSIX
2 | # interface with UTF/UCP support, which is supported only with the 8-bit
3 | # library. This test should not be run with JIT (which is not available for the
4 | # POSIX interface).
5 |
6 | #pattern posix
7 |
8 | /a\x{1234}b/utf
9 | a\x{1234}b
10 | 0: a\x{1234}b
11 |
12 | /\w/
13 | \= Expect no match
14 | +++\x{c2}
15 | No match: POSIX code 17: match failed
16 |
17 | /\w/ucp
18 | +++\x{c2}
19 | 0: \xc2
20 |
21 | /"^AB" 00 "\x{1234}$"/hex,utf
22 | AB\x{00}\x{1234}\=posix_startend=0:6
23 | 0: AB\x{00}\x{1234}
24 |
25 | # End of testdata/testinput19
26 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput2
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput21:
--------------------------------------------------------------------------------
1 | # These are tests of \C that do not involve UTF. They are not run when \C is
2 | # disabled by compiling with --enable-never-backslash-C.
3 |
4 | /\C+\D \C+\d \C+\S \C+\s \C+\W \C+\w \C+. \C+\R \C+\H \C+\h \C+\V \C+\v \C+\Z \C+\z \C+$/Bx
5 | ------------------------------------------------------------------
6 | Bra
7 | AllAny+
8 | \D
9 | AllAny+
10 | \d
11 | AllAny+
12 | \S
13 | AllAny+
14 | \s
15 | AllAny+
16 | \W
17 | AllAny+
18 | \w
19 | AllAny+
20 | Any
21 | AllAny+
22 | \R
23 | AllAny+
24 | \H
25 | AllAny+
26 | \h
27 | AllAny+
28 | \V
29 | AllAny+
30 | \v
31 | AllAny+
32 | \Z
33 | AllAny++
34 | \z
35 | AllAny+
36 | $
37 | Ket
38 | End
39 | ------------------------------------------------------------------
40 |
41 | /\D+\C \d+\C \S+\C \s+\C \W+\C \w+\C .+\C \R+\C \H+\C \h+\C \V+\C \v+\C a+\C \n+\C \C+\C/Bx
42 | ------------------------------------------------------------------
43 | Bra
44 | \D+
45 | AllAny
46 | \d+
47 | AllAny
48 | \S+
49 | AllAny
50 | \s+
51 | AllAny
52 | \W+
53 | AllAny
54 | \w+
55 | AllAny
56 | Any+
57 | AllAny
58 | \R+
59 | AllAny
60 | \H+
61 | AllAny
62 | \h+
63 | AllAny
64 | \V+
65 | AllAny
66 | \v+
67 | AllAny
68 | a+
69 | AllAny
70 | \x0a+
71 | AllAny
72 | AllAny+
73 | AllAny
74 | Ket
75 | End
76 | ------------------------------------------------------------------
77 |
78 | /ab\Cde/never_backslash_c
79 | Failed: error 183 at offset 4: using \C is disabled by the application
80 |
81 | /ab\Cde/info
82 | Capture group count = 0
83 | Contains \C
84 | First code unit = 'a'
85 | Last code unit = 'e'
86 | Subject length lower bound = 5
87 | abXde
88 | 0: abXde
89 |
90 | /(?<=ab\Cde)X/
91 | abZdeX
92 | 0: X
93 |
94 | # End of testinput21
95 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput23:
--------------------------------------------------------------------------------
1 | # This test is run when PCRE2 has been built with --enable-never-backslash-C,
2 | # which disables the use of \C. All we can do is check that it gives the
3 | # correct error message.
4 |
5 | /a\Cb/
6 | Failed: error 185 at offset 3: using \C is disabled in this PCRE2 library
7 |
8 | # End of testinput23
9 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput25:
--------------------------------------------------------------------------------
1 | # This file tests the auxiliary pattern conversion features of the PCRE2
2 | # library, in UTF mode.
3 |
4 | #newline_default lf any anycrlf
5 |
6 | # -------- Tests of glob conversion --------
7 |
8 | # Set the glob separator explicitly so that different OS defaults are not a
9 | # problem. Then test various errors.
10 |
11 | #pattern convert=glob,convert_glob_escape=\,convert_glob_separator=/
12 |
13 | # The fact that this one works in 13 bytes in the 8-bit library shows that the
14 | # output is in UTF-8, though pcre2test shows the character as an escape.
15 |
16 | /'>' c4 a3 '<'/hex,utf,convert_length=13
17 | (?s)\A>\x{123}<\z
18 |
19 | # End of testinput25
20 |
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput3
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput3A:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput3A
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput3B:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput3B
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput5:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput5
--------------------------------------------------------------------------------
/pcre2/testdata/testoutput6:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutput6
--------------------------------------------------------------------------------
/pcre2/testdata/testoutputEBC:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/testoutputEBC
--------------------------------------------------------------------------------
/pcre2/testdata/valgrind-jit.supp:
--------------------------------------------------------------------------------
1 | {
2 | name
3 | Memcheck:Addr16
4 | obj:???
5 | obj:???
6 | obj:???
7 | }
8 |
9 | {
10 | name
11 | Memcheck:Cond
12 | obj:???
13 | obj:???
14 | obj:???
15 | }
16 |
--------------------------------------------------------------------------------
/pcre2/testdata/wintestinput3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/wintestinput3
--------------------------------------------------------------------------------
/pcre2/testdata/wintestoutput3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/julian-r/file-windows/cddf42c5faf23c552b8c033680854b0c7bde0f10/pcre2/testdata/wintestoutput3
--------------------------------------------------------------------------------
/win-headers/magic.def:
--------------------------------------------------------------------------------
1 | LIBRARY libmagic
2 | EXPORTS
3 | magic_open
4 | magic_close
5 | magic_getpath
6 | magic_file
7 | magic_descriptor
8 | magic_buffer
9 | magic_error
10 | magic_setflags
11 | magic_version
12 | magic_load
13 | magic_load_buffers
14 | magic_compile
15 | magic_check
16 | magic_list
17 | magic_errno
18 | magic_setparam
19 | magic_getparam
20 | getline
21 |
--------------------------------------------------------------------------------