summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/i18n/KParseType.idl
blob: eaf34d2de4a92e6b6a3c9747e40285b6520d5812 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
/*************************************************************************
 *
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * Copyright 2000, 2010 Oracle and/or its affiliates.
 *
 * OpenOffice.org - a multi-platform office productivity suite
 *
 * This file is part of OpenOffice.org.
 *
 * OpenOffice.org is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License version 3
 * only, as published by the Free Software Foundation.
 *
 * OpenOffice.org is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License version 3 for more details
 * (a copy is included in the LICENSE file that accompanied this code).
 *
 * You should have received a copy of the GNU Lesser General Public License
 * version 3 along with OpenOffice.org.  If not, see
 * <http://www.openoffice.org/license.html>
 * for a copy of the LGPLv3 License.
 *
 ************************************************************************/
#ifndef __com_sun_star_i18n_KParseType_idl__
#define __com_sun_star_i18n_KParseType_idl__

//============================================================================

module com {  module sun {  module star {  module i18n {

//============================================================================

/**
    Constants to specify the type of a parsed token.

    <p> Set by
    <member>XCharacterClassification::parseAnyToken()</member> and
    <member>XCharacterClassification::parsePredefinedToken()</member> in
    <member>ParseResult::TokenType</member>. </p>
 */

published constants KParseType
{
    /// One single character like ! # ; : $ et al.
    const long ONE_SINGLE_CHAR      = 0x00000001;

    // For human .idl readers: <, >, <>, =, <=, >=
    /// A Boolean operator like &lt;, &gt;, &lt;&gt;, =, &lt;=, &gt;=
    const long BOOLEAN              = 0x00000002;

    /// A name matching the conditions passed.
    const long IDENTNAME            = 0x00000004;


    // Hint for human .idl readers: do not get confused about the double
    // quotation marks, they are needed for the unoidl compiler which otherwise
    // gets confused about the single quotation marks.
    /** "A single-quoted name matching the conditions passed ( 'na\'me' )."
        "Dequoted name in <member>ParseResult::DequotedNameOrString</member> ( na'me )." */
    const long SINGLE_QUOTE_NAME    = 0x00000008;

    /** A double-quoted string ( "str\"i""ng" ). Dequoted string in
        <member>ParseResult::DequotedNameOrString</member> ( str"i"ng ). */
    const long DOUBLE_QUOTE_STRING  = 0x00000010;

    /** A number where all digits are ASCII characters.
        Numerical value in <member>ParseResult::Value</member>. */
    const long ASC_NUMBER           = 0x00000020;

    /** A number where at least some digits are Unicode (and maybe
        ASCII) characters. Numerical value inKParseType
        <member>ParseResult::Value</member>. */
    const long UNI_NUMBER           = 0x00000040;

    /** Set (ored) if SINGLE_QUOTE_NAME or DOUBLE_QUOTE_STRING has no
        closing quote. */
    const long MISSING_QUOTE        = 0x40000000;


    // useful combinations

    /// Any ASCII or Unicode number
    const long ANY_NUMBER           = ASC_NUMBER | UNI_NUMBER;
};

//============================================================================
}; }; }; };

#endif