All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
node_types.h
Go to the documentation of this file.
/* -*- mode: c++; indent-tabs-mode: nil -*- */
/*
node_types.h
Qore Programming Language
Copyright 2003 - 2013 David Nichols
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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 for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef _QORE_NODE_TYPES_H
#define _QORE_NODE_TYPES_H
// qore global system type constants
// value types must come first to support the operator matrix optimization
const qore_type_t NT_NOTHING = 0;
const qore_type_t NT_INT = 1;
const qore_type_t NT_FLOAT = 2;
const qore_type_t NT_STRING = 3;
const qore_type_t NT_DATE = 4;
const qore_type_t NT_BOOLEAN = 5;
const qore_type_t NT_NULL = 6;
const qore_type_t NT_BINARY = 7;
const qore_type_t NT_LIST = 8;
const qore_type_t NT_HASH = 9;
const qore_type_t NT_OBJECT = 10;
const qore_type_t NT_NUMBER = 11;
const qore_type_t NT_CONTEXTREF = 12;
const qore_type_t NT_COMPLEXCONTEXTREF = 13;
const qore_type_t NT_VARREF = 14;
const qore_type_t NT_TREE = 15;
const qore_type_t NT_FIND = 16;
const qore_type_t NT_FUNCTION_CALL = 17;
const qore_type_t NT_SELF_VARREF = 18;
const qore_type_t NT_SCOPE_REF = 19;
const qore_type_t NT_CONSTANT = 20;
const qore_type_t NT_BAREWORD = 21;
const qore_type_t NT_REFERENCE = 22;
const qore_type_t NT_CONTEXT_ROW = 23;
const qore_type_t NT_REGEX_SUBST = 24;
const qore_type_t NT_REGEX_TRANS = 25;
const qore_type_t NT_REGEX = 26;
const qore_type_t NT_CLASSREF = 27;
const qore_type_t NT_OBJMETHREF = 28;
const qore_type_t NT_FUNCREF = 29;
const qore_type_t NT_FUNCREFCALL = 30;
const qore_type_t NT_CLOSURE = 31;
const qore_type_t NT_RUNTIME_CLOSURE = 32;
const qore_type_t NT_IMPLICIT_ARG = 33;
const qore_type_t NT_METHOD_CALL = 34;
const qore_type_t NT_STATIC_METHOD_CALL = 35;
const qore_type_t NT_SELF_CALL = 36;
const qore_type_t NT_OPERATOR = 37;
const qore_type_t NT_IMPLICIT_ELEMENT = 38;
const qore_type_t NT_CLASS_VARREF = 39;
const qore_type_t NT_PROGRAM_FUNC_CALL = 40;
const qore_type_t NT_PARSEREFERENCE = 41;
const qore_type_t NT_BACKQUOTE = 42;
#define QORE_NUM_TYPES 42
#define NUM_SIMPLE_TYPES 8
#define NUM_VALUE_TYPES 12
#endif