comparison src/regexp.c @ 856:8cd729851562 v7.0g

updated for version 7.0g
author vimboss
date Sun, 30 Apr 2006 18:54:39 +0000
parents 2c885fab04e3
children b2dcb8457067
comparison
equal deleted inserted replaced
855:d2a4f08396fe 856:8cd729851562
99 * 99 *
100 * 100 *
101 * +----------------------+ 101 * +----------------------+
102 * V | 102 * V |
103 * <aa>\+ BRANCH <aa> --> BRANCH --> BACK BRANCH --> NOTHING --> END 103 * <aa>\+ BRANCH <aa> --> BRANCH --> BACK BRANCH --> NOTHING --> END
104 * | | ^ ^ 104 * | | ^ ^
105 * | +-----------+ | 105 * | +-----------+ |
106 * +--------------------------------------------------+ 106 * +--------------------------------------------------+
107 * 107 *
108 * 108 *
109 * +-------------------------+ 109 * +-------------------------+
110 * V | 110 * V |
1928 case 'U': i = gethexchrs(8); break; 1928 case 'U': i = gethexchrs(8); break;
1929 default: i = -1; break; 1929 default: i = -1; break;
1930 } 1930 }
1931 1931
1932 if (i < 0) 1932 if (i < 0)
1933 EMSG_M_RET_NULL( 1933 EMSG_M_RET_NULL(
1934 _("E678: Invalid character after %s%%[dxouU]"), 1934 _("E678: Invalid character after %s%%[dxouU]"),
1935 reg_magic == MAGIC_ALL); 1935 reg_magic == MAGIC_ALL);
1936 #ifdef FEAT_MBYTE 1936 #ifdef FEAT_MBYTE
1937 if (use_multibytecode(i)) 1937 if (use_multibytecode(i))
1938 ret = regnode(MULTIBYTECODE); 1938 ret = regnode(MULTIBYTECODE);
2832 /* 2832 /*
2833 * Get and return the value of the hex string at the current position. 2833 * Get and return the value of the hex string at the current position.
2834 * Return -1 if there is no valid hex number. 2834 * Return -1 if there is no valid hex number.
2835 * The position is updated: 2835 * The position is updated:
2836 * blahblah\%x20asdf 2836 * blahblah\%x20asdf
2837 * before-^ ^-after 2837 * before-^ ^-after
2838 * The parameter controls the maximum number of input characters. This will be 2838 * The parameter controls the maximum number of input characters. This will be
2839 * 2 when reading a \%x20 sequence and 4 when reading a \%u20AC sequence. 2839 * 2 when reading a \%x20 sequence and 4 when reading a \%u20AC sequence.
2840 */ 2840 */
2841 static int 2841 static int
2842 gethexchrs(maxinputlen) 2842 gethexchrs(maxinputlen)
2891 * get and return the value of the octal string immediately after the current 2891 * get and return the value of the octal string immediately after the current
2892 * position. Return -1 for invalid, or 0-255 for valid. Smart enough to handle 2892 * position. Return -1 for invalid, or 0-255 for valid. Smart enough to handle
2893 * numbers > 377 correctly (for example, 400 is treated as 40) and doesn't 2893 * numbers > 377 correctly (for example, 400 is treated as 40) and doesn't
2894 * treat 8 or 9 as recognised characters. Position is updated: 2894 * treat 8 or 9 as recognised characters. Position is updated:
2895 * blahblah\%o210asdf 2895 * blahblah\%o210asdf
2896 * before-^ ^-after 2896 * before-^ ^-after
2897 */ 2897 */
2898 static int 2898 static int
2899 getoctchrs() 2899 getoctchrs()
2900 { 2900 {
2901 int nr = 0; 2901 int nr = 0;