Qore Programming Language  0.8.7
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
node_types.h
Go to the documentation of this file.
1 /* -*- mode: c++; indent-tabs-mode: nil -*- */
2 /*
3  node_types.h
4 
5  Qore Programming Language
6 
7  Copyright 2003 - 2013 David Nichols
8 
9  This library is free software; you can redistribute it and/or
10  modify it under the terms of the GNU Lesser General Public
11  License as published by the Free Software Foundation; either
12  version 2.1 of the License, or (at your option) any later version.
13 
14  This library is distributed in the hope that it will be useful,
15  but WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  Lesser General Public License for more details.
18 
19  You should have received a copy of the GNU Lesser General Public
20  License along with this library; if not, write to the Free Software
21  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 */
23 
24 #ifndef _QORE_NODE_TYPES_H
25 
26 #define _QORE_NODE_TYPES_H
27 
32 // qore global system type constants
33 // value types must come first to support the operator matrix optimization
35 const qore_type_t NT_INT = 1;
36 const qore_type_t NT_FLOAT = 2;
38 const qore_type_t NT_DATE = 4;
40 const qore_type_t NT_NULL = 6;
42 const qore_type_t NT_LIST = 8;
43 const qore_type_t NT_HASH = 9;
44 const qore_type_t NT_OBJECT = 10;
45 const qore_type_t NT_NUMBER = 11;
48 const qore_type_t NT_VARREF = 14;
49 const qore_type_t NT_TREE = 15;
50 const qore_type_t NT_FIND = 16;
60 const qore_type_t NT_REGEX = 26;
63 const qore_type_t NT_FUNCREF = 29;
65 const qore_type_t NT_CLOSURE = 31;
77 
79 #define QORE_NUM_TYPES 42
80 
82 #define NUM_SIMPLE_TYPES 8
83 
85 #define NUM_VALUE_TYPES 12
86 
87 #endif