php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
base.h File Reference

Go to the source code of this file.

Data Structures

struct  lxb_encoding_ctx_utf_8_t
 
struct  lxb_encoding_ctx_gb18030_t
 
struct  lxb_encoding_ctx_euc_jp_t
 
struct  lxb_encoding_ctx_2022_jp_t
 
struct  lxb_encoding_decode_t
 
struct  lxb_encoding_encode_t
 
struct  lxb_encoding_data
 
struct  lxb_encoding_single_index_t
 
struct  lxb_encoding_range_index_t
 

Macros

#define LXB_ENCODING_VERSION_MAJOR   2
 
#define LXB_ENCODING_VERSION_MINOR   0
 
#define LXB_ENCODING_VERSION_PATCH   1
 
#define LXB_ENCODING_VERSION_STRING
 
#define LXB_ENCODING_REPLACEMENT_BYTES   ((lxb_char_t *) "\xEF\xBF\xBD")
 
#define LXB_ENCODING_REPLACEMENT_BUFFER_LEN   1
 
#define LXB_ENCODING_REPLACEMENT_BUFFER    (&(const lxb_codepoint_t) {LXB_ENCODING_REPLACEMENT_CODEPOINT})
 

Typedefs

typedef struct lxb_encoding_data lxb_encoding_data_t
 
typedef lxb_status_t(* lxb_encoding_encode_f) (lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp, const lxb_codepoint_t *end)
 
typedef lxb_status_t(* lxb_encoding_decode_f) (lxb_encoding_decode_t *ctx, const lxb_char_t **data, const lxb_char_t *end)
 
typedef int8_t(* lxb_encoding_encode_single_f) (lxb_encoding_encode_t *ctx, lxb_char_t **data, const lxb_char_t *end, lxb_codepoint_t cp)
 
typedef lxb_codepoint_t(* lxb_encoding_decode_single_f) (lxb_encoding_decode_t *ctx, const lxb_char_t **data, const lxb_char_t *end)
 
typedef lxb_encoding_single_index_t lxb_encoding_multi_index_t
 

Enumerations

enum  { LXB_ENCODING_REPLACEMENT_SIZE = 0x03 , LXB_ENCODING_REPLACEMENT_CODEPOINT = 0xFFFD , LXB_ENCODING_MAX_CODEPOINT = 0x10FFFF , LXB_ENCODING_ERROR_CODEPOINT = 0x1FFFFF }
 
enum  { LXB_ENCODING_ENCODE_OK = 0x00 , LXB_ENCODING_ENCODE_ERROR = -0x01 , LXB_ENCODING_ENCODE_SMALL_BUFFER = -0x02 }
 
enum  { LXB_ENCODING_DECODE_MAX_CODEPOINT = LXB_ENCODING_MAX_CODEPOINT , LXB_ENCODING_DECODE_ERROR = LXB_ENCODING_ERROR_CODEPOINT , LXB_ENCODING_DECODE_CONTINUE = 0x2FFFFF }
 
enum  {
  LXB_ENCODING_DECODE_2022_JP_ASCII = 0x00 , LXB_ENCODING_DECODE_2022_JP_ROMAN , LXB_ENCODING_DECODE_2022_JP_KATAKANA , LXB_ENCODING_DECODE_2022_JP_LEAD ,
  LXB_ENCODING_DECODE_2022_JP_TRAIL , LXB_ENCODING_DECODE_2022_JP_ESCAPE_START , LXB_ENCODING_DECODE_2022_JP_ESCAPE , LXB_ENCODING_DECODE_2022_JP_UNSET
}
 
enum  { LXB_ENCODING_ENCODE_2022_JP_ASCII = 0x00 , LXB_ENCODING_ENCODE_2022_JP_ROMAN , LXB_ENCODING_ENCODE_2022_JP_JIS0208 }
 

Macro Definition Documentation

◆ LXB_ENCODING_REPLACEMENT_BUFFER

#define LXB_ENCODING_REPLACEMENT_BUFFER    (&(const lxb_codepoint_t) {LXB_ENCODING_REPLACEMENT_CODEPOINT})

Definition at line 31 of file base.h.

◆ LXB_ENCODING_REPLACEMENT_BUFFER_LEN

#define LXB_ENCODING_REPLACEMENT_BUFFER_LEN   1

Definition at line 30 of file base.h.

◆ LXB_ENCODING_REPLACEMENT_BYTES

#define LXB_ENCODING_REPLACEMENT_BYTES   ((lxb_char_t *) "\xEF\xBF\xBD")

Definition at line 28 of file base.h.

◆ LXB_ENCODING_VERSION_MAJOR

#define LXB_ENCODING_VERSION_MAJOR   2

Definition at line 18 of file base.h.

◆ LXB_ENCODING_VERSION_MINOR

#define LXB_ENCODING_VERSION_MINOR   0

Definition at line 19 of file base.h.

◆ LXB_ENCODING_VERSION_PATCH

#define LXB_ENCODING_VERSION_PATCH   1

Definition at line 20 of file base.h.

◆ LXB_ENCODING_VERSION_STRING

#define LXB_ENCODING_VERSION_STRING
Value:
LEXBOR_STRINGIZE(LXB_ENCODING_VERSION_MINOR) "." \
LEXBOR_STRINGIZE(LXB_ENCODING_VERSION_PATCH)
#define LEXBOR_STRINGIZE(x)
Definition def.h:11
#define LXB_ENCODING_VERSION_PATCH
Definition base.h:20
#define LXB_ENCODING_VERSION_MINOR
Definition base.h:19
#define LXB_ENCODING_VERSION_MAJOR
Definition base.h:18

Definition at line 22 of file base.h.

Typedef Documentation

◆ lxb_encoding_data_t

Definition at line 103 of file base.h.

◆ lxb_encoding_decode_f

typedef lxb_status_t(* lxb_encoding_decode_f) (lxb_encoding_decode_t *ctx, const lxb_char_t **data, const lxb_char_t *end)

Definition at line 177 of file base.h.

◆ lxb_encoding_decode_single_f

typedef lxb_codepoint_t(* lxb_encoding_decode_single_f) (lxb_encoding_decode_t *ctx, const lxb_char_t **data, const lxb_char_t *end)

Definition at line 185 of file base.h.

◆ lxb_encoding_encode_f

typedef lxb_status_t(* lxb_encoding_encode_f) (lxb_encoding_encode_t *ctx, const lxb_codepoint_t **cp, const lxb_codepoint_t *end)

Definition at line 173 of file base.h.

◆ lxb_encoding_encode_single_f

typedef int8_t(* lxb_encoding_encode_single_f) (lxb_encoding_encode_t *ctx, lxb_char_t **data, const lxb_char_t *end, lxb_codepoint_t cp)

Definition at line 181 of file base.h.

◆ lxb_encoding_multi_index_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
LXB_ENCODING_ENCODE_OK 
LXB_ENCODING_ENCODE_ERROR 
LXB_ENCODING_ENCODE_SMALL_BUFFER 

Definition at line 45 of file base.h.

◆ anonymous enum

anonymous enum
Enumerator
LXB_ENCODING_DECODE_MAX_CODEPOINT 
LXB_ENCODING_DECODE_ERROR 
LXB_ENCODING_DECODE_CONTINUE 

Definition at line 51 of file base.h.

◆ anonymous enum

anonymous enum
Enumerator
LXB_ENCODING_REPLACEMENT_SIZE 
LXB_ENCODING_REPLACEMENT_CODEPOINT 
LXB_ENCODING_MAX_CODEPOINT 
LXB_ENCODING_ERROR_CODEPOINT 

Definition at line 38 of file base.h.

◆ anonymous enum

anonymous enum
Enumerator
LXB_ENCODING_ENCODE_2022_JP_ASCII 
LXB_ENCODING_ENCODE_2022_JP_ROMAN 
LXB_ENCODING_ENCODE_2022_JP_JIS0208 

Definition at line 68 of file base.h.

◆ anonymous enum

anonymous enum
Enumerator
LXB_ENCODING_DECODE_2022_JP_ASCII 
LXB_ENCODING_DECODE_2022_JP_ROMAN 
LXB_ENCODING_DECODE_2022_JP_KATAKANA 
LXB_ENCODING_DECODE_2022_JP_LEAD 
LXB_ENCODING_DECODE_2022_JP_TRAIL 
LXB_ENCODING_DECODE_2022_JP_ESCAPE_START 
LXB_ENCODING_DECODE_2022_JP_ESCAPE 
LXB_ENCODING_DECODE_2022_JP_UNSET 

Definition at line 57 of file base.h.