1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_TYPELIB_TYPECLASS_H
20 #define INCLUDED_TYPELIB_TYPECLASS_H
22 #include "sal/types.h"
24 /** This type class enum is binary compatible with the IDL enum com.sun.star.uno.TypeClass.
26 typedef enum _typelib_TypeClass
28 /** type class of void */
29 typelib_TypeClass_VOID
= 0,
30 /** type class of char */
31 typelib_TypeClass_CHAR
= 1,
32 /** type class of boolean */
33 typelib_TypeClass_BOOLEAN
= 2,
34 /** type class of byte */
35 typelib_TypeClass_BYTE
= 3,
36 /** type class of short */
37 typelib_TypeClass_SHORT
= 4,
38 /** type class of unsigned short */
39 typelib_TypeClass_UNSIGNED_SHORT
= 5,
40 /** type class of long */
41 typelib_TypeClass_LONG
= 6,
42 /** type class of unsigned long */
43 typelib_TypeClass_UNSIGNED_LONG
= 7,
44 /** type class of hyper */
45 typelib_TypeClass_HYPER
= 8,
46 /** type class of unsigned hyper */
47 typelib_TypeClass_UNSIGNED_HYPER
= 9,
48 /** type class of float */
49 typelib_TypeClass_FLOAT
= 10,
50 /** type class of double */
51 typelib_TypeClass_DOUBLE
= 11,
52 /** type class of string */
53 typelib_TypeClass_STRING
= 12,
54 /** type class of type */
55 typelib_TypeClass_TYPE
= 13,
56 /** type class of any */
57 typelib_TypeClass_ANY
= 14,
58 /** type class of enum */
59 typelib_TypeClass_ENUM
= 15,
60 /** type class of typedef */
61 typelib_TypeClass_TYPEDEF
= 16,
62 /** type class of struct */
63 typelib_TypeClass_STRUCT
= 17,
64 /** Deprecated, UNOIDL does not have a union concept.
68 typelib_TypeClass_UNION
= 18,
69 /** type class of exception */
70 typelib_TypeClass_EXCEPTION
= 19,
71 /** type class of sequence */
72 typelib_TypeClass_SEQUENCE
= 20,
73 /** Deprecated, UNOIDL does not have an array concept.
77 typelib_TypeClass_ARRAY
= 21,
78 /** type class of interface */
79 typelib_TypeClass_INTERFACE
= 22,
80 /** type class of service (not implemented) */
81 typelib_TypeClass_SERVICE
= 23,
82 /** type class of module (not implemented) */
83 typelib_TypeClass_MODULE
= 24,
84 /** type class of interface method */
85 typelib_TypeClass_INTERFACE_METHOD
= 25,
86 /** type class of interface attribute */
87 typelib_TypeClass_INTERFACE_ATTRIBUTE
= 26,
88 /** type class of unknown type */
89 typelib_TypeClass_UNKNOWN
= 27,
90 /** type class of properties */
91 typelib_TypeClass_PROPERTY
= 28,
92 /** type class of constants */
93 typelib_TypeClass_CONSTANT
= 29,
94 /** type class of constants groups */
95 typelib_TypeClass_CONSTANTS
= 30,
96 /** type class of singletons */
97 typelib_TypeClass_SINGLETON
= 31,
98 /** fixing enum size */
99 typelib_TypeClass_MAKE_FIXED_SIZE
= SAL_MAX_ENUM
104 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */