構成 | マクロ定義 | 列挙型 | 関数 | 変数

src/third_party/jscre/pcre_internal.h

#include "pcre.h"

ソースコードを見る。

構成

struct  JSRegExp

マクロ定義

#define ctype_space   0x01
#define ctype_xdigit   0x08
#define ctype_word   0x10
#define cbit_space   0
#define cbit_digit   32
#define cbit_word   64
#define cbit_length   96
#define lcc_offset   0
#define fcc_offset   128
#define cbits_offset   256
#define ctypes_offset   (cbits_offset + cbit_length)
#define tables_length   (ctypes_offset + 128)
#define ASSERT(x)   do { } while(0)
#define ASSERT_NOT_REACHED()   do {} while(0)
#define LINK_SIZE   2
#define DPRINTF(p)
#define MAX_PATTERN_SIZE   (1 << 16)
#define REQ_IGNORE_CASE   0x0100
#define REQ_VARY   0x0200
#define XCL_NOT   0x01
#define XCL_MAP   0x02
#define XCL_END   0
#define XCL_SINGLE   1
#define XCL_RANGE   2
#define FOR_EACH_OPCODE(macro)
#define OPCODE_ENUM_VALUE(opcode)   OP_##opcode,
#define EXTRACT_BASIC_MAX   100
#define kjs_pcre_utf8_table1_size   6

列挙型

enum  RegExpOptions {
  UseFirstByteOptimizationOption = 0x40000000, UseRequiredByteOptimizationOption = 0x20000000, UseMultiLineFirstByteOptimizationOption = 0x10000000, IsAnchoredOption = 0x02000000,
  IgnoreCaseOption = 0x00000001, MatchAcrossMultipleLinesOption = 0x00000002
}
enum  {
  ESC_B = 1, ESC_b, ESC_D, ESC_d,
  ESC_S, ESC_s, ESC_W, ESC_w,
  ESC_REF
}
enum  { FOR_EACH_OPCODE = (OPCODE_ENUM_VALUE) }

関数

static void put2ByteValue (unsigned char *opcodePtr, int value)
static int get2ByteValue (const unsigned char *opcodePtr)
static void put2ByteValueAndAdvance (unsigned char *&opcodePtr, int value)
static void putLinkValueAllowZero (unsigned char *opcodePtr, int value)
static int getLinkValueAllowZero (const unsigned char *opcodePtr)
static void putLinkValue (unsigned char *opcodePtr, int value)
static int getLinkValue (const unsigned char *opcodePtr)
static void putLinkValueAndAdvance (unsigned char *&opcodePtr, int value)
static void putLinkValueAllowZeroAndAdvance (unsigned char *&opcodePtr, int value)
static unsigned char toLowerCase (unsigned char c)
static unsigned char flipCase (unsigned char c)
static unsigned char classBitmapForChar (unsigned char c)
static unsigned char charTypeForChar (unsigned char c)
static bool isWordChar (UChar c)
static bool isSpaceChar (UChar c)
static bool isNewline (UChar nl)
static bool isBracketStartOpcode (unsigned char opcode)
static void advanceToEndOfBracket (const unsigned char *&opcodePtr)
int kjs_pcre_ucp_othercase (unsigned)
bool kjs_pcre_xclass (int, const unsigned char *)

変数

const int kjs_pcre_utf8_table1 [6]
const int kjs_pcre_utf8_table2 [6]
const int kjs_pcre_utf8_table3 [6]
const unsigned char kjs_pcre_utf8_table4 [0x40]
const unsigned char kjs_pcre_default_tables [tables_length]

マクロ定義

#define ASSERT (   x  )     do { } while(0)

pcre_internal.h73 行で定義されています。

参照元 advanceToEndOfBracket(), getLinkValue(), put2ByteValue(), と putLinkValue().

#define ASSERT_NOT_REACHED (  )     do {} while(0)

pcre_internal.h74 行で定義されています。

参照元 compileBracket(), と match().

#define cbit_digit   32

pcre_internal.h57 行で定義されています。

参照元 compileBranch().

#define cbit_length   96

pcre_internal.h59 行で定義されています。

#define cbit_space   0

pcre_internal.h56 行で定義されています。

参照元 compileBranch().

#define cbit_word   64

pcre_internal.h58 行で定義されています。

参照元 compileBranch().

#define cbits_offset   256

pcre_internal.h66 行で定義されています。

#define ctype_space   0x01

pcre_internal.h49 行で定義されています。

参照元 isSpaceChar().

#define ctype_word   0x10

pcre_internal.h51 行で定義されています。

#define ctype_xdigit   0x08

pcre_internal.h50 行で定義されています。

#define ctypes_offset   (cbits_offset + cbit_length)

pcre_internal.h67 行で定義されています。

#define DPRINTF (   p  ) 

pcre_internal.h103 行で定義されています。

参照元 jsRegExpExecute(), と match().

#define EXTRACT_BASIC_MAX   100

pcre_internal.h318 行で定義されています。

参照元 branchNeedsLineStart(), calculateCompiledPatternLength(), compileBranch(), と match().

#define fcc_offset   128

pcre_internal.h65 行で定義されています。

#define FOR_EACH_OPCODE (   macro  ) 

pcre_internal.h220 行で定義されています。

#define kjs_pcre_utf8_table1_size   6

pcre_internal.h343 行で定義されています。

#define lcc_offset   0

pcre_internal.h64 行で定義されています。

#define LINK_SIZE   2

pcre_internal.h87 行で定義されています。

#define MAX_PATTERN_SIZE   (1 << 16)
#define OPCODE_ENUM_VALUE (   opcode  )     OP_##opcode,

pcre_internal.h302 行で定義されています。

#define REQ_IGNORE_CASE   0x0100

pcre_internal.h187 行で定義されています。

参照元 compileBranch(), jsRegExpCompile(), と jsRegExpExecute().

#define REQ_VARY   0x0200

pcre_internal.h188 行で定義されています。

参照元 compileBracket(), compileBranch(), と jsRegExpCompile().

#define tables_length   (ctypes_offset + 128)

pcre_internal.h68 行で定義されています。

#define XCL_END   0

pcre_internal.h198 行で定義されています。

#define XCL_MAP   0x02

pcre_internal.h196 行で定義されています。

参照元 kjs_pcre_xclass().

#define XCL_NOT   0x01

pcre_internal.h195 行で定義されています。

参照元 compileBranch().

#define XCL_RANGE   2

pcre_internal.h200 行で定義されています。

参照元 kjs_pcre_xclass().

#define XCL_SINGLE   1

pcre_internal.h199 行で定義されています。

参照元 kjs_pcre_xclass().


列挙型

anonymous enum
列挙型の値:
ESC_B 
ESC_b 
ESC_D 
ESC_d 
ESC_S 
ESC_s 
ESC_W 
ESC_w 
ESC_REF 

pcre_internal.h212 行で定義されています。

anonymous enum
列挙型の値:
FOR_EACH_OPCODE 

pcre_internal.h303 行で定義されています。

列挙型の値:
UseFirstByteOptimizationOption 
UseRequiredByteOptimizationOption 
UseMultiLineFirstByteOptimizationOption 
IsAnchoredOption 
IgnoreCaseOption 
MatchAcrossMultipleLinesOption 

pcre_internal.h175 行で定義されています。


関数

static void advanceToEndOfBracket ( const unsigned char *&  opcodePtr  )  [inline, static]
static unsigned char charTypeForChar ( unsigned char  c  )  [inline, static]

pcre_internal.h370 行で定義されています。

参照先 kjs_pcre_default_tables.

参照元 isSpaceChar(), と isWordChar().

static unsigned char classBitmapForChar ( unsigned char  c  )  [inline, static]

pcre_internal.h364 行で定義されています。

参照先 kjs_pcre_default_tables.

参照元 compileBranch().

static unsigned char flipCase ( unsigned char  c  )  [inline, static]

pcre_internal.h358 行で定義されています。

参照先 kjs_pcre_default_tables.

参照元 compileBranch(), jsRegExpCompile(), と jsRegExpExecute().

static int get2ByteValue ( const unsigned char *  opcodePtr  )  [inline, static]

pcre_internal.h126 行で定義されています。

参照元 branchNeedsLineStart(), getLinkValueAllowZero(), と match().

static int getLinkValue ( const unsigned char *  opcodePtr  )  [inline, static]
static int getLinkValueAllowZero ( const unsigned char *  opcodePtr  )  [inline, static]

pcre_internal.h142 行で定義されています。

参照先 get2ByteValue().

参照元 compileBracket(), compileBranch(), と getLinkValue().

static bool isBracketStartOpcode ( unsigned char  opcode  )  [inline, static]

pcre_internal.h391 行で定義されています。

参照元 advanceToEndOfBracket().

static bool isNewline ( UChar  nl  )  [inline, static]

pcre_internal.h386 行で定義されています。

参照元 match(), と tryFirstByteOptimization().

static bool isSpaceChar ( UChar  c  )  [inline, static]

pcre_internal.h381 行で定義されています。

参照先 charTypeForChar(), と ctype_space.

参照元 match().

static bool isWordChar ( UChar  c  )  [inline, static]

pcre_internal.h376 行で定義されています。

参照先 charTypeForChar().

参照元 match().

int kjs_pcre_ucp_othercase ( unsigned   ) 
bool kjs_pcre_xclass ( int  ,
const unsigned char *   
)

pcre_xclass.cpp76 行で定義されています。

参照先 getUTF8CharAndAdvancePointer(), XCL_MAP, XCL_RANGE, と XCL_SINGLE.

参照元 match().

static void put2ByteValue ( unsigned char *  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h119 行で定義されています。

参照先 ASSERT.

参照元 compileBranch(), put2ByteValueAndAdvance(), と putLinkValueAllowZero().

static void put2ByteValueAndAdvance ( unsigned char *&  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h131 行で定義されています。

参照先 put2ByteValue().

参照元 compileBranch().

static void putLinkValue ( unsigned char *  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h149 行で定義されています。

参照先 ASSERT, と putLinkValueAllowZero().

参照元 compileBracket(), compileBranch(), と putLinkValueAndAdvance().

static void putLinkValueAllowZero ( unsigned char *  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h137 行で定義されています。

参照先 put2ByteValue().

参照元 compileBracket(), putLinkValue(), と putLinkValueAllowZeroAndAdvance().

static void putLinkValueAllowZeroAndAdvance ( unsigned char *&  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h168 行で定義されています。

参照先 putLinkValueAllowZero().

参照元 compileBranch().

static void putLinkValueAndAdvance ( unsigned char *&  opcodePtr,
int  value 
) [inline, static]

pcre_internal.h162 行で定義されています。

参照先 putLinkValue().

参照元 compileBranch().

static unsigned char toLowerCase ( unsigned char  c  )  [inline, static]

pcre_internal.h352 行で定義されています。

参照先 kjs_pcre_default_tables.

参照元 jsRegExpExecute(), match(), と tryFirstByteOptimization().


変数

const unsigned char kjs_pcre_default_tables[tables_length]

pcre_chartables.c13 行で定義されています。

参照元 charTypeForChar(), classBitmapForChar(), flipCase(), と toLowerCase().

const int kjs_pcre_utf8_table1[6]

pcre_tables.cpp52 行で定義されています。

参照元 calculateCompiledPatternLength(), と encodeUTF8().

const int kjs_pcre_utf8_table2[6]

pcre_tables.cpp58 行で定義されています。

参照元 encodeUTF8().

const int kjs_pcre_utf8_table3[6]

pcre_tables.cpp59 行で定義されています。

参照元 getUTF8CharAndAdvancePointer(), と getUTF8CharAndIncrementLength().

const unsigned char kjs_pcre_utf8_table4[0x40]

pcre_tables.cpp65 行で定義されています。

参照元 getUTF8CharAndAdvancePointer(), と getUTF8CharAndIncrementLength().

 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義