SM0 She11
Path:
/
/
usr
/
include
Full Path (server): /usr/include
Create Fil3
Upl04d Fil3
📄 FlexLexer.h
[E]
[D]
[R]
📁 GL
Open
[D]
[R]
📁 ImageMagick-6
Open
[D]
[R]
📁 X11
Open
[D]
[R]
📄 _G_config.h
[E]
[D]
[R]
📄 a.out.h
[E]
[D]
[R]
📄 aio.h
[E]
[D]
[R]
📄 aliases.h
[E]
[D]
[R]
📄 alloca.h
[E]
[D]
[R]
📁 apr-1
Open
[D]
[R]
📄 ar.h
[E]
[D]
[R]
📄 argon2.h
[E]
[D]
[R]
📄 argp.h
[E]
[D]
[R]
📄 argz.h
[E]
[D]
[R]
📁 arpa
Open
[D]
[R]
📁 asm
Open
[D]
[R]
📁 asm-generic
Open
[D]
[R]
📄 aspell.h
[E]
[D]
[R]
📄 assert.h
[E]
[D]
[R]
📁 bits
Open
[D]
[R]
📄 buffio.h
[E]
[D]
[R]
📄 byteswap.h
[E]
[D]
[R]
📄 bzlib.h
[E]
[D]
[R]
📁 c++
Open
[D]
[R]
📄 com_err.h
[E]
[D]
[R]
📄 complex.h
[E]
[D]
[R]
📄 cpio.h
[E]
[D]
[R]
📄 cpufreq.h
[E]
[D]
[R]
📄 crypt.h
[E]
[D]
[R]
📄 ctype.h
[E]
[D]
[R]
📁 curl
Open
[D]
[R]
📄 curses.h
[E]
[D]
[R]
📄 cursesapp.h
[E]
[D]
[R]
📄 cursesf.h
[E]
[D]
[R]
📄 cursesm.h
[E]
[D]
[R]
📄 cursesp.h
[E]
[D]
[R]
📄 cursesw.h
[E]
[D]
[R]
📄 cursslk.h
[E]
[D]
[R]
📄 db.h
[E]
[D]
[R]
📄 db_185.h
[E]
[D]
[R]
📄 dbm.h
[E]
[D]
[R]
📄 dirent.h
[E]
[D]
[R]
📄 dlfcn.h
[E]
[D]
[R]
📁 drm
Open
[D]
[R]
📄 dwarf.h
[E]
[D]
[R]
📄 ecpg_config.h
[E]
[D]
[R]
📄 ecpg_config_x86_64.h
[E]
[D]
[R]
📄 ecpg_informix.h
[E]
[D]
[R]
📄 ecpgerrno.h
[E]
[D]
[R]
📄 ecpglib.h
[E]
[D]
[R]
📄 ecpgtype.h
[E]
[D]
[R]
📁 editline
Open
[D]
[R]
📄 elf.h
[E]
[D]
[R]
📁 elfutils
Open
[D]
[R]
📁 enchant
Open
[D]
[R]
📄 endian.h
[E]
[D]
[R]
📄 envz.h
[E]
[D]
[R]
📄 err.h
[E]
[D]
[R]
📄 errno.h
[E]
[D]
[R]
📄 error.h
[E]
[D]
[R]
📁 et
Open
[D]
[R]
📄 eti.h
[E]
[D]
[R]
📄 etip.h
[E]
[D]
[R]
📄 execinfo.h
[E]
[D]
[R]
📄 expat.h
[E]
[D]
[R]
📄 expat_external.h
[E]
[D]
[R]
📄 fcntl.h
[E]
[D]
[R]
📄 features.h
[E]
[D]
[R]
📄 fenv.h
[E]
[D]
[R]
📄 fmtmsg.h
[E]
[D]
[R]
📄 fnmatch.h
[E]
[D]
[R]
📄 form.h
[E]
[D]
[R]
📄 fpu_control.h
[E]
[D]
[R]
📁 freetype2
Open
[D]
[R]
📄 fstab.h
[E]
[D]
[R]
📄 fts.h
[E]
[D]
[R]
📄 ftw.h
[E]
[D]
[R]
📄 gconv.h
[E]
[D]
[R]
📄 gcrypt-module.h
[E]
[D]
[R]
📄 gcrypt.h
[E]
[D]
[R]
📁 gdbm
Open
[D]
[R]
📄 gdbm.h
[E]
[D]
[R]
📄 gelf.h
[E]
[D]
[R]
📄 getopt.h
[E]
[D]
[R]
📁 ghostscript
Open
[D]
[R]
📁 gio-unix-2.0
Open
[D]
[R]
📁 glib-2.0
Open
[D]
[R]
📄 glob.h
[E]
[D]
[R]
📄 gmp-mparam-x86_64.h
[E]
[D]
[R]
📄 gmp-mparam.h
[E]
[D]
[R]
📄 gmp-x86_64.h
[E]
[D]
[R]
📄 gmp.h
[E]
[D]
[R]
📄 gmpxx.h
[E]
[D]
[R]
📁 gnu
Open
[D]
[R]
📄 gnu-versions.h
[E]
[D]
[R]
📄 gpg-error.h
[E]
[D]
[R]
📄 grp.h
[E]
[D]
[R]
📄 gshadow.h
[E]
[D]
[R]
📁 gssapi
Open
[D]
[R]
📄 gssapi.h
[E]
[D]
[R]
📁 gssrpc
Open
[D]
[R]
📄 histedit.h
[E]
[D]
[R]
📄 iconv.h
[E]
[D]
[R]
📄 ieee754.h
[E]
[D]
[R]
📄 ifaddrs.h
[E]
[D]
[R]
📁 ijs
Open
[D]
[R]
📁 imap
Open
[D]
[R]
📄 inttypes.h
[E]
[D]
[R]
📁 jasper
Open
[D]
[R]
📄 jconfig.h
[E]
[D]
[R]
📄 jerror.h
[E]
[D]
[R]
📄 jmorecfg.h
[E]
[D]
[R]
📄 jpeglib.h
[E]
[D]
[R]
📁 kadm5
Open
[D]
[R]
📄 kdb.h
[E]
[D]
[R]
📄 keyutils.h
[E]
[D]
[R]
📄 krad.h
[E]
[D]
[R]
📁 krb5
Open
[D]
[R]
📄 krb5.h
[E]
[D]
[R]
📄 langinfo.h
[E]
[D]
[R]
📄 lastlog.h
[E]
[D]
[R]
📁 layout
Open
[D]
[R]
📄 lber.h
[E]
[D]
[R]
📄 lber_types.h
[E]
[D]
[R]
📄 ldap.h
[E]
[D]
[R]
📄 ldap_cdefs.h
[E]
[D]
[R]
📄 ldap_features.h
[E]
[D]
[R]
📄 ldap_schema.h
[E]
[D]
[R]
📄 ldap_utf8.h
[E]
[D]
[R]
📄 ldif.h
[E]
[D]
[R]
📁 libdb
Open
[D]
[R]
📁 libdb4
Open
[D]
[R]
📄 libelf.h
[E]
[D]
[R]
📁 libexslt
Open
[D]
[R]
📄 libgen.h
[E]
[D]
[R]
📄 libintl.h
[E]
[D]
[R]
📄 libio.h
[E]
[D]
[R]
📁 libltdl
Open
[D]
[R]
📁 libpng15
Open
[D]
[R]
📁 libpq
Open
[D]
[R]
📄 libpq-events.h
[E]
[D]
[R]
📄 libpq-fe.h
[E]
[D]
[R]
📁 libxml2
Open
[D]
[R]
📁 libxslt
Open
[D]
[R]
📄 limits.h
[E]
[D]
[R]
📄 link.h
[E]
[D]
[R]
📁 linux
Open
[D]
[R]
📄 locale.h
[E]
[D]
[R]
📄 ltdl.h
[E]
[D]
[R]
📁 lzma
Open
[D]
[R]
📄 lzma.h
[E]
[D]
[R]
📄 malloc.h
[E]
[D]
[R]
📄 math.h
[E]
[D]
[R]
📄 mcheck.h
[E]
[D]
[R]
📄 mcrypt.h
[E]
[D]
[R]
📄 memory.h
[E]
[D]
[R]
📄 menu.h
[E]
[D]
[R]
📁 misc
Open
[D]
[R]
📄 mntent.h
[E]
[D]
[R]
📄 monetary.h
[E]
[D]
[R]
📄 mqueue.h
[E]
[D]
[R]
📁 mtd
Open
[D]
[R]
📁 mutils
Open
[D]
[R]
📁 mysql
Open
[D]
[R]
📄 nc_tparm.h
[E]
[D]
[R]
📁 ncurses
Open
[D]
[R]
📄 ncurses.h
[E]
[D]
[R]
📄 ncurses_dll.h
[E]
[D]
[R]
📁 ncursesw
Open
[D]
[R]
📄 ndbm.h
[E]
[D]
[R]
📁 net
Open
[D]
[R]
📁 net-snmp
Open
[D]
[R]
📁 netash
Open
[D]
[R]
📁 netatalk
Open
[D]
[R]
📁 netax25
Open
[D]
[R]
📄 netdb.h
[E]
[D]
[R]
📁 neteconet
Open
[D]
[R]
📁 netinet
Open
[D]
[R]
📁 netipx
Open
[D]
[R]
📁 netiucv
Open
[D]
[R]
📁 netpacket
Open
[D]
[R]
📁 netrom
Open
[D]
[R]
📁 netrose
Open
[D]
[R]
📁 nfs
Open
[D]
[R]
📄 nl_types.h
[E]
[D]
[R]
📄 nlist.h
[E]
[D]
[R]
📄 nss.h
[E]
[D]
[R]
📄 obstack.h
[E]
[D]
[R]
📄 oniggnu.h
[E]
[D]
[R]
📄 onigposix.h
[E]
[D]
[R]
📄 oniguruma.h
[E]
[D]
[R]
📁 openssl
Open
[D]
[R]
📄 panel.h
[E]
[D]
[R]
📄 paths.h
[E]
[D]
[R]
📄 pcre.h
[E]
[D]
[R]
📄 pcre_scanner.h
[E]
[D]
[R]
📄 pcre_stringpiece.h
[E]
[D]
[R]
📄 pcrecpp.h
[E]
[D]
[R]
📄 pcrecpparg.h
[E]
[D]
[R]
📄 pcreposix.h
[E]
[D]
[R]
📄 pg_config.h
[E]
[D]
[R]
📄 pg_config_manual.h
[E]
[D]
[R]
📄 pg_config_os.h
[E]
[D]
[R]
📄 pg_config_x86_64.h
[E]
[D]
[R]
📁 pgsql
Open
[D]
[R]
📄 pgtypes_date.h
[E]
[D]
[R]
📄 pgtypes_error.h
[E]
[D]
[R]
📄 pgtypes_interval.h
[E]
[D]
[R]
📄 pgtypes_numeric.h
[E]
[D]
[R]
📄 pgtypes_timestamp.h
[E]
[D]
[R]
📄 platform.h
[E]
[D]
[R]
📄 png.h
[E]
[D]
[R]
📄 pngconf.h
[E]
[D]
[R]
📄 pnglibconf.h
[E]
[D]
[R]
📄 poll.h
[E]
[D]
[R]
📄 popt.h
[E]
[D]
[R]
📄 postgres_ext.h
[E]
[D]
[R]
📄 printf.h
[E]
[D]
[R]
📄 profile.h
[E]
[D]
[R]
📁 protocols
Open
[D]
[R]
📁 pspell
Open
[D]
[R]
📄 pthread.h
[E]
[D]
[R]
📄 pty.h
[E]
[D]
[R]
📄 pwd.h
[E]
[D]
[R]
📁 python2.7
Open
[D]
[R]
📁 python3.6m
Open
[D]
[R]
📁 rdma
Open
[D]
[R]
📄 re_comp.h
[E]
[D]
[R]
📁 readline
Open
[D]
[R]
📄 recode.h
[E]
[D]
[R]
📄 recodext.h
[E]
[D]
[R]
📄 regex.h
[E]
[D]
[R]
📄 regexp.h
[E]
[D]
[R]
📄 resolv.h
[E]
[D]
[R]
📁 rpc
Open
[D]
[R]
📁 rpcsvc
Open
[D]
[R]
📁 rpm
Open
[D]
[R]
📁 sasl
Open
[D]
[R]
📄 sched.h
[E]
[D]
[R]
📁 scsi
Open
[D]
[R]
📄 search.h
[E]
[D]
[R]
📁 selinux
Open
[D]
[R]
📄 semaphore.h
[E]
[D]
[R]
📁 sensors
Open
[D]
[R]
📁 sepol
Open
[D]
[R]
📄 setjmp.h
[E]
[D]
[R]
📄 sgtty.h
[E]
[D]
[R]
📄 shadow.h
[E]
[D]
[R]
📄 signal.h
[E]
[D]
[R]
📄 slapi-plugin.h
[E]
[D]
[R]
📁 sound
Open
[D]
[R]
📄 spawn.h
[E]
[D]
[R]
📄 sql3types.h
[E]
[D]
[R]
📄 sqlca.h
[E]
[D]
[R]
📄 sqlda-compat.h
[E]
[D]
[R]
📄 sqlda-native.h
[E]
[D]
[R]
📄 sqlda.h
[E]
[D]
[R]
📄 sqlite3.h
[E]
[D]
[R]
📄 sqlite3ext.h
[E]
[D]
[R]
📄 stab.h
[E]
[D]
[R]
📄 stdc-predef.h
[E]
[D]
[R]
📄 stdint.h
[E]
[D]
[R]
📄 stdio.h
[E]
[D]
[R]
📄 stdio_ext.h
[E]
[D]
[R]
📄 stdlib.h
[E]
[D]
[R]
📄 string.h
[E]
[D]
[R]
📄 strings.h
[E]
[D]
[R]
📁 sys
Open
[D]
[R]
📄 syscall.h
[E]
[D]
[R]
📄 sysexits.h
[E]
[D]
[R]
📄 syslog.h
[E]
[D]
[R]
📄 tar.h
[E]
[D]
[R]
📄 tcpd.h
[E]
[D]
[R]
📄 term.h
[E]
[D]
[R]
📄 term_entry.h
[E]
[D]
[R]
📄 termcap.h
[E]
[D]
[R]
📄 termio.h
[E]
[D]
[R]
📄 termios.h
[E]
[D]
[R]
📄 tgmath.h
[E]
[D]
[R]
📄 thread_db.h
[E]
[D]
[R]
📄 tic.h
[E]
[D]
[R]
📄 tidy.h
[E]
[D]
[R]
📄 tidybuffio.h
[E]
[D]
[R]
📄 tidyenum.h
[E]
[D]
[R]
📄 tidyplatform.h
[E]
[D]
[R]
📄 tiff.h
[E]
[D]
[R]
📄 tiffconf-64.h
[E]
[D]
[R]
📄 tiffconf.h
[E]
[D]
[R]
📄 tiffio.h
[E]
[D]
[R]
📄 tiffio.hxx
[E]
[D]
[R]
📄 tiffvers.h
[E]
[D]
[R]
📄 time.h
[E]
[D]
[R]
📄 ttyent.h
[E]
[D]
[R]
📁 uapi
Open
[D]
[R]
📁 ucd-snmp
Open
[D]
[R]
📄 uchar.h
[E]
[D]
[R]
📄 ucontext.h
[E]
[D]
[R]
📄 ulimit.h
[E]
[D]
[R]
📄 unctrl.h
[E]
[D]
[R]
📁 unicode
Open
[D]
[R]
📄 unistd.h
[E]
[D]
[R]
📄 ustat.h
[E]
[D]
[R]
📄 utime.h
[E]
[D]
[R]
📄 utmp.h
[E]
[D]
[R]
📄 utmpx.h
[E]
[D]
[R]
📁 uuid
Open
[D]
[R]
📄 values.h
[E]
[D]
[R]
📄 verto-module.h
[E]
[D]
[R]
📄 verto.h
[E]
[D]
[R]
📁 video
Open
[D]
[R]
📁 vpx
Open
[D]
[R]
📄 wait.h
[E]
[D]
[R]
📄 wchar.h
[E]
[D]
[R]
📄 wctype.h
[E]
[D]
[R]
📁 webp
Open
[D]
[R]
📄 wordexp.h
[E]
[D]
[R]
📁 xcb
Open
[D]
[R]
📁 xen
Open
[D]
[R]
📄 xlocale.h
[E]
[D]
[R]
📄 zconf.h
[E]
[D]
[R]
📄 zlib.h
[E]
[D]
[R]
Editing: pcre_scanner.h
// Copyright (c) 2005, Google Inc. // All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are // met: // // * Redistributions of source code must retain the above copyright // notice, this list of conditions and the following disclaimer. // * Redistributions in binary form must reproduce the above // copyright notice, this list of conditions and the following disclaimer // in the documentation and/or other materials provided with the // distribution. // * Neither the name of Google Inc. nor the names of its // contributors may be used to endorse or promote products derived from // this software without specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // // Author: Sanjay Ghemawat // // Regular-expression based scanner for parsing an input stream. // // Example 1: parse a sequence of "var = number" entries from input: // // Scanner scanner(input); // string var; // int number; // scanner.SetSkipExpression("\\s+"); // Skip any white space we encounter // while (scanner.Consume("(\\w+) = (\\d+)", &var, &number)) { // ...; // } #ifndef _PCRE_SCANNER_H #define _PCRE_SCANNER_H #include <assert.h> #include <string> #include <vector> #include <pcrecpp.h> #include <pcre_stringpiece.h> namespace pcrecpp { class PCRECPP_EXP_DEFN Scanner { public: Scanner(); explicit Scanner(const std::string& input); ~Scanner(); // Return current line number. The returned line-number is // one-based. I.e. it returns 1 + the number of consumed newlines. // // Note: this method may be slow. It may take time proportional to // the size of the input. int LineNumber() const; // Return the byte-offset that the scanner is looking in the // input data; int Offset() const; // Return true iff the start of the remaining input matches "re" bool LookingAt(const RE& re) const; // Return true iff all of the following are true // a. the start of the remaining input matches "re", // b. if any arguments are supplied, matched sub-patterns can be // parsed and stored into the arguments. // If it returns true, it skips over the matched input and any // following input that matches the "skip" regular expression. bool Consume(const RE& re, const Arg& arg0 = RE::no_arg, const Arg& arg1 = RE::no_arg, const Arg& arg2 = RE::no_arg // TODO: Allow more arguments? ); // Set the "skip" regular expression. If after consuming some data, // a prefix of the input matches this RE, it is automatically // skipped. For example, a programming language scanner would use // a skip RE that matches white space and comments. // // scanner.SetSkipExpression("\\s+|//.*|/[*](.|\n)*?[*]/"); // // Skipping repeats as long as it succeeds. We used to let people do // this by writing "(...)*" in the regular expression, but that added // up to lots of recursive calls within the pcre library, so now we // control repetition explicitly via the function call API. // // You can pass NULL for "re" if you do not want any data to be skipped. void Skip(const char* re); // DEPRECATED; does *not* repeat void SetSkipExpression(const char* re); // Temporarily pause "skip"ing. This // Skip("Foo"); code ; DisableSkip(); code; EnableSkip() // is similar to // Skip("Foo"); code ; Skip(NULL); code ; Skip("Foo"); // but avoids creating/deleting new RE objects. void DisableSkip(); // Reenable previously paused skipping. Any prefix of the input // that matches the skip pattern is immediately dropped. void EnableSkip(); /***** Special wrappers around SetSkip() for some common idioms *****/ // Arranges to skip whitespace, C comments, C++ comments. // The overall RE is a disjunction of the following REs: // \\s whitespace // //.*\n C++ comment // /[*](.|\n)*?[*]/ C comment (x*? means minimal repetitions of x) // We get repetition via the semantics of SetSkipExpression, not by using * void SkipCXXComments() { SetSkipExpression("\\s|//.*\n|/[*](?:\n|.)*?[*]/"); } void set_save_comments(bool comments) { save_comments_ = comments; } bool save_comments() { return save_comments_; } // Append to vector ranges the comments found in the // byte range [start,end] (inclusive) of the input data. // Only comments that were extracted entirely within that // range are returned: no range splitting of atomically-extracted // comments is performed. void GetComments(int start, int end, std::vector<StringPiece> *ranges); // Append to vector ranges the comments added // since the last time this was called. This // functionality is provided for efficiency when // interleaving scanning with parsing. void GetNextComments(std::vector<StringPiece> *ranges); private: std::string data_; // All the input data StringPiece input_; // Unprocessed input RE* skip_; // If non-NULL, RE for skipping input bool should_skip_; // If true, use skip_ bool skip_repeat_; // If true, repeat skip_ as long as it works bool save_comments_; // If true, aggregate the skip expression // the skipped comments // TODO: later consider requiring that the StringPieces be added // in order by their start position std::vector<StringPiece> *comments_; // the offset into comments_ that has been returned by GetNextComments int comments_offset_; // helper function to consume *skip_ and honour // save_comments_ void ConsumeSkip(); }; } // namespace pcrecpp #endif /* _PCRE_SCANNER_H */
Save