fribidi.h | fribidi.h | |||
---|---|---|---|---|
skipping to change at line 96 | skipping to change at line 96 | |||
/*====================================================================== | /*====================================================================== | |||
* fribidi_get_types() returns bidi type of a string. | * fribidi_get_types() returns bidi type of a string. | |||
*----------------------------------------------------------------------*/ | *----------------------------------------------------------------------*/ | |||
FRIBIDI_API void fribidi_get_types ( /* input */ | FRIBIDI_API void fribidi_get_types ( /* input */ | |||
FriBidiChar *str, | FriBidiChar *str, | |||
FriBidiStrIndex len, | FriBidiStrIndex len, | |||
/* output */ | /* output */ | |||
FriBidiCharType *type); | FriBidiCharType *type); | |||
/*====================================================================== | /*====================================================================== | |||
* fribidi_get_mirror_char() returns the mirrored character, if any. | ||||
*----------------------------------------------------------------------*/ | ||||
FRIBIDI_API fribidi_boolean fribidi_get_mirror_char ( | ||||
/* Input */ | ||||
FriBidiChar ch, | ||||
/* Output */ | ||||
FriBidiChar | ||||
*mirrored_ch); | ||||
/*====================================================================== | ||||
* fribidi_get_mirror_char() returns the mirrored character, if input | * fribidi_get_mirror_char() returns the mirrored character, if input | |||
* character has a mirror, or the input itself. | * character has a mirror, or the input itself. | |||
* if mirrored_ch is NULL, just returns if character has a mirror or not. | * if mirrored_ch is NULL, just returns if character has a mirror or not. | |||
*----------------------------------------------------------------------*/ | *----------------------------------------------------------------------*/ | |||
FRIBIDI_API fribidi_boolean fribidi_get_mirror_char ( /* Input */ | FRIBIDI_API fribidi_boolean fribidi_get_mirror_char ( /* Input */ | |||
FriBidiChar ch, | FriBidiChar ch, | |||
/* Output */ | /* Output */ | |||
FriBidiChar | FriBidiChar | |||
*mirrored_ch); | *mirrored_ch); | |||
End of changes. 1 change blocks. | ||||
10 lines changed or deleted | 0 lines changed or added | |||
fribidi_config.h | fribidi_config.h | |||
---|---|---|---|---|
#define FRIBIDI_PACKAGE "fribidi" | #define FRIBIDI_PACKAGE "fribidi" | |||
#define FRIBIDI_VERSION "0.10.5" | #define FRIBIDI_VERSION "0.10.7" | |||
#define FRIBIDI_MAJOR_VERSION 0 | #define FRIBIDI_MAJOR_VERSION 0 | |||
#define FRIBIDI_MINOR_VERSION 10 | #define FRIBIDI_MINOR_VERSION 10 | |||
#define FRIBIDI_MICRO_VERSION 5 | #define FRIBIDI_MICRO_VERSION 7 | |||
#define FRIBIDI_INTERFACE_VERSION 2 | #define FRIBIDI_INTERFACE_VERSION 2 | |||
#if 0 /* FRIBIDI_NO_CHARSETS */ | #if 0 /* FRIBIDI_NO_CHARSETS */ | |||
#define FRIBIDI_NO_CHARSETS 1 | #define FRIBIDI_NO_CHARSETS 1 | |||
#else /* NOT FRIBIDI_NO_CHARSETS */ | #else /* NOT FRIBIDI_NO_CHARSETS */ | |||
#undef FRIBIDI_NO_CHARSETS | #undef FRIBIDI_NO_CHARSETS | |||
#endif /* FRIBIDI_NO_CHARSETS */ | #endif /* FRIBIDI_NO_CHARSETS */ | |||
#define TOSTR(x) #x | #define TOSTR(x) #x | |||
skipping to change at line 34 | skipping to change at line 34 | |||
#endif | #endif | |||
#define snprintf _snprintf | #define snprintf _snprintf | |||
#else /* NOT WIN32 */ | #else /* NOT WIN32 */ | |||
#define FRIBIDI_API | #define FRIBIDI_API | |||
#endif /* WIN32 */ | #endif /* WIN32 */ | |||
/* __BEGIN_DECLS should be used at the beginning of your declarations, | ||||
* so that C++ compilers don't mangle their names. Use __END_DECLS at | ||||
* the end of C declarations. */ | ||||
#undef __BEGIN_DECLS | ||||
#undef __END_DECLS | ||||
#ifdef __cplusplus | ||||
#define __BEGIN_DECLS extern "C" { | ||||
#define __END_DECLS } | ||||
#else /* NOT __cplusplus */ | ||||
#define __BEGIN_DECLS /* empty */ | ||||
#define __END_DECLS /* empty */ | ||||
#endif /* __cplusplus */ | ||||
#define FRIBIDI_TRUE 1 | #define FRIBIDI_TRUE 1 | |||
#define FRIBIDI_FALSE 0 | #define FRIBIDI_FALSE 0 | |||
#ifndef TRUE | #ifndef TRUE | |||
#define TRUE FRIBIDI_TRUE | #define TRUE FRIBIDI_TRUE | |||
#endif /* TRUE */ | #endif /* TRUE */ | |||
#ifndef FALSE | #ifndef FALSE | |||
#define FALSE FRIBIDI_FALSE | #define FALSE FRIBIDI_FALSE | |||
#endif /* FALSE */ | #endif /* FALSE */ | |||
#define FRIBIDI_SIZEOF_SHORT 2 | ||||
#define FRIBIDI_SIZEOF_INT 4 | ||||
#define FRIBIDI_SIZEOF_LONG 4 | ||||
End of changes. 4 change blocks. | ||||
15 lines changed or deleted | 2 lines changed or added | |||
fribidi_mem.h | fribidi_mem.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
{ | { | |||
#endif | #endif | |||
FriBidiList *fribidi_list_append (FriBidiList *list, void *data); | FriBidiList *fribidi_list_append (FriBidiList *list, void *data); | |||
typedef struct _FriBidiMemChunk FriBidiMemChunk; | typedef struct _FriBidiMemChunk FriBidiMemChunk; | |||
#define FRIBIDI_ALLOC_ONLY 1 | #define FRIBIDI_ALLOC_ONLY 1 | |||
#define FRIBIDI_ALLOC_AND_FREE 2 | #define FRIBIDI_ALLOC_AND_FREE 2 | |||
FriBidiMemChunk *fribidi_mem_chunk_new (char *name, | FriBidiMemChunk *fribidi_mem_chunk_new (const char *name, | |||
int atom_size, | int atom_size, | |||
unsigned long area_size, int type) ; | unsigned long area_size, int type) ; | |||
void fribidi_mem_chunk_destroy (FriBidiMemChunk *mem_chunk); | void fribidi_mem_chunk_destroy (FriBidiMemChunk *mem_chunk); | |||
void *fribidi_mem_chunk_alloc (FriBidiMemChunk *mem_chunk); | void *fribidi_mem_chunk_alloc (FriBidiMemChunk *mem_chunk); | |||
void *fribidi_mem_chunk_alloc0 (FriBidiMemChunk *mem_chunk); | void *fribidi_mem_chunk_alloc0 (FriBidiMemChunk *mem_chunk); | |||
void fribidi_mem_chunk_free (FriBidiMemChunk *mem_chunk, void *mem); | void fribidi_mem_chunk_free (FriBidiMemChunk *mem_chunk, void *mem); | |||
#define fribidi_mem_chunk_create(type, pre_alloc, alloc_type) ( \ | #define fribidi_mem_chunk_create(type, pre_alloc, alloc_type) ( \ | |||
fribidi_mem_chunk_new (#type " mem chunks (" #pre_alloc ")", \ | fribidi_mem_chunk_new (#type " mem chunks (" #pre_alloc ")", \ | |||
sizeof (type), \ | sizeof (type), \ | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
fribidi_types.h | fribidi_types.h | |||
---|---|---|---|---|
skipping to change at line 27 | skipping to change at line 27 | |||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330, | * Free Software Foundation, Inc., 59 Temple Place, Suite 330, | |||
* Boston, MA 02111-1307, USA | * Boston, MA 02111-1307, USA | |||
* | * | |||
* For licensing issues, contact <dov@imagic.weizmann.ac.il> and | * For licensing issues, contact <dov@imagic.weizmann.ac.il> and | |||
* <fwpg@sharif.edu>. | * <fwpg@sharif.edu>. | |||
*/ | */ | |||
#ifndef FRIBIDI_TYPES_H | #ifndef FRIBIDI_TYPES_H | |||
#define FRIBIDI_TYPES_H | #define FRIBIDI_TYPES_H | |||
#include "fribidi_config.h" | #include "fribidi_config.h" | |||
#include <stdint.h> | ||||
#define FRIBIDI_INT8 char | ||||
#if FRIBIDI_SIZEOF_INT+0 == 2 | ||||
# define FRIBIDI_INT16 int | ||||
#elif FRIBIDI_SIZEOF_SHORT+0 == 2 | ||||
# define FRIBIDI_INT16 short | ||||
#else | ||||
# error cannot determine a 16-bit integer type. check fribidi_config.h | ||||
#endif | ||||
#if FRIBIDI_SIZEOF_INT+0 == 4 | ||||
# define FRIBIDI_INT32 int | ||||
#elif FRIBIDI_SIZEOF_LONG+0 == 4 | ||||
# define FRIBIDI_INT32 long | ||||
#else | ||||
# error cannot determine a 32-bit integer type. check fribidi_config.h | ||||
#endif | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" | extern "C" | |||
{ | { | |||
#endif | #endif | |||
typedef int fribidi_boolean; | typedef int fribidi_boolean; | |||
typedef int8_t fribidi_int8; | typedef signed FRIBIDI_INT8 fribidi_int8; | |||
typedef uint8_t fribidi_uint8; | typedef unsigned FRIBIDI_INT8 fribidi_uint8; | |||
typedef int16_t fribidi_int16; | typedef signed FRIBIDI_INT16 fribidi_int16; | |||
typedef uint16_t fribidi_uint16; | typedef unsigned FRIBIDI_INT16 fribidi_uint16; | |||
typedef int32_t fribidi_int32; | typedef signed FRIBIDI_INT32 fribidi_int32; | |||
typedef uint32_t fribidi_uint32; | typedef unsigned FRIBIDI_INT32 fribidi_uint32; | |||
typedef int fribidi_int; | ||||
typedef signed int fribidi_int; | ||||
typedef unsigned int fribidi_uint; | typedef unsigned int fribidi_uint; | |||
typedef fribidi_int8 FriBidiLevel; | typedef fribidi_int8 FriBidiLevel; | |||
typedef fribidi_uint32 FriBidiChar; | typedef fribidi_uint32 FriBidiChar; | |||
typedef fribidi_int FriBidiStrIndex; | typedef fribidi_int FriBidiStrIndex; | |||
typedef fribidi_int32 FriBidiMaskType; | typedef fribidi_int32 FriBidiMaskType; | |||
typedef FriBidiMaskType FriBidiCharType; | typedef FriBidiMaskType FriBidiCharType; | |||
char *fribidi_type_name (FriBidiCharType c); | char *fribidi_type_name (FriBidiCharType c); | |||
skipping to change at line 71 | skipping to change at line 87 | |||
/* The following type is used by fribdi_utils */ | /* The following type is used by fribdi_utils */ | |||
typedef struct _FriBidiList FriBidiList; | typedef struct _FriBidiList FriBidiList; | |||
struct _FriBidiList | struct _FriBidiList | |||
{ | { | |||
void *data; | void *data; | |||
FriBidiList *next; | FriBidiList *next; | |||
FriBidiList *prev; | FriBidiList *prev; | |||
}; | }; | |||
#ifndef FRIBIDI_MAX_STRING_LENGTH | #ifndef FRIBIDI_MAX_STRING_LENGTH | |||
#define FRIBIDI_MAX_STRING_LENGTH (sizeof (FriBidiStrIndex) == 2 ? \ | #define FRIBIDI_MAX_STRING_LENGTH (FriBidiStrIndex) \ | |||
(sizeof (FriBidiStrIndex) == 2 ? \ | ||||
0x7FFE : (sizeof (FriBidiStrIndex) == 1 ? \ | 0x7FFE : (sizeof (FriBidiStrIndex) == 1 ? \ | |||
0x7E : 0x8FFFFFFEL)) | 0x7E : 0x7FFFFFFEL)) | |||
#endif | #endif | |||
/* | /* | |||
* Define some bit masks, that character types are based on, each one has | * Define some bit masks, that character types are based on, each one has | |||
* only one bit on. | * only one bit on. | |||
*/ | */ | |||
/* Do not use enum, because 16bit processors do not allow 32bit enum values . */ | /* Do not use enum, because 16bit processors do not allow 32bit enum values . */ | |||
#define FRIBIDI_MASK_RTL 0x00000001L /* Is right to left */ | #define FRIBIDI_MASK_RTL 0x00000001L /* Is right to left */ | |||
skipping to change at line 287 | skipping to change at line 304 | |||
#define FRIBIDI_CHANGE_NUMBER_TO_RTL(p) \ | #define FRIBIDI_CHANGE_NUMBER_TO_RTL(p) \ | |||
(FRIBIDI_IS_NUMBER(p) ? FRIBIDI_TYPE_RTL : (p)) | (FRIBIDI_IS_NUMBER(p) ? FRIBIDI_TYPE_RTL : (p)) | |||
/* Override status of an explicit mark: LRO->LTR, RLO->RTL, otherwise->ON. */ | /* Override status of an explicit mark: LRO->LTR, RLO->RTL, otherwise->ON. */ | |||
#define FRIBIDI_EXPLICIT_TO_OVERRIDE_DIR(p) \ | #define FRIBIDI_EXPLICIT_TO_OVERRIDE_DIR(p) \ | |||
(FRIBIDI_IS_OVERRIDE(p) ? FRIBIDI_LEVEL_TO_DIR(FRIBIDI_DIR_TO_LEVEL( p)) \ | (FRIBIDI_IS_OVERRIDE(p) ? FRIBIDI_LEVEL_TO_DIR(FRIBIDI_DIR_TO_LEVEL( p)) \ | |||
: FRIBIDI_TYPE_ON) | : FRIBIDI_TYPE_ON) | |||
/* | /* | |||
* Define character types that char_type_tables use. | * Define character types that char_type_tables use. | |||
* define them to be 0, 1, 2, ... and then in fribidi_get_type.c map them | * define them to be 0, 1, 2, ... and then in fribidi_char_type.c map them | |||
* to FriBidiCharTypes. | * to FriBidiCharTypes. | |||
*/ | */ | |||
typedef char FriBidiPropCharType; | typedef char FriBidiPropCharType; | |||
enum FriBidiPropEnum | enum FriBidiPropEnum | |||
{ | { | |||
#define _FRIBIDI_ADD_TYPE(TYPE) FRIBIDI_PROP_TYPE_##TYPE, | #define _FRIBIDI_ADD_TYPE(TYPE) FRIBIDI_PROP_TYPE_##TYPE, | |||
#include "fribidi_types.i" | #include "fribidi_types.i" | |||
#undef _FRIBIDI_ADD_TYPE | #undef _FRIBIDI_ADD_TYPE | |||
FRIBIDI_TYPES_COUNT /* Number of different character typ es */ | FRIBIDI_TYPES_COUNT /* Number of different character typ es */ | |||
}; | }; | |||
/* Map fribidi_prop_types to fribidi_types */ | /* Map fribidi_prop_types to fribidi_types */ | |||
extern FriBidiCharType *fribidi_prop_to_type; | extern const FriBidiCharType fribidi_prop_to_type[]; | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif | #endif | |||
End of changes. 6 change blocks. | ||||
12 lines changed or deleted | 29 lines changed or added | |||