LCOV - code coverage report
Current view: directory - extensions/spellcheck/hunspell/src - atypes.hxx (source / functions) Found Hit Coverage
Test: app.info Lines: 1 1 100.0 %
Date: 2012-06-02 Functions: 1 1 100.0 %

       1                 : /******* BEGIN LICENSE BLOCK *******
       2                 :  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
       3                 :  * 
       4                 :  * The contents of this file are subject to the Mozilla Public License Version
       5                 :  * 1.1 (the "License"); you may not use this file except in compliance with
       6                 :  * the License. You may obtain a copy of the License at
       7                 :  * http://www.mozilla.org/MPL/
       8                 :  * 
       9                 :  * Software distributed under the License is distributed on an "AS IS" basis,
      10                 :  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
      11                 :  * for the specific language governing rights and limitations under the
      12                 :  * License.
      13                 :  * 
      14                 :  * The Initial Developers of the Original Code are Kevin Hendricks (MySpell)
      15                 :  * and László Németh (Hunspell). Portions created by the Initial Developers
      16                 :  * are Copyright (C) 2002-2005 the Initial Developers. All Rights Reserved.
      17                 :  * 
      18                 :  * Contributor(s): Kevin Hendricks (kevin.hendricks@sympatico.ca)
      19                 :  *                 David Einstein (deinst@world.std.com)
      20                 :  *                 László Németh (nemethl@gyorsposta.hu)
      21                 :  *                 Caolan McNamara (caolanm@redhat.com)
      22                 :  *                 Davide Prina
      23                 :  *                 Giuseppe Modugno
      24                 :  *                 Gianluca Turconi
      25                 :  *                 Simon Brouwer
      26                 :  *                 Noll Janos
      27                 :  *                 Biro Arpad
      28                 :  *                 Goldman Eleonora
      29                 :  *                 Sarlos Tamas
      30                 :  *                 Bencsath Boldizsar
      31                 :  *                 Halacsy Peter
      32                 :  *                 Dvornik Laszlo
      33                 :  *                 Gefferth Andras
      34                 :  *                 Nagy Viktor
      35                 :  *                 Varga Daniel
      36                 :  *                 Chris Halls
      37                 :  *                 Rene Engelhard
      38                 :  *                 Bram Moolenaar
      39                 :  *                 Dafydd Jones
      40                 :  *                 Harri Pitkanen
      41                 :  *                 Andras Timar
      42                 :  *                 Tor Lillqvist
      43                 :  * 
      44                 :  * Alternatively, the contents of this file may be used under the terms of
      45                 :  * either the GNU General Public License Version 2 or later (the "GPL"), or
      46                 :  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
      47                 :  * in which case the provisions of the GPL or the LGPL are applicable instead
      48                 :  * of those above. If you wish to allow use of your version of this file only
      49                 :  * under the terms of either the GPL or the LGPL, and not to allow others to
      50                 :  * use your version of this file under the terms of the MPL, indicate your
      51                 :  * decision by deleting the provisions above and replace them with the notice
      52                 :  * and other provisions required by the GPL or the LGPL. If you do not delete
      53                 :  * the provisions above, a recipient may use your version of this file under
      54                 :  * the terms of any one of the MPL, the GPL or the LGPL.
      55                 :  *
      56                 :  ******* END LICENSE BLOCK *******/
      57                 : 
      58                 : #ifndef _ATYPES_HXX_
      59                 : #define _ATYPES_HXX_
      60                 : 
      61                 : #ifndef HUNSPELL_WARNING
      62                 : #include <stdio.h>
      63                 : #ifdef HUNSPELL_WARNING_ON
      64                 : #define HUNSPELL_WARNING fprintf
      65                 : #else
      66                 : // empty inline function to switch off warnings (instead of the C99 standard variadic macros)
      67               9 : static inline void HUNSPELL_WARNING(FILE *, const char *, ...) {}
      68                 : #endif
      69                 : #endif
      70                 : 
      71                 : // HUNSTEM def.
      72                 : #define HUNSTEM
      73                 : 
      74                 : #include "hashmgr.hxx"
      75                 : #include "w_char.hxx"
      76                 : 
      77                 : #define SETSIZE         256
      78                 : #define CONTSIZE        65536
      79                 : #define MAXWORDLEN      100
      80                 : #define MAXWORDUTF8LEN  256
      81                 : 
      82                 : // affentry options
      83                 : #define aeXPRODUCT      (1 << 0)
      84                 : #define aeUTF8          (1 << 1)
      85                 : #define aeALIASF        (1 << 2)
      86                 : #define aeALIASM        (1 << 3)
      87                 : #define aeLONGCOND      (1 << 4)
      88                 : 
      89                 : // compound options
      90                 : #define IN_CPD_NOT   0
      91                 : #define IN_CPD_BEGIN 1
      92                 : #define IN_CPD_END   2
      93                 : #define IN_CPD_OTHER 3
      94                 : 
      95                 : // info options
      96                 : #define  SPELL_COMPOUND  (1 << 0)
      97                 : #define  SPELL_FORBIDDEN (1 << 1)
      98                 : #define  SPELL_ALLCAP    (1 << 2)
      99                 : #define  SPELL_NOCAP     (1 << 3)
     100                 : #define  SPELL_INITCAP   (1 << 4)
     101                 : #define  SPELL_ORIGCAP   (1 << 5)
     102                 : #define  SPELL_WARN      (1 << 6)
     103                 : 
     104                 : #define MAXLNLEN        8192
     105                 : 
     106                 : #define MINCPDLEN       3
     107                 : #define MAXCOMPOUND     10
     108                 : #define MAXCONDLEN      20
     109                 : #define MAXCONDLEN_1    (MAXCONDLEN - sizeof(char *))
     110                 : 
     111                 : #define MAXACC          1000
     112                 : 
     113                 : #define FLAG unsigned short
     114                 : #define FLAG_NULL 0x00
     115                 : #define FREE_FLAG(a) a = 0
     116                 : 
     117                 : #define TESTAFF( a, b , c ) flag_bsearch((unsigned short *) a, (unsigned short) b, c)
     118                 : 
     119                 : struct affentry
     120                 : {
     121                 :    char * strip;
     122                 :    char * appnd;
     123                 :    unsigned char stripl;
     124                 :    unsigned char appndl;
     125                 :    char  numconds;
     126                 :    char  opts;
     127                 :    unsigned short aflag;
     128                 :    unsigned short * contclass;
     129                 :    short        contclasslen;
     130                 :    union {
     131                 :      char conds[MAXCONDLEN];
     132                 :      struct {
     133                 :        char conds1[MAXCONDLEN_1];
     134                 :        char * conds2;
     135                 :      } l;
     136                 :    } c;
     137                 :    char *       morphcode;
     138                 : };
     139                 : 
     140                 : struct guessword {
     141                 :   char * word;
     142                 :   bool allow;
     143                 :   char * orig;
     144                 : };
     145                 : 
     146                 : struct mapentry {
     147                 :   char ** set;
     148                 :   int len;
     149                 : };
     150                 : 
     151                 : struct flagentry {
     152                 :   FLAG * def;
     153                 :   int len;
     154                 : };
     155                 : 
     156                 : struct patentry {
     157                 :   char * pattern;
     158                 :   char * pattern2;
     159                 :   char * pattern3;
     160                 :   FLAG cond;
     161                 :   FLAG cond2;
     162                 : };
     163                 : 
     164                 : #endif

Generated by: LCOV version 1.7