PHP  
 PHP: Test and Code Coverage Analysis
downloads | QA | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
 

LTP GCOV extension - code coverage report
Current view: directory - mbstring/oniguruma - regsyntax.c
Test: PHP Code Coverage
Date: 2009-11-19 Instrumented lines: 44
Code covered: 0.0 % Executed lines: 0
Legend: not executed executed

       1                 : /**********************************************************************
       2                 :   regsyntax.c -  Oniguruma (regular expression library)
       3                 : **********************************************************************/
       4                 : /*-
       5                 :  * Copyright (c) 2002-2009  K.Kosako  <sndgk393 AT ybb DOT ne DOT jp>
       6                 :  * All rights reserved.
       7                 :  *
       8                 :  * Redistribution and use in source and binary forms, with or without
       9                 :  * modification, are permitted provided that the following conditions
      10                 :  * are met:
      11                 :  * 1. Redistributions of source code must retain the above copyright
      12                 :  *    notice, this list of conditions and the following disclaimer.
      13                 :  * 2. Redistributions in binary form must reproduce the above copyright
      14                 :  *    notice, this list of conditions and the following disclaimer in the
      15                 :  *    documentation and/or other materials provided with the distribution.
      16                 :  *
      17                 :  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
      18                 :  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
      19                 :  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
      20                 :  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
      21                 :  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
      22                 :  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
      23                 :  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
      24                 :  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
      25                 :  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
      26                 :  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
      27                 :  * SUCH DAMAGE.
      28                 :  */
      29                 : 
      30                 : #include "regint.h"
      31                 : 
      32                 : OnigSyntaxType OnigSyntaxASIS = {
      33                 :     0
      34                 :   , ONIG_SYN_OP2_INEFFECTIVE_ESCAPE
      35                 :   , 0
      36                 :   , ONIG_OPTION_NONE
      37                 : };
      38                 : 
      39                 : OnigSyntaxType OnigSyntaxPosixBasic = {
      40                 :   ( SYN_POSIX_COMMON_OP | ONIG_SYN_OP_ESC_LPAREN_SUBEXP |
      41                 :     ONIG_SYN_OP_ESC_BRACE_INTERVAL )
      42                 :   , 0
      43                 :   , 0
      44                 :   , ( ONIG_OPTION_SINGLELINE | ONIG_OPTION_MULTILINE )
      45                 : };
      46                 : 
      47                 : OnigSyntaxType OnigSyntaxPosixExtended = {
      48                 :   ( SYN_POSIX_COMMON_OP | ONIG_SYN_OP_LPAREN_SUBEXP |
      49                 :     ONIG_SYN_OP_BRACE_INTERVAL |
      50                 :     ONIG_SYN_OP_PLUS_ONE_INF | ONIG_SYN_OP_QMARK_ZERO_ONE | ONIG_SYN_OP_VBAR_ALT )
      51                 :   , 0
      52                 :   , ( ONIG_SYN_CONTEXT_INDEP_ANCHORS | 
      53                 :       ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS | ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS | 
      54                 :       ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP |
      55                 :       ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC )
      56                 :   , ( ONIG_OPTION_SINGLELINE | ONIG_OPTION_MULTILINE )
      57                 : };
      58                 : 
      59                 : OnigSyntaxType OnigSyntaxEmacs = {
      60                 :   ( ONIG_SYN_OP_DOT_ANYCHAR | ONIG_SYN_OP_BRACKET_CC |
      61                 :     ONIG_SYN_OP_ESC_BRACE_INTERVAL |
      62                 :     ONIG_SYN_OP_ESC_LPAREN_SUBEXP | ONIG_SYN_OP_ESC_VBAR_ALT |
      63                 :     ONIG_SYN_OP_ASTERISK_ZERO_INF | ONIG_SYN_OP_PLUS_ONE_INF |
      64                 :     ONIG_SYN_OP_QMARK_ZERO_ONE | ONIG_SYN_OP_DECIMAL_BACKREF |
      65                 :     ONIG_SYN_OP_LINE_ANCHOR | ONIG_SYN_OP_ESC_CONTROL_CHARS )
      66                 :   , ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR
      67                 :   , ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC
      68                 :   , ONIG_OPTION_NONE
      69                 : };
      70                 : 
      71                 : OnigSyntaxType OnigSyntaxGrep = {
      72                 :   ( ONIG_SYN_OP_DOT_ANYCHAR | ONIG_SYN_OP_BRACKET_CC | ONIG_SYN_OP_POSIX_BRACKET |
      73                 :     ONIG_SYN_OP_ESC_BRACE_INTERVAL | ONIG_SYN_OP_ESC_LPAREN_SUBEXP |
      74                 :     ONIG_SYN_OP_ESC_VBAR_ALT |
      75                 :     ONIG_SYN_OP_ASTERISK_ZERO_INF | ONIG_SYN_OP_ESC_PLUS_ONE_INF |
      76                 :     ONIG_SYN_OP_ESC_QMARK_ZERO_ONE | ONIG_SYN_OP_LINE_ANCHOR |
      77                 :     ONIG_SYN_OP_ESC_W_WORD | ONIG_SYN_OP_ESC_B_WORD_BOUND |
      78                 :     ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END | ONIG_SYN_OP_DECIMAL_BACKREF )
      79                 :   , 0
      80                 :   , ( ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC | ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC )
      81                 :   , ONIG_OPTION_NONE
      82                 : };
      83                 : 
      84                 : OnigSyntaxType OnigSyntaxGnuRegex = {
      85                 :   SYN_GNU_REGEX_OP
      86                 :   , 0
      87                 :   , SYN_GNU_REGEX_BV
      88                 :   , ONIG_OPTION_NONE
      89                 : };
      90                 : 
      91                 : OnigSyntaxType OnigSyntaxJava = {
      92                 :   (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |
      93                 :      ONIG_SYN_OP_ESC_CONTROL_CHARS | ONIG_SYN_OP_ESC_C_CONTROL |
      94                 :      ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 )
      95                 :    & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )
      96                 :   , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE | ONIG_SYN_OP2_QMARK_GROUP_EFFECT |
      97                 :       ONIG_SYN_OP2_OPTION_PERL | ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT |
      98                 :       ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL | ONIG_SYN_OP2_CCLASS_SET_OP |
      99                 :       ONIG_SYN_OP2_ESC_V_VTAB | ONIG_SYN_OP2_ESC_U_HEX4 |
     100                 :       ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY )
     101                 :   , ( SYN_GNU_REGEX_BV | ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND )
     102                 :   , ONIG_OPTION_SINGLELINE
     103                 : };
     104                 : 
     105                 : OnigSyntaxType OnigSyntaxPerl = {
     106                 :   (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |
     107                 :      ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 |
     108                 :      ONIG_SYN_OP_ESC_X_BRACE_HEX8 | ONIG_SYN_OP_ESC_CONTROL_CHARS |
     109                 :      ONIG_SYN_OP_ESC_C_CONTROL )
     110                 :    & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )
     111                 :   , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE |
     112                 :       ONIG_SYN_OP2_QMARK_GROUP_EFFECT | ONIG_SYN_OP2_OPTION_PERL |
     113                 :       ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY |
     114                 :       ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT |
     115                 :       ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS )
     116                 :   , SYN_GNU_REGEX_BV
     117                 :   , ONIG_OPTION_SINGLELINE
     118                 : };
     119                 : 
     120                 : /* Perl + named group */
     121                 : OnigSyntaxType OnigSyntaxPerl_NG = {
     122                 :   (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |
     123                 :      ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 |
     124                 :      ONIG_SYN_OP_ESC_X_BRACE_HEX8 | ONIG_SYN_OP_ESC_CONTROL_CHARS |
     125                 :      ONIG_SYN_OP_ESC_C_CONTROL )
     126                 :    & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )
     127                 :   , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE |
     128                 :       ONIG_SYN_OP2_QMARK_GROUP_EFFECT | ONIG_SYN_OP2_OPTION_PERL |
     129                 :       ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY  |
     130                 :       ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT |
     131                 :       ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS    |
     132                 :       ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP       |
     133                 :       ONIG_SYN_OP2_ESC_K_NAMED_BACKREF        |
     134                 :       ONIG_SYN_OP2_ESC_G_SUBEXP_CALL )
     135                 :   , ( SYN_GNU_REGEX_BV |
     136                 :       ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP |
     137                 :       ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME )
     138                 :   , ONIG_OPTION_SINGLELINE
     139                 : };
     140                 : 
     141                 : 
     142                 : 
     143                 : extern int
     144                 : onig_set_default_syntax(OnigSyntaxType* syntax)
     145               0 : {
     146               0 :   if (IS_NULL(syntax))
     147               0 :     syntax = ONIG_SYNTAX_RUBY;
     148                 : 
     149               0 :   OnigDefaultSyntax = syntax;
     150               0 :   return 0;
     151                 : }
     152                 : 
     153                 : extern void
     154                 : onig_copy_syntax(OnigSyntaxType* to, OnigSyntaxType* from)
     155               0 : {
     156               0 :   *to = *from;
     157               0 : }
     158                 : 
     159                 : extern void
     160                 : onig_set_syntax_op(OnigSyntaxType* syntax, unsigned int op)
     161               0 : {
     162               0 :   syntax->op = op;
     163               0 : }
     164                 : 
     165                 : extern void
     166                 : onig_set_syntax_op2(OnigSyntaxType* syntax, unsigned int op2)
     167               0 : {
     168               0 :   syntax->op2 = op2;
     169               0 : }
     170                 : 
     171                 : extern void
     172                 : onig_set_syntax_behavior(OnigSyntaxType* syntax, unsigned int behavior)
     173               0 : {
     174               0 :   syntax->behavior = behavior;
     175               0 : }
     176                 : 
     177                 : extern void
     178                 : onig_set_syntax_options(OnigSyntaxType* syntax, OnigOptionType options)
     179               0 : {
     180               0 :   syntax->options = options;
     181               0 : }
     182                 : 
     183                 : extern unsigned int
     184                 : onig_get_syntax_op(OnigSyntaxType* syntax)
     185               0 : {
     186               0 :   return syntax->op;
     187                 : }
     188                 : 
     189                 : extern unsigned int
     190                 : onig_get_syntax_op2(OnigSyntaxType* syntax)
     191               0 : {
     192               0 :   return syntax->op2;
     193                 : }
     194                 : 
     195                 : extern unsigned int
     196                 : onig_get_syntax_behavior(OnigSyntaxType* syntax)
     197               0 : {
     198               0 :   return syntax->behavior;
     199                 : }
     200                 : 
     201                 : extern OnigOptionType
     202                 : onig_get_syntax_options(OnigSyntaxType* syntax)
     203               0 : {
     204               0 :   return syntax->options;
     205                 : }
     206                 : 
     207                 : #ifdef USE_VARIABLE_META_CHARS
     208                 : extern int onig_set_meta_char(OnigEncoding enc,
     209                 :                               unsigned int what, OnigCodePoint code)
     210               0 : {
     211               0 :   switch (what) {
     212                 :   case ONIG_META_CHAR_ESCAPE:
     213               0 :     enc->meta_char_table.esc = code;
     214               0 :     break;
     215                 :   case ONIG_META_CHAR_ANYCHAR:
     216               0 :     enc->meta_char_table.anychar = code;
     217               0 :     break;
     218                 :   case ONIG_META_CHAR_ANYTIME:
     219               0 :     enc->meta_char_table.anytime = code;
     220               0 :     break;
     221                 :   case ONIG_META_CHAR_ZERO_OR_ONE_TIME:
     222               0 :     enc->meta_char_table.zero_or_one_time = code;
     223               0 :     break;
     224                 :   case ONIG_META_CHAR_ONE_OR_MORE_TIME:
     225               0 :     enc->meta_char_table.one_or_more_time = code;
     226               0 :     break;
     227                 :   case ONIG_META_CHAR_ANYCHAR_ANYTIME:
     228               0 :     enc->meta_char_table.anychar_anytime = code;
     229               0 :     break;
     230                 :   default:
     231               0 :     return ONIGERR_INVALID_ARGUMENT;
     232                 :     break;
     233                 :   }
     234               0 :   return 0;
     235                 : }
     236                 : #endif /* USE_VARIABLE_META_CHARS */

Generated by: LTP GCOV extension version 1.5

Generated at Thu, 19 Nov 2009 08:20:11 +0000 (5 days ago)

Copyright © 2005-2009 The PHP Group
All rights reserved.