Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:57:27

0001 #ifndef __FRIBIDI_DOC
0002 /* FriBidi
0003  * fribidi-bidi-types-list.h - list of bidi types
0004  *
0005  * Author:
0006  *   Behdad Esfahbod, 2001, 2002, 2004
0007  *
0008  * Copyright (C) 2004 Sharif FarsiWeb, Inc.
0009  * Copyright (C) 2001,2002 Behdad Esfahbod
0010  * 
0011  * This library is free software; you can redistribute it and/or
0012  * modify it under the terms of the GNU Lesser General Public
0013  * License as published by the Free Software Foundation; either
0014  * version 2.1 of the License, or (at your option) any later version.
0015  * 
0016  * This library is distributed in the hope that it will be useful,
0017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0019  * Lesser General Public License for more details.
0020  * 
0021  * You should have received a copy of the GNU Lesser General Public License
0022  * along with this library, in a file named COPYING; if not, write to the
0023  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0024  * Boston, MA 02110-1301, USA
0025  *
0026  * For licensing issues, contact <fribidi.license@gmail.com>.
0027  */
0028 /* *INDENT-OFF* */
0029 #endif /* !__FRIBIDI_DOC */
0030 #ifndef _FRIBIDI_ADD_TYPE
0031 # define _FRIBIDI_ADD_TYPE(x,y)
0032 #endif
0033 #ifndef _FRIBIDI_ADD_ALIAS
0034 # define _FRIBIDI_ADD_ALIAS(x1,x2)
0035 #endif
0036 
0037 #if !defined(_FRIBIDI_PAR_TYPES) || defined(_FRIBIDI_ALL_TYPES)
0038 
0039 _FRIBIDI_ADD_TYPE (LTR, 'L')    /* Left-To-Right letter */
0040 _FRIBIDI_ADD_TYPE (RTL, 'R')    /* Right-To-Left letter */
0041 _FRIBIDI_ADD_TYPE (AL, 'A') /* Arabic Letter */
0042 _FRIBIDI_ADD_TYPE (EN, '1') /* European Numeral */
0043 _FRIBIDI_ADD_TYPE (AN, '9') /* Arabic Numeral */
0044 _FRIBIDI_ADD_TYPE (ES, 'w') /* European number Separator */
0045 _FRIBIDI_ADD_TYPE (ET, 'w') /* European number Terminator */
0046 _FRIBIDI_ADD_TYPE (CS, 'w') /* Common Separator */
0047 _FRIBIDI_ADD_TYPE (NSM, '`')    /* Non Spacing Mark */
0048 _FRIBIDI_ADD_TYPE (BN, 'b') /* Boundary Neutral */
0049 _FRIBIDI_ADD_TYPE (BS, 'B') /* Block Separator */
0050 _FRIBIDI_ADD_TYPE (SS, 'S') /* Segment Separator */
0051 _FRIBIDI_ADD_TYPE (WS, '_') /* WhiteSpace */
0052 _FRIBIDI_ADD_TYPE (ON, 'n') /* Other Neutral */
0053 _FRIBIDI_ADD_TYPE (LRE, '+')    /* Left-to-Right Embedding */
0054 _FRIBIDI_ADD_TYPE (RLE, '+')    /* Right-to-Left Embedding */
0055 _FRIBIDI_ADD_TYPE (LRO, '+')    /* Left-to-Right Override */
0056 _FRIBIDI_ADD_TYPE (RLO, '+')    /* Right-to-Left Override */
0057 _FRIBIDI_ADD_TYPE (PDF, '-')    /* Pop Directional Flag */
0058 _FRIBIDI_ADD_TYPE (LRI, '+')    /* Left-to-Right Isolate */
0059 _FRIBIDI_ADD_TYPE (RLI, '+')    /* Right-to-Left Isolate */
0060 _FRIBIDI_ADD_TYPE (FSI, '+')    /* First-Strong Isolate */
0061 _FRIBIDI_ADD_TYPE (PDI, '-')    /* Pop Directional Isolate */
0062 
0063 #if defined(_FRIBIDI_ADD_ALIAS)
0064 _FRIBIDI_ADD_ALIAS (L, LTR)
0065 _FRIBIDI_ADD_ALIAS (R, RTL)
0066 _FRIBIDI_ADD_ALIAS (B, BS)
0067 _FRIBIDI_ADD_ALIAS (S, SS)
0068 #endif /* _FRIBIDI_ADD_ALIAS */
0069 
0070 #if defined(_FRIBIDI_SENTINEL_TYPE) || defined(_FRIBIDI_ALL_TYPES)
0071 _FRIBIDI_ADD_TYPE (SENTINEL, '$')   /* SENTINEL */
0072 #endif /* _FRIBIDI_SENTINEL_TYPES || _FRIBIDI_ALL_TYPES*/
0073 #endif /* !_FRIBIDI_PAR_TYPES || _FRIBIDI_ALL_TYPES */
0074 
0075 #if defined(_FRIBIDI_PAR_TYPES) || defined(_FRIBIDI_ALL_TYPES)
0076 # if !defined(_FRIBIDI_ALL_TYPES)
0077 _FRIBIDI_ADD_TYPE (LTR, 'L')    /* Left-To-Right paragraph */
0078 _FRIBIDI_ADD_TYPE (RTL, 'R')    /* Right-To-Left paragraph */
0079 _FRIBIDI_ADD_TYPE (ON, 'n') /* directiOn-Neutral paragraph */
0080 # endif /* !_FRIBIDI_ALL_TYPES */
0081 _FRIBIDI_ADD_TYPE (WLTR, 'l')   /* Weak Left To Right paragraph */
0082 _FRIBIDI_ADD_TYPE (WRTL, 'r')   /* Weak Right To Left paragraph */
0083 #endif /* _FRIBIDI_PAR_TYPES || _FRIBIDI_ALL_TYPES*/
0084 
0085 #if defined(_FRIBIDI_ENUM_TYPES)
0086 typedef enum {
0087 # define _FRIBIDI_ADD_TYPE _FRIBIDI_ENUM_ADD_TYPE
0088 # include "fribidi-bidi-types-list.h"
0089 # undef _FRIBIDI_ADD_TYPE
0090   _FRIBIDI_TYPES_MAX
0091 } _FRIBIDI_ENUM_TYPES
0092 #endif /* _FRIBIDI_ENUM_TYPES */
0093 
0094 #ifndef __FRIBIDI_DOC
0095 /* *INDENT-ON* */
0096 #endif /* !__FRIBIDI_DOC */