| 6 |
and semantics are as close as possible to those of the Perl 5 language. |
and semantics are as close as possible to those of the Perl 5 language. |
| 7 |
|
|
| 8 |
Written by Philip Hazel |
Written by Philip Hazel |
| 9 |
Copyright (c) 1997-2005 University of Cambridge |
Copyright (c) 1997-2007 University of Cambridge |
| 10 |
|
|
| 11 |
----------------------------------------------------------------------------- |
----------------------------------------------------------------------------- |
| 12 |
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
| 41 |
/* This file contains a private PCRE function that converts an ordinal |
/* This file contains a private PCRE function that converts an ordinal |
| 42 |
character value into a UTF8 string. */ |
character value into a UTF8 string. */ |
| 43 |
|
|
| 44 |
|
#ifdef HAVE_CONFIG_H |
| 45 |
|
#include <config.h> |
| 46 |
|
#endif |
| 47 |
|
|
| 48 |
#include "pcre_internal.h" |
#include "pcre_internal.h" |
| 49 |
|
|
| 50 |
|
|
| 62 |
Returns: number of characters placed in the buffer |
Returns: number of characters placed in the buffer |
| 63 |
*/ |
*/ |
| 64 |
|
|
| 65 |
PCRE_EXPORT int |
int |
| 66 |
_pcre_ord2utf8(int cvalue, uschar *buffer) |
_pcre_ord2utf8(int cvalue, uschar *buffer) |
| 67 |
{ |
{ |
| 68 |
|
#ifdef SUPPORT_UTF8 |
| 69 |
register int i, j; |
register int i, j; |
| 70 |
for (i = 0; i < _pcre_utf8_table1_size; i++) |
for (i = 0; i < _pcre_utf8_table1_size; i++) |
| 71 |
if (cvalue <= _pcre_utf8_table1[i]) break; |
if (cvalue <= _pcre_utf8_table1[i]) break; |
| 77 |
} |
} |
| 78 |
*buffer = _pcre_utf8_table2[i] | cvalue; |
*buffer = _pcre_utf8_table2[i] | cvalue; |
| 79 |
return i + 1; |
return i + 1; |
| 80 |
|
#else |
| 81 |
|
return 0; /* Keep compiler happy; this function won't ever be */ |
| 82 |
|
#endif /* called when SUPPORT_UTF8 is not defined. */ |
| 83 |
} |
} |
| 84 |
|
|
| 85 |
/* End of pcre_ord2utf8.c */ |
/* End of pcre_ord2utf8.c */ |