This file documents the MELT plugin API. MELT is a plugin for GCC. This document is mostly generated from MELT source code (GPLv3+) so is under the same GPLv3+ license as the source code from which (and with which) it has been generated. This document was mostly generated by the MELT plugin (run in a specific makedoc mode) from its source code.


Copyright © 2011 Free Software Foundation, Inc. This document is generated from MELT source code (which is GPLv3+ licensed) so is under GPLv3+

This file is part of the MELT plugin for GCC (GCC MELT)

GCC MELT is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

GCC MELT 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with GCC MELT; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.


[Top] [Contents] [Index] [ ? ]

Introduction

This document (mostly generated from MELT source code) documents the MELT application programming interface. It is a reference manual generated from (GPLv3+ licensed) MELT source code, so is itself GPLv3+ licensed.

Additional tutorial information for GCC is linked to from http://gcc.gnu.org/readings.html and for MELT is linked to from http://gcc-melt.org/.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. MELT Programming Reference


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1 MELT macros

There are 57 documented macros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.1 AGAIN

Macro defined at file ‘warmelt-macro.melt’, line 6133.

macro description: The AGAIN syntax is for restarting a local FOREVER loop in the same function. Syntax is (AGAIN <loop-label>).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.2 ASSERT_MSG

Macro defined at file ‘warmelt-macro.melt’, line 6260.

macro description: ASSERT_MSG macro with a message cstring and an optional condition. Generates an assertion -if checking is enabled- and also issues a compile warning if condition is missing so false.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.3 CHEADER

Macro defined at file ‘warmelt-macro.melt’, line 5850.

macro description: The CHEADER syntax inserts C code in the header part of the generated code.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.4 CODE_CHUNK

Macro defined at file ‘warmelt-macro.melt’, line 3950.

macro description: The CODE_CHUNK macro is for low-level C code chunks. The syntax is (CODE_CHUNK state-symbol chunk) where chunk is a macro-string. It generates a C block. Since it does not make any type verification, it should be usually avoided. See DEFPRIMITIVE etc.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.5 COMMENT

Macro defined at file ‘warmelt-macro.melt’, line 5801.

macro description: The COMMENT syntax inserts comment in the generated code, or skips MELT code. Syntax is (COMMENT <string>) to insert a comment in the generated C code, or (COMMENT ...) to skip some syntax.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.6 COMPILE_WARNING

Macro defined at file ‘warmelt-macro.melt’, line 6173.

macro description: The COMPILE_WARNING syntax issues a warning, inspired by GCC #warning. Syntax is (COMPILE_WARNING <string> [<expression>]).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.7 COND

Macro defined at file ‘warmelt-macro.melt’, line 4536.

macro description: The usual lisp COND conditional. Syntax is (COND <conditions>...). Each condition is a list of the form (<test> <expr>...). The last catch-all condition can be (:else <epxr>...).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.8 CONTENT

Macro defined at file ‘warmelt-macro.melt’, line 4931.

macro description: The CONTENT macro is obsolete. Use DEREF instead.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.9 CPPIF

Macro defined at file ‘warmelt-macro.melt’, line 4359.

macro description: The CPPIF macro expands to C-code with an #if condition, so the condition is handled when compiling the generated C code into a MELT module. Syntax is (CPPIF <symbol> <then> [<else>]).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.10 CURRENT_MODULE_ENVIRONMENT_CONTAINER

Macro defined at file ‘warmelt-macro.melt’, line 6702.

macro description: (CURRENT_MODULE_ENVIRONMENT_CONTAINER) returns a container, i.e. a reference thru CLASS_REFERENCE, for the current environment. See also PARENT_MODULE_ENVIRONMENT and CLASS_ENVIRONMENT. Will be renamed as CURRENT_MODULE_ENVIRONMENT_REFERENCE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.11 DEBUG

Macro defined at file ‘warmelt-macro.melt’, line 6452.

macro description: DEBUG is a variadic and polytypic macro for debugging prints. You can give it arbitrary arguments -either stuff or values-. Debugging prints should be enabled at compilation time of the generated C code with the quicklybuilt or debugnoline module flavors, and at run time with the -f[plugin-arg-]melt-debugging= option. Internally (DEBUG arg...) is macro expanded to the equivalent of (cppif MELT_HAVE_DEBUG (if (melt_need_dbg 0) (melt_debug_fun () count filename lineno ...)))


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.12 DEBUG_MSG

Macro defined at file ‘warmelt-macro.melt’, line 6333.

macro description: DEBUG_MSG is obsolete and should not be used. Use DEBUG instead.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.13 DEFCITERATOR

Macro defined at file ‘warmelt-macro.melt’, line 2367.

macro description: The DEFCITERATOR macro defines a c-iterator which itself implements iterative for-like loops. Syntax is (DEFCITERATOR name start-formals state-symbol variable-formals [:doc documentation] before-expansion after-expansion). To be visible outside the module, the c-iterator should be exported using EXPORT_VALUES. See also CLASS_CITERATOR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.14 DEFCLASS

Macro defined at file ‘warmelt-macro.melt’, line 3188.

macro description: The DEFCLASS macro defines a class. Syntax is (DEFCLASS symbol [:doc documentation] :super super-class :fields fields-list). Conventionally, the class name (i.e. the symbol) should preferably start with CLASS_. The fields’ names should preferably be globally unique, and usually share a common prefix. See also CLASS_ROOT CLASS_CLASS CLASS_FIELD etc.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.15 DEFCMATCHER

Macro defined at file ‘warmelt-macro.melt’, line 2568.

macro description: The DEFCMATCHER macro defines pattern-matching operator by their C expansion. Syntax is (DEFCMATCHER symbol match&ins-formals out-formals state-symbol [:doc documentation] test-expansion fill-expansion [operator-expansion]).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.16 DEFINE

Macro defined at file ‘warmelt-macro.melt’, line 2920.

macro description: The DEFINE macro defines a named non-recursive value. Syntax (like in Scheme) is (DEFINE name [:doc documentation] expr ...) to define a value, and (DEFINE (funame formals...) [:doc documentation] expr ...) to define a function like DEFUN does. Use EXPORT_VALUES to make that name visible outside its module.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.17 DEFINSTANCE

Macro defined at file ‘warmelt-macro.melt’, line 3399.

macro description: The DEFINSTANCE syntax defines a static instance bound by a symbol. Syntax is (DEFINSTANCE <symbol> <class> [:doc documentation] {:<field> <value>}*). The symbol is bound to the newly made instance.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.18 DEFPRIMITIVE

Macro defined at file ‘warmelt-macro.melt’, line 2213.

macro description: The DEFPRIMITIVE macro defines new primitive operations by their C expansion. Syntax is (DEFPRIMITIVE name formals type [:doc documentation] expansion) which defines a primitive of given name with formal arguments formals, result c-type type, optional documentation, and given expansion. A macro is expanded into a C instruction if its c-type is :void, otherwise into a C expression. Primitives have to be exported with EXPORT_VALUES to be visible in other modules. See also the classes CLASS_PRIMITIVE, and CLASS_PRIMITIVE_BINDING and the CODE_CHUNK macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.19 DEFSELECTOR

Macro defined at file ‘warmelt-macro.melt’, line 3548.

macro description: The DEFSELECTOR syntax defines a selector for sending messages. Syntax is (DEFSELECTOR <symbol> <selector-class> [:doc <documentation>] [:formals ( <formals>...)]).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.20 DEFUN

Macro defined at file ‘warmelt-macro.melt’, line 2790.

macro description: The DEFUN macro defines a function. Syntax is (DEFUN funame formals [:doc documentation] body...). The first formal argument, if any, is required to be of ctype :value. The expressions in the body are evaluated in sequence. The value of the last is returned. See also RETURN and LAMBDA macros. A function defined by DEFUN has to be exported with EXPORT_VALUES to be visible outside its module.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.21 DEFUNMATCHER

Macro defined at file ‘warmelt-macro.melt’, line 2717.

macro description: The DEFUNMATCHER syntax defines a matcher thru a MELT function. Syntax is (DEFUNMATCHER <symbol> <in-formals> <out-formals> [:doc docum] <match-function> [<apply-function> [<data>]])


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.22 DEREF

Macro defined at file ‘warmelt-macro.melt’, line 4917.

macro description: The DEREF macro is a short-hand to retrieve values inside instances of CLASS_REFERENCE. So (DEREF <value>) means (GET_FIELD :REFERENCED_VALUE <value>), hence test that <value> is indeed an instance of CLASS_REFERENCE, or else gives null. The special syntax !<expr> is a syntactic sugar for (DEREF <expr>).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.23 EXCLAIM

Macro defined at file ‘warmelt-macro.melt’, line 4937.

macro description: EXCLAIM [usually given thru the ! syntactic sugar] is a synonym for DEREF, e.g. !(IF p c) means (DEREF (IF P C)) hence (GET_FIELD :REFERENCED_VALUE (IF P C))


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.24 EXIT

Macro defined at file ‘warmelt-macro.melt’, line 6090.

macro description: The EXIT syntax is for exiting a local FOREVER loop in the same function. Syntax is (EXIT <loop-name> <expression>...).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.25 EXPORT_CLASS

Macro defined at file ‘warmelt-macro.melt’, line 6625.

macro description: (EXPORT_CLASS names...) is used to export class and their field names.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.26 EXPORT_MACRO

Macro defined at file ‘warmelt-macro.melt’, line 6541.

macro description: (EXPORT_MACRO name macro-expander [:doc documentation]) is used to define an exported macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.27 EXPORT_PATMACRO

Macro defined at file ‘warmelt-macro.melt’, line 6593.

macro description: (EXPORT_PATMACRO name pattern-expander [macro-expander] [:doc documentation]) is used to define patmacros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.28 EXPORT_SYNONYM

Macro defined at file ‘warmelt-macro.melt’, line 6674.

macro description: (EXPORT_SYNONYM new-name old-name [:doc documentation]) is used to define a synonym.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.29 EXPORT_VALUES

Macro defined at file ‘warmelt-macro.melt’, line 6495.

macro description: EXPORT_VALUES is a macro to export values defined by names. Give it a sequence of names bound to values using DEFINE, DEFUN, DEFINSTANCE, DEFSELECTOR, DEFCITERATOR, DEFCMATCHER, DEFFUNMATCHER etc. Use EXPORT_CLASS for exporting classes and their fields.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.30 FETCH_PREDEFINED

Macro defined at file ‘warmelt-macro.melt’, line 6797.

macro description: (FETCH_PREDEFINED predefined-name) is accessing a predefined value without using environments. You probably don’t need that.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.31 FOREVER

Macro defined at file ‘warmelt-macro.melt’, line 6045.

macro description: The FOREVER syntax is for infinite loops exited thru EXIT. Syntax is (FOREVER <loop-name> <expr>...). Use EXIT to go out of the loop with a result.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.32 GCCIF

Macro defined at file ‘warmelt-macro.melt’, line 4436.

macro description: The GCCIF macro expands the rest of the expression if the version string of the GCC translating this MELT expression matches the condition. Syntax is (GCCIF condition expr...), where the condition is a string such as "4.5." or a list of strings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.33 GET_FIELD

Macro defined at file ‘warmelt-macro.melt’, line 4125.

macro description: The GET_FIELD syntax safely access a field. Syntax is (GET_FIELD :<field> <expression>) which evaluates to nil if the expression is not of the class defining the field. See also UNSAFE_GET_FIELD.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.34 IF

Macro defined at file ‘warmelt-macro.melt’, line 4230.

macro description: The IF syntax is for simple conditional expressions. See also WHEN and UNLESS and COND. Syntax is (IF <test-expression> <then-expression> [<else-expression>]).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.35 INSTANCE

Macro defined at file ‘warmelt-macro.melt’, line 3618.

macro description: The INSTANCE syntax is for making new objects. Syntax is (INSTANCE <class> {:<field> <expression>}*).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.36 LAMBDA

Macro defined at file ‘warmelt-macro.melt’, line 5537.

macro description: The LAMBDA syntax is for anonymous functions e.g. closures, with closed values (however closing things like :gimple or :long is not permitted, you have to box them explicitly as :value-s.). Syntax is (LAMBDA ( <formals> ... ) <body>...). The formal argument list should have its first formal be a :value. Other arguments can be c-typed with keywords like :value :gimple :long etc. which applies to all succeeding arguments up to the next ctype keyword. The body is a non-empty sequence of expressions. LAMBDA functions can RETURN a value with possible secondary results. See also MULTICALL. LAMBDA expressions are constructive so can appear in LETREC bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.37 LET

Macro defined at file ‘warmelt-macro.melt’, line 5321.

macro description: The LET syntax is for sequential local bindings of expressions. Syntax is (LET ( <binding>... ) <body>...). Each binding is an optional ctype such as :long or :gimple or :value (which is the default), followed by a local variable name, followed by a single expression. The body is a non-empty sequence of expressions, evaluated in an environment enriched with the local bindings. The MELT LET syntax is sequential, like LET* in Scheme so a variable bound in a previous binding can appear in the expression of a later binding.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.38 LETREC

Macro defined at file ‘warmelt-macro.melt’, line 5494.

macro description: The LETREC syntax is for mutually recursive local bindings. Syntax is (LETREC ( <binding>... ) <body>...). Each binding is an optional ctype such as :long or :gimple or :value (which is the default), followed by a local variable name, followed by a single constructive expression, like LAMBDA INSTANCE TUPLE LIST. The body is a non-empty sequence of sub-expressions evaluated in an augmented environment. MELT LETREC is similar to Scheme’s LETREC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.39 LOAD

Macro defined at file ‘warmelt-macro.melt’, line 3660.

macro description: The LOAD macro is for reading expressions from another file. Syntax is (LOAD <file-name>).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.40 MATCH

Macro defined at file ‘warmelt-macro.melt’, line 5176.

macro description: The MATCH syntax is for pattern-matching expressions. Syntax is (MATCH <matched-expression> <match-case>...). Each match-case starts with a pattern followed by expressions. The catch-all pattern ?_ should appear in the last match-case if any. Pattern variables like ?x are bound by the matching in their match-case.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.41 MULTICALL

Macro defined at file ‘warmelt-macro.melt’, line 5727.

macro description: The MULTICALL syntax is for accumulating the primary and secondary results of a function application or a message sending. Syntax is (MULTICALL ( <formals> ) <application-or-sending> <body>...). The first formal is bound to the primary result and should be a :value. Other are for secondary results. The body is evaluated with these results of the given application or sending expression bound by the formals. Inspired by Scheme’s CALL-WITH-VALUES or CommonLisp’s MULTIPLE-VALUE-BIND.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.42 PARENT_MODULE_ENVIRONMENT

Macro defined at file ‘warmelt-macro.melt’, line 6731.

macro description: (PARENT_MODULE_ENVIRONMENT) gives the parent environnment of this module. See also CLASS_ENVIRONMENT and CURRENT_MODULE_ENVIRONMENT_CONTAINER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.43 PROGN

Macro defined at file ‘warmelt-macro.melt’, line 5982.

macro description: The PROGN syntax evaluate a sequence of expressions ignoring all but the last which is the result. Syntax is (PROGN <expression>...).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.44 PUT_FIELDS

Macro defined at file ‘warmelt-macro.melt’, line 4043.

macro description: The PUT_FIELDS syntax is for safely setting fields in an object. Syntax is (PUT_FIELDS <instance-expression> {:<field> <field-expression>}*). If the instance is not an object of the class containing all the fields, no harm is done. See also UNSAFE_PUT_FIELDS which does not produces checks.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.45 QUOTE

Macro defined at file ‘warmelt-macro.melt’, line 5770.

macro description: The QUOTE syntax (usually noted with a prefix quote-character) is for quotations. Only symbols or literals can be quoted. A quoted literal reifies a value, so ’2 is a value of DISCR_CONSTANT_INTEGER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.46 RETURN

Macro defined at file ‘warmelt-macro.melt’, line 6003.

macro description: The RETURN syntax is for returning a primary and possibly secondary results. Syntax is (RETURN <expression>...). If no expression is given, returns nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.47 SETQ

Macro defined at file ‘warmelt-macro.melt’, line 4177.

macro description: The SETQ syntax is for assignment of local variables, usually bound by a LET in the same function. Syntax is (SETQ <symbol> <expr>).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.48 SET_REF

Macro defined at file ‘warmelt-macro.melt’, line 4990.

macro description: The SET_REF macro is a short-hand to put a value inside instances of CLASS_REFERENCE. So (SET_REF <ref> <value>) means (PUT_FIELDS <ref> :REFERENCED_VALUE <value>), hence test that <ref> is indeed an instance of CLASS_REFERENCE before updating it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.49 STORE_PREDEFINED

Macro defined at file ‘warmelt-macro.melt’, line 6833.

macro description: (STORE_PREDEFINED predefined-name value) is storing a predefined value. You probably never need that.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.50 UNLESS

Macro defined at file ‘warmelt-macro.melt’, line 4303.

macro description: The UNLESS syntax sugar is for negated conditional expressions with body. Syntax is (UNLESS <test> <body>...) syntactic sugar for (IF <test> () (PROGN <body>...)).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.51 UNSAFE_GET_FIELD

Macro defined at file ‘warmelt-macro.melt’, line 4084.

macro description: The UNSAFE_GET_FIELD syntax retrieves dangerously a field from an instance and may crash when the instance is not an object of the appropriate class. Syntax is (UNSAFE_GET_FIELD :<field> <expression>). Using GET_FIELD is preferrable.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.52 UNSAFE_PUT_FIELDS

Macro defined at file ‘warmelt-macro.melt’, line 3996.

macro description: The UNSAFE_PUT_FIELDS is for expert use only, since it can crash the running GCC MELT compilation. Syntax is (UNSAFE_PUT_FIELDS <instance> {:<field> <expression>}). It sets fields in an instance without any checks. Using PUT_FIELDS is prefered.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.53 UPDATE_CURRENT_MODULE_ENVIRONMENT_CONTAINER

Macro defined at file ‘warmelt-macro.melt’, line 6760.

macro description: (UPDATE_CURRENT_MODULE_ENVIRONMENT_CONTAINER) is a guru macro to update the current module environment container. You probably should never use it, but it is necessary inside MELT. See CURRENT_MODULE_ENVIRONMENT_CONTAINER. Will be renamed as UPDATE_CURRENT_MODULE_ENVIRONMENT_BOX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.54 USE-PACKAGE-FROM-PKG-CONFIG

Macro defined at file ‘warmelt-macro.melt’, line 5936.

macro description: The USE-PACKAGE-FROM-PKG-CONFIG or USE_PACKAGE_FROM_PKG_CONFIG syntax enables usage of pkg-config-ured packages. Arguments are strings naming packages. This modifies the compilation and linking of generated C code. Probably using some CHEADER for some #include is useful.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.55 USE_PACKAGE_FROM_PKG_CONFIG

Macro defined at file ‘warmelt-macro.melt’, line 5930.

macro description: The USE_PACKAGE_FROM_PKG_CONFIG or USE-PACKAGE-FROM-PKG-CONFIG syntax enables usage of pkg-config-ured packages. Arguments are strings naming packages. This modifies the compilation and linking of generated C code. Probably using some CHEADER for some #include is useful.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.56 VARIADIC

Macro defined at file ‘warmelt-macro.melt’, line 5661.

macro description: The VARIADIC syntax is for getting variable arguments inside variadic functions -using :REST-. Syntax is (VARIADIC variadic-case ...) where each variadic-case is ( (formal ...) body ...) and the last variadic-case can also be (:ELSE body ...). When the actual variable arguments’s signature match the given formals in a variadic-case, they are bound, and the body of that case is evaluated. If no formals match in type and number and if the last variadic-case starts with :ELSE it is exacuted. As an expression, (VARIADIC ...) gives no result, so is :void. In a variadic-case, if no <formals are given, the body is executed when no more actual variable arguments remain.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.57 WHEN

Macro defined at file ‘warmelt-macro.melt’, line 4266.

macro description: The WHEN syntax sugar is for conditional expressions with body. Syntax is (WHEN <test> <body>...) syntactic sugar for (IF <test> (PROGN <body>...)).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2 MELT pattern macros

There are 8 documented pattern-macros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.1 AND

Pattern macro defined at file ‘warmelt-macro.melt’, line 4697.

pattern macro description: The lispy AND conjunction syntax is a short-circuit "and then" conjunction. Expression syntax is (AND <conjunct-subexpression>...) and can evaluate to a :value or a thing such as a :long or a :gimple which is null/zero iff any conjunct is null or zero. Pattern syntax is ?(AND <conjunct-subpattern>...) and matches if all conjunct-subpattern-s match. See also COND OR and IF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.2 CONTAINER

Pattern macro defined at file ‘warmelt-macro.melt’, line 4873.

pattern macro description: The CONTAINER syntax for expressions or patterns is obsolete. Use REFERENCE instead


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.3 INSTANCE

Pattern macro defined at file ‘warmelt-macro.melt’, line 3789.

pattern macro description: The INSTANCE pattern macro matches an instance when used as a pattern, or creates an instance when used as an expression. Pattern syntax is ?(INSTANCE class-name :field1 pattern1 :field2 pattern2...) - there can be zero, one or more distinct fields. A value matches such a pattern if the value is an instance of class-name or a sub-class and if each specified field matches its [sub-]pattern. Expression syntax is (INSTANCE class-name :field1 value1 :field2 value2...). All the fields should be acceptable for the specified class-name. In expressions, missing fields are initialized to nil. In patterns missing fields are not matched. The given class-name is a fixed class (not a variable) possessing all the specified fields.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.4 LIST

Pattern macro defined at file ‘warmelt-macro.melt’, line 5080.

pattern macro description: The LIST syntax is for making or matching lists made of pairs. Expression syntax is (LIST <component-subexpression>...) to make a list of DISCR_LIST with the given components going into the head of pairs of DISCR_PAIR. Pattern syntax is ?(LIST <component-subpattern>...) to match a list of given length with each component matching its corresponding <component-subpattern>. LIST expressions are constructive, so can appear in LETREC bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.5 OBJECT

Pattern macro defined at file ‘warmelt-macro.melt’, line 3894.

pattern macro description: The OBJECT pattern macro matches an instance when used as a pattern. Pattern syntax is ?(OBJECT class-name :field1 pattern1 :field2 pattern2...) - there can be zero, one or more distinct fields. A value matches such a pattern if the value is an instance of exactly class-name (not a sub-class) and if each specified field matches its [sub-]pattern. The OBJECT pattern macro should not be used in expression context. See also INSTANCE and DEFCLASS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.6 OR

Pattern macro defined at file ‘warmelt-macro.melt’, line 4763.

pattern macro description: The lispy OR disjunctive syntax is a short-circuit "or else" disjonction. Expression syntax is (OR <disjunct-subexpression>...) and can evaluate to a :value or a thing such as a :gimple or a :long etc. which is null/zero iff every disjunct is null/zero. Pattern-syntax is ?(OR <disjunct-subpattern>...) and matches if one of the disjunct-subpattern matches. See also COND AND and IF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.7 REFERENCE

Pattern macro defined at file ‘warmelt-macro.melt’, line 4845.

pattern macro description: The REFERENCE syntax is a short-hand for making or matching instances of CLASS_REFERENCE. Expression syntax (REFERENCE <subexpression>) is a short-hand for (INSTANCE CLASS_REFERENCE :REFERENCED_VALUE <subexpression>) to make an instance of CLASS_REFERENCE with the given value as REFERENCED_VALUE. Pattern syntax is ?(REFERENCE <subpattern>) to match an instance of CLASS_REFERENCE with its REFERENCED_VALUE matching <subpattern>. REFERENCE expressions are constructive, so can appear in LETREC bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2.8 TUPLE

Pattern macro defined at file ‘warmelt-macro.melt’, line 5033.

pattern macro description: The TUPLE syntax is for making or matching tuples. Expression syntax is (TUPLE <component-subexpression>...) to make a tuple of DISCR_MULTIPLE with the given components. Pattern syntax is ?(TUPLE <component-subpattern>...) to match a tuple of given length with each component matching its corresponding <component-subpattern>. TUPLE expressions are constructive, so can appear in LETREC bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3 MELT classes

Table of classes sorted by inheritance depth.

0:

CLASS_ROOT

1:

CLASS_ANY_BINDING, CLASS_C_GENERATION_CONTEXT, CLASS_DEBUG_INFORMATION, CLASS_ENVIRONMENT, CLASS_GENERATED_C_CODE, CLASS_MATCHING_CONTEXT, CLASS_MATCH_NORMALIZATION_CONTEXT, CLASS_MODULE_CONTEXT, CLASS_NORMALIZATION_CONTEXT, CLASS_NORMAL_OR_VARIABLE, CLASS_NREP, CLASS_OPTION_DESCRIPTOR, CLASS_PATTERN_CONTEXT, CLASS_PATTERN_EXPANSION_CONTEXT, CLASS_PROPED, CLASS_REFERENCE

2:

CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_CHILD_PROCESS_HANDLER, CLASS_DESCRIBED_ENVIRONMENT, CLASS_EXPORTED_BINDING, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_INITIAL_GENERATION_CONTEXT, CLASS_INPUT_CHANNEL_HANDLER, CLASS_LABEL_BINDING, CLASS_LET_BINDING, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MAKEDOC_INFO, CLASS_MATCHED_BINDING, CLASS_MATCHED_DATA, CLASS_MATCH_CASE, CLASS_MATCH_GRAPHIC, CLASS_NAMED, CLASS_NORMAL_CONSTRUCTOR_BINDING, CLASS_NREP_ANYPROC, CLASS_NREP_EXPRESSION, CLASS_NREP_QUASIDATA, CLASS_NREP_SIMPLE, CLASS_OPENGPU_INDUCTION_VARIABLE, CLASS_OPENGPU_LINEAR_COMPOSITION, CLASS_PROBED_FILE, CLASS_PROBED_INTERESTING_LOCATION, CLASS_PROBE_DATA, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT

3:

CLASS_ANY_MATCHER, CLASS_CITERATOR, CLASS_CITERATOR_BINDING, CLASS_CLASS_BINDING, CLASS_CMATCHER_BINDING, CLASS_CTYPE, CLASS_DEFINED_VALUE_BINDING, CLASS_DELAYED_QUEUE, CLASS_DISCRIMINANT, CLASS_EXTENSION_GENERATION_CONTEXT, CLASS_FIELD, CLASS_FIELD_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER_BINDING, CLASS_GCC_PASS, CLASS_GCC_PRAGMA, CLASS_INSTANCE_BINDING, CLASS_LETREC_BINDING, CLASS_MACRO_BINDING, CLASS_MATCHED_NORMAL_DATA, CLASS_MATCH_FLAG, CLASS_MATCH_STEP, CLASS_MELT_MODE, CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING, CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING, CLASS_NORMAL_CONSTRUCTED_LIST_BINDING, CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING, CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING, CLASS_NORMAL_LET_BINDING, CLASS_NREP_BOUND_DATA, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_INITPROC, CLASS_NREP_JUMP_WHEN_IS_A, CLASS_NREP_LET, CLASS_NREP_MATCHED_DATA, CLASS_NREP_MATCH_DATA_ACTION, CLASS_NREP_MATCH_FLAG, CLASS_NREP_MATCH_JUMP, CLASS_NREP_MATCH_LABEL, CLASS_NREP_NIL, CLASS_NREP_PREDEF, CLASS_NREP_PROGN, CLASS_NREP_RETURN, CLASS_NREP_ROUTPROC, CLASS_NREP_TYPED_EXPRESSION, CLASS_PRIMITIVE, CLASS_PRIMITIVE_BINDING, CLASS_SELECTOR, CLASS_SELECTOR_BINDING, CLASS_SEXPR, CLASS_SOURCE, CLASS_SYMBOL, CLASS_SYSTEM_DATA, CLASS_VALUE_BINDING, CLASS_VALUE_DESCRIPTOR

4:

CLASS_CLASS, CLASS_CLONED_SYMBOL, CLASS_CMATCHER, CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN, CLASS_FUNMATCHER, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_RTL_PASS, CLASS_KEYWORD, CLASS_MATCH_STEP_THEN, CLASS_NREP_ALTMATCH, CLASS_NREP_CHUNK, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_IFCOMMON, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_LETREC, CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER, CLASS_NREP_MATCH_LABEL_END, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS, CLASS_PATMACRO_BINDING, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CHEADER, CLASS_SOURCE_COMMENT, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_SYNONYM, CLASS_SOURCE_FIELDASSIGN, CLASS_SOURCE_FIELD_PATTERN, CLASS_SOURCE_GENERATOR_DEVICE, CLASS_SOURCE_GET_FIELD, CLASS_SOURCE_IF, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MULTICALL, CLASS_SOURCE_OR, CLASS_SOURCE_PATTERN, CLASS_SOURCE_PROGN, CLASS_SOURCE_PUT_FIELDS, CLASS_SOURCE_QUOTE, CLASS_SOURCE_SETQ, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG, CLASS_VARISIZED_VALUE_DESCRIPTOR

5:

CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG, CLASS_NREP_APPLY, CLASS_NREP_IF, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFVARIADIC, CLASS_NREP_MSEND, CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_IFELSE, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MSEND, CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_RETURN, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNSAFE_GET_FIELD, CLASS_SOURCE_UNSAFE_PUT_FIELDS

6:

CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_NREP_IFISA, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_TUPLE

7:

CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_PATTERN_MATCHER

8:

CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.1 CLASS_ALARM_HANDLER

Class defined at file ‘warmelt-first.melt’, line 795.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1ALARMH_PERIODCLASS_ALARM_HANDLER
2ALARMH_CLOSCLASS_ALARM_HANDLER
3ALARMH_DATACLASS_ALARM_HANDLER

class description: Internal class for alarm handling. ALARMH_PERIOD is the boxed period in milliseconds, ALARMH_CLOS is the closure to be called, ALARMH_DATA is the client data. See REGISTER_ALARM_TIMER and


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.2 CLASS_ANALYSIS_STATE

Class defined at file ‘xtramelt-ana-base.melt’, line 36.

2 ancestors: CLASS_ROOT CLASS_PROPED.

1 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED

class description: A class containing some analysis state, to be subclassed.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.3 CLASS_ANY_BINDING

Class defined at file ‘warmelt-first.melt’, line 464.

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING

27 sub-classes: CLASS_CITERATOR_BINDING, CLASS_CLASS_BINDING, CLASS_CMATCHER_BINDING, CLASS_DEFINED_VALUE_BINDING, CLASS_EXPORTED_BINDING, CLASS_FIELD_BINDING, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER_BINDING, CLASS_INSTANCE_BINDING, CLASS_LABEL_BINDING, CLASS_LETREC_BINDING, CLASS_LET_BINDING, CLASS_MACRO_BINDING, CLASS_MATCHED_BINDING, CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING, CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING, CLASS_NORMAL_CONSTRUCTED_LIST_BINDING, CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING, CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING, CLASS_NORMAL_CONSTRUCTOR_BINDING, CLASS_NORMAL_LET_BINDING, CLASS_PATMACRO_BINDING, CLASS_PRIMITIVE_BINDING, CLASS_SELECTOR_BINDING, CLASS_VALUE_BINDING.

class description: The CLASS_ANY_BINDING is the super-class of every binding. The BINDER field is the bound name. Bindings are added by module initializers. Don’t create bindings by instanciating this class in user code, they are created within the Melt translator.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.4 CLASS_ANY_MATCHER

Class defined at file ‘warmelt-first.melt’, line 158.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2AMATCH_INCLASS_ANY_MATCHER
3AMATCH_MATCHBINDCLASS_ANY_MATCHER
4AMATCH_OUTCLASS_ANY_MATCHER

2 sub-classes: CLASS_CMATCHER, CLASS_FUNMATCHER.

class description: The CLASS_ANY_MATCHER is the common super-class for matcher descriptors. The AMATCH_IN gives the formal input arguments, the AMATCH_MATCHBIND is the formal binding of the matched stuff, and AMATCH_OUT is the formal output arguments. Instances of sub-classes of CLASS_ANY_MATCHER are automagically created by macros like DEFCMATCHER and DEFUNMATCHER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.5 CLASS_CHILD_PROCESS_HANDLER

Class defined at file ‘warmelt-first.melt’, line 807.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1CHILPROH_PIDCLASS_CHILD_PROCESS_HANDLER
2CHILPROH_CLOSCLASS_CHILD_PROCESS_HANDLER
3CHILPROH_DATACLASS_CHILD_PROCESS_HANDLER

class description: Internal class for child process handling. CHILPROH_PID is the boxed pid, CHILPROH_CLOS is the boxed closure, CHILPROH_DATA is the client data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.6 CLASS_CITERATOR

Class defined at file ‘warmelt-first.melt’, line 141.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

7 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CITER_START_FORMALSCLASS_CITERATOR
3CITER_STATECLASS_CITERATOR
4CITER_BODY_FORMALSCLASS_CITERATOR
5CITER_EXPBEFORECLASS_CITERATOR
6CITER_EXPAFTERCLASS_CITERATOR

class description: The CLASS_CITERATOR is the class describing c-iterators. The formal start arguments are in the CITER_START_FORMALS field, the CITER_STATE field gives the state symbol, the CITER_BODY_FORMALS gives the formal body arguments, and the before and after expansions are CITER_EXPBEFORE and CITER_EXPAFTER. Instances of CLASS_CITERATOR are automagically created by the DEFCITERATOR macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.7 CLASS_CITERATOR_BINDING

Class defined at file ‘warmelt-first.melt’, line 545.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2CBIND_CITERDEFCLASS_CITERATOR_BINDING
3CBIND_CITERATORCLASS_CITERATOR_BINDING

class description: The internal CLASS_CITERATOR_BINDING is for c-iterator bindings. See the DEFCITERATOR macro. The CBIND_CITERDEF gives the definition, and the CBIND_CITERATOR provides the c-iterator itself.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.8 CLASS_CLASS

Class defined at file ‘warmelt-first.melt’, line 105.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_DISCRIMINANT.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2DISC_METHODICTCLASS_DISCRIMINANT
3DISC_SENDERCLASS_DISCRIMINANT
4DISC_SUPERCLASS_DISCRIMINANT
5CLASS_ANCESTORSCLASS_CLASS
6CLASS_FIELDSCLASS_CLASS
7CLASS_DATACLASS_CLASS

class description: The CLASS_CLASS is the class of all classes - which are therefore discriminants. The CLASS_ANCESTORS field holds the sequence of ancestors. The CLASS_FIELDS gives the sequence of inherited and own fields. The CLASS_DATA is for class variables. Instances of CLASS_CLASS are automagically created by the DEFCLASS macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.9 CLASS_CLASS_BINDING

Class defined at file ‘warmelt-first.melt’, line 577.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2CBIND_DEFCLASSCLASS_CLASS_BINDING
3CBIND_CLASSCLASS_CLASS_BINDING

class description: The internal CLASS_CLASS_BINDING is for class bindings. See the DEFCLASS macro. The definition is provided by CBIND_DEFCLASS, and the class itself is given by CBIND_CLASS. A class definition also define fields.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.10 CLASS_CLONED_SYMBOL

Class defined at file ‘warmelt-first.melt’, line 264.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_SYMBOL.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SYMB_DATACLASS_SYMBOL
3CSYM_URANKCLASS_CLONED_SYMBOL

class description: The CLASS_CLONED_SYMBOL is the sub-class of cloned symbols, e.g. like GENSYM-ed symbols is many Lisps. Cloned symbols are internally generated inside the MELT translator by the CLONE_SYMBOL function. Their CSYM_URANK field gives their unique rank as a boxed integer. Cloned symbols are not interned.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.11 CLASS_CMATCHER

Class defined at file ‘warmelt-first.melt’, line 172.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_ANY_MATCHER.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2AMATCH_INCLASS_ANY_MATCHER
3AMATCH_MATCHBINDCLASS_ANY_MATCHER
4AMATCH_OUTCLASS_ANY_MATCHER
5CMATCH_STATECLASS_CMATCHER
6CMATCH_EXPTESTCLASS_CMATCHER
7CMATCH_EXPFILLCLASS_CMATCHER
8CMATCH_EXPOPERCLASS_CMATCHER

class description: The CLASS_CMATCHER is the class for c-matcher descriptors. CMATCH_STATE is the state symbol, CMATCH_EXPTEST gives the expansion for testing in patterns, CMATCH_EXPFILL is the expansion for filling a matched pattern. CMATCH_EXPOPER is the expansion for operator uses. Instances of CLASS_CMATCHER are automagically created by the DEFCMATCHER macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.12 CLASS_CMATCHER_BINDING

Class defined at file ‘warmelt-first.melt’, line 607.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2CMBIND_MATCHERCLASS_CMATCHER_BINDING

class description: The internal CLASS_CMATCHER_BINDING is for c-matcher bindings. See the DEFCMATCHER macro. The c-matcher is in CMBIND_MATCHER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.13 CLASS_CTYPE

Class defined at file ‘warmelt-first.melt’, line 288.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

11 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_CTYPE
3CTYPE_CNAMECLASS_CTYPE
4CTYPE_PARCHARCLASS_CTYPE
5CTYPE_PARSTRINGCLASS_CTYPE
6CTYPE_ARGFIELDCLASS_CTYPE
7CTYPE_RESFIELDCLASS_CTYPE
8CTYPE_MARKERCLASS_CTYPE
9CTYPE_DESCRCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE

2 sub-classes: CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN.

class description: The CLASS_CTYPE is for predefined descriptors of C types (like long or tree). CTYPE_KEYWORD gives the associated keywords (for formal argument lists, etc...), CTYPE_CNAME gives the C identifier of the type. Parameter passing is described by CTYPE_PARCHAR (for the character) and CTYPE_PARSTRING (for the corresponding C string). Argument member in union is given by CTYPE_ARGFIELD, and by CTYPE_RESFIELD for results. The marking routine is CTYPE_MARKER and CTYPE_DESCR is some descriptive string or data. A possible alternate keyword is given by CTYPE_ALTKEYWORD. Adding new c-types requires an update of MELT runtime!


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.14 CLASS_CTYPE_GTY

Class defined at file ‘warmelt-first.melt’, line 328.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_CTYPE.

33 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_CTYPE
3CTYPE_CNAMECLASS_CTYPE
4CTYPE_PARCHARCLASS_CTYPE
5CTYPE_PARSTRINGCLASS_CTYPE
6CTYPE_ARGFIELDCLASS_CTYPE
7CTYPE_RESFIELDCLASS_CTYPE
8CTYPE_MARKERCLASS_CTYPE
9CTYPE_DESCRCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE
11CTYPG_BOXEDMAGICCLASS_CTYPE_GTY
12CTYPG_MAPMAGICCLASS_CTYPE_GTY
13CTYPG_BOXEDSTRUCTCLASS_CTYPE_GTY
14CTYPG_BOXEDUNIMEMBCLASS_CTYPE_GTY
15CTYPG_ENTRYSTRUCTCLASS_CTYPE_GTY
16CTYPG_MAPSTRUCTCLASS_CTYPE_GTY
17CTYPG_BOXDISCRCLASS_CTYPE_GTY
18CTYPG_MAPDISCRCLASS_CTYPE_GTY
19CTYPG_MAPUNIMEMBCLASS_CTYPE_GTY
20CTYPG_BOXFUNCLASS_CTYPE_GTY
21CTYPG_UNBOXFUNCLASS_CTYPE_GTY
22CTYPG_UPDATEBOXFUNCLASS_CTYPE_GTY
23CTYPG_NEWMAPFUNCLASS_CTYPE_GTY
24CTYPG_MAPGETFUNCLASS_CTYPE_GTY
25CTYPG_MAPPUTFUNCLASS_CTYPE_GTY
26CTYPG_MAPREMOVEFUNCLASS_CTYPE_GTY
27CTYPG_MAPCOUNTFUNCLASS_CTYPE_GTY
28CTYPG_MAPSIZEFUNCLASS_CTYPE_GTY
29CTYPG_MAPNATTFUNCLASS_CTYPE_GTY
30CTYPG_MAPNVALFUNCLASS_CTYPE_GTY
31CTYPG_MAPAUXDATAFUNCLASS_CTYPE_GTY
32CTYPG_MAPAUXPUTFUNCLASS_CTYPE_GTY

class description: The CLASS_CTYPE_GTY is a subclass of CLASS_CTYPE and describes C types which are GTY-ed, that is handled by the Ggc [the existing Gcc Garbage Collector].


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.15 CLASS_CTYPE_PLAIN

Class defined at file ‘warmelt-first.melt’, line 314.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_CTYPE.

13 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_CTYPE
3CTYPE_CNAMECLASS_CTYPE
4CTYPE_PARCHARCLASS_CTYPE
5CTYPE_PARSTRINGCLASS_CTYPE
6CTYPE_ARGFIELDCLASS_CTYPE
7CTYPE_RESFIELDCLASS_CTYPE
8CTYPE_MARKERCLASS_CTYPE
9CTYPE_DESCRCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE
11CTYPP_BOXINGCLASS_CTYPE_PLAIN
12CTYPP_UNBOXINGCLASS_CTYPE_PLAIN

class description: The CLASS_CTYPE_PLAIN is for predefined descriptors of plain c-types which are not GTY-ed so need a boxing and unboxing chunk. The CTYPP_BOXING is the name of a C function or macro getting the discriminant and the stuff and boxing them. The CTYPP_UNBOXING is the name of a C function or macro unboxing its value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.16 CLASS_C_GENERATION_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 917.

1 ancestors: CLASS_ROOT.

10 fields:

offsetnameclass
0GNCX_OBJROUTCLASS_C_GENERATION_CONTEXT
1GNCX_LOCMAPCLASS_C_GENERATION_CONTEXT
2GNCX_FREEPTRLISTCLASS_C_GENERATION_CONTEXT
3GNCX_FREELONGLISTCLASS_C_GENERATION_CONTEXT
4GNCX_FREEOTHERMAPSCLASS_C_GENERATION_CONTEXT
5GNCX_RETLOCCLASS_C_GENERATION_CONTEXT
6GNCX_COMPICACHECLASS_C_GENERATION_CONTEXT
7GNCX_MODULCONTEXTCLASS_C_GENERATION_CONTEXT
8GNCX_MATCHMAPCLASS_C_GENERATION_CONTEXT
9GNCX_ALTMATCHCLASS_C_GENERATION_CONTEXT

2 sub-classes: CLASS_EXTENSION_GENERATION_CONTEXT, CLASS_INITIAL_GENERATION_CONTEXT.

class description: The internal CLASS_C_GENERATION_CONTEXT (for gurus) is the class of contexts for C code generation, while generating a single C routine. The containing object routine is GNCX_OBJROUT. The object map from normal bindings to local is given in GNCX_LOCMAP. The list of freed local value pointers is in GNCX_FREEPTRLIST. The list of free longs is in GNCX_FREELONGLIST. For other c-types, each c-type has its list, associated to it in GNCX_FREEOTHERMAPS. The return location is in GNCX_RETLOC. The cached map of procedures to compiled routines is in GNCX_COMPICACHE. The module compilation context is in GNCX_MODULCONTEXT. A map keyed by normal matchers to give a unique label prefix is in GNCX_MATCHMAP.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.17 CLASS_DEBUG_INFORMATION

Class defined at file ‘warmelt-debug.melt’, line 39.

1 ancestors: CLASS_ROOT.

3 fields:

offsetnameclass
0DBGI_OUTCLASS_DEBUG_INFORMATION
1DBGI_OCCMAPCLASS_DEBUG_INFORMATION
2DBGI_MAXDEPTHCLASS_DEBUG_INFORMATION

class description: The CLASS_DEBUG_INFORMATION is for debug information output, e.g. DEBUG_MSG macro. The produced output or buffer is DBGI_OUT, the occurrence map is DBGI_OCCMAP, used to avoid outputting twice the same object. The boxed maximal depth is DBGI_MAXDEPTH.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.18 CLASS_DEFINED_VALUE_BINDING

Class defined at file ‘warmelt-first.melt’, line 568.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2DEFVALBIND_DEFINECLASS_DEFINED_VALUE_BINDING

class description: The internal CLASS_DEFINED_VALUE_BINDING is for defined values thru the DEFINE macro. DEFVALBIND_DEFINE provides the definition. FIXBIND_DATA gives a symbol occurrence in that case.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.19 CLASS_DELAYED_QUEUE

Class defined at file ‘warmelt-first.melt’, line 3045.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2DELQU_FIRSTCLASS_DELAYED_QUEUE
3DELQU_LASTCLASS_DELAYED_QUEUE
4DELQU_DATACLASS_DELAYED_QUEUE

class description: A class for named queues of delayed tasks. DELQU_FIRST is the list of actions to do first, DELQU_LAST those to do last.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.20 CLASS_DESCRIBED_ENVIRONMENT

Class defined at file ‘warmelt-first.melt’, line 456.

2 ancestors: CLASS_ROOT CLASS_ENVIRONMENT.

4 fields:

offsetnameclass
0ENV_BINDCLASS_ENVIRONMENT
1ENV_PREVCLASS_ENVIRONMENT
2ENV_PROCCLASS_ENVIRONMENT
3DENV_DESCRCLASS_DESCRIBED_ENVIRONMENT

class description: The CLASS_DESCRIBED_ENVIRONMENT provides an extra descriptor DENV_DESCR which can for example be a descriptive string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.21 CLASS_DISCRIMINANT

Class defined at file ‘warmelt-first.melt’, line 92.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2DISC_METHODICTCLASS_DISCRIMINANT
3DISC_SENDERCLASS_DISCRIMINANT
4DISC_SUPERCLASS_DISCRIMINANT

1 sub-classes: CLASS_CLASS.

class description: The CLASS_DISCRIMINANT is the class of every discriminant. It has the method dictionnary DISC_METHODICT and the super-discriminant DISC_SUPER. The DISC_SENDER can hold a closure doing the send if the selector is not found. Otherwise, the default is to send thru the super-discriminant.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.22 CLASS_ENVIRONMENT

Class defined at file ‘warmelt-first.melt’, line 442.

1 ancestors: CLASS_ROOT.

3 fields:

offsetnameclass
0ENV_BINDCLASS_ENVIRONMENT
1ENV_PREVCLASS_ENVIRONMENT
2ENV_PROCCLASS_ENVIRONMENT

1 sub-classes: CLASS_DESCRIBED_ENVIRONMENT.

class description: The CLASS_ENVIRONMENT reifies environments. The binding map is ENV_BIND, the previous environment is ENV_PREV, and the procedure if any of this environment is ENV_PROC. It is heavily used within the MELT translator. Module initialization produces fresh instances of it. See the CURRENT_MODULE_ENVIRONMENT_CONTAINER and PARENT_MODULE_ENVIRONMENT macros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.23 CLASS_EXPORTED_BINDING

Class defined at file ‘warmelt-first.melt’, line 473.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

1 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING

3 sub-classes: CLASS_MACRO_BINDING, CLASS_PATMACRO_BINDING, CLASS_VALUE_BINDING.

class description: The CLASS_EXPORTED_BINDING is the super-class of exported bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.24 CLASS_EXTENSION_GENERATION_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 964.

3 ancestors: CLASS_ROOT CLASS_C_GENERATION_CONTEXT CLASS_INITIAL_GENERATION_CONTEXT.

16 fields:

offsetnameclass
0GNCX_OBJROUTCLASS_C_GENERATION_CONTEXT
1GNCX_LOCMAPCLASS_C_GENERATION_CONTEXT
2GNCX_FREEPTRLISTCLASS_C_GENERATION_CONTEXT
3GNCX_FREELONGLISTCLASS_C_GENERATION_CONTEXT
4GNCX_FREEOTHERMAPSCLASS_C_GENERATION_CONTEXT
5GNCX_RETLOCCLASS_C_GENERATION_CONTEXT
6GNCX_COMPICACHECLASS_C_GENERATION_CONTEXT
7GNCX_MODULCONTEXTCLASS_C_GENERATION_CONTEXT
8GNCX_MATCHMAPCLASS_C_GENERATION_CONTEXT
9GNCX_ALTMATCHCLASS_C_GENERATION_CONTEXT
10IGNCX_PREVENVLOCCLASS_INITIAL_GENERATION_CONTEXT
11IGNCX_CONTENVLOCCLASS_INITIAL_GENERATION_CONTEXT
12IGNCX_PROCURMODENVLISTCLASS_INITIAL_GENERATION_CONTEXT
13IGNCX_IMPORTMAPCLASS_INITIAL_GENERATION_CONTEXT
14EGNCX_VALOCLISTCLASS_EXTENSION_GENERATION_CONTEXT
15EGNCX_LITVALTUPLOCCLASS_EXTENSION_GENERATION_CONTEXT

class description: The internal CLASS_EXTENSION_GENERATION_CONTEXT (for gurus) is used when generating the initial routine of an extension, i.e. for runtime evaluation of expressions. EGNCX_VALOCLIST is the list of literal values stack locations, and EGNCX_LITVALTUPLOC is the stack location for the literal values tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.25 CLASS_FIELD

Class defined at file ‘warmelt-first.melt’, line 118.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2FLD_OWNCLASSCLASS_FIELD
3FLD_DATACLASS_FIELD

class description: The CLASS_FIELD is the class of every field. Its objnum is its offset. Its FLD_OWNCLASS is the class owning that field. The FLD_DATA is for additional data. Instances of CLASS_FIELD are automagically created by the DEFCLASS macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.26 CLASS_FIELD_BINDING

Class defined at file ‘warmelt-first.melt’, line 588.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2FLBIND_CLABINDCLASS_FIELD_BINDING
3FLBIND_FIELDCLASS_FIELD_BINDING

class description: The internal CLASS_FIELD_BINDING is for field bindings. See the DEFCLASS macro. The class binding is FLBIND_CLABIND, and the defined field is FLBIND_FIELD.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.27 CLASS_FIXED_BINDING

Class defined at file ‘warmelt-first.melt’, line 515.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING

10 sub-classes: CLASS_CITERATOR_BINDING, CLASS_CLASS_BINDING, CLASS_CMATCHER_BINDING, CLASS_DEFINED_VALUE_BINDING, CLASS_FIELD_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER_BINDING, CLASS_INSTANCE_BINDING, CLASS_PRIMITIVE_BINDING, CLASS_SELECTOR_BINDING.

class description: The internal CLASS_FIXED_BINDING is a super-class of bindings inside a compilation unit. The data description is inside FIXBIND_DATA. Fixed bindings are internal to the translator.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.28 CLASS_FORMAL_BINDING

Class defined at file ‘warmelt-first.melt’, line 502.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FBIND_TYPECLASS_FORMAL_BINDING

class description: The CLASS_FORMAL_BINDING is the class of formal argument bindings [like in defun lambda defprimitive defciterator etc..]. The FBIND_TYPE gives the formal’s c-type. The object’s number is the argument rank.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.29 CLASS_FUNCTION_BINDING

Class defined at file ‘warmelt-first.melt’, line 557.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2FUBIND_DEFUNCLASS_FUNCTION_BINDING

class description: The internal CLASS_FUNCTION_BINDING is for function bindings. See the DEFUN macro. The FUBIND_DEFUN provides the definition.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.30 CLASS_FUNMATCHER

Class defined at file ‘warmelt-first.melt’, line 191.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_ANY_MATCHER.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2AMATCH_INCLASS_ANY_MATCHER
3AMATCH_MATCHBINDCLASS_ANY_MATCHER
4AMATCH_OUTCLASS_ANY_MATCHER
5FMATCH_MATCHFCLASS_FUNMATCHER
6FMATCH_APPLYFCLASS_FUNMATCHER
7FMATCH_DATACLASS_FUNMATCHER

class description: The CLASS_FUNMATCHER describes fun-matchers. FMATCH_MATCHF is the matching function -for patterns. FMATCH_APPLYF is the applying function -for expressions. FMATCH_DATA is some additional client data. Instances of CLASS_FUNMATCHER are automagically created by the DEFUNMATCHER macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.31 CLASS_FUNMATCHER_BINDING

Class defined at file ‘warmelt-first.melt’, line 617.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2FMBIND_FUNMATCHERCLASS_FUNMATCHER_BINDING
3FMBIND_DEFUNMATCHERCLASS_FUNMATCHER_BINDING

class description: The internal CLASS_FUNMATCHER_BINDING is for funmatcher bindings. See the DEFUNMATCHER macro. The funmatcher is in FMBIND_FUNMATCHER and its definition in FMBIND_DEFUNMATCHER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.32 CLASS_GCC_ANY_IPA_PASS

Class defined at file ‘warmelt-first.melt’, line 737.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PASS.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS

2 sub-classes: CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS.

class description: The CLASS_GCC_ANY_IPA_PASS is the common class for every GCC inter procedural analysis [IPA] pass descriptors.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.33 CLASS_GCC_GIMPLE_PASS

Class defined at file ‘warmelt-first.melt’, line 722.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PASS.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS

class description: The CLASS_GCC_GIMPLE_PASS is for GCC gimple pass descriptors.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.34 CLASS_GCC_PASS

Class defined at file ‘warmelt-first.melt’, line 691.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS

5 sub-classes: CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS.

class description: The CLASS_GCC_PASS is the super-class of GCC compiler passes descriptors, as provided in MELT. Once correctly instanciated, such a pass descriptor should be registered thru the INSTALL_MELT_GCC_PASS primitive. Pass descriptors are named (be careful to give a unique unused name!). The GCCPASS_GATE is the pass gate function. The GCCPASS_EXEC is the pass execution function. The field GCCPASS_DATA can be used for client data. The fields GCCPASS_PROPERTIES_REQUIRED GCCPASS_PROPERTIES_PROVIDED GCCPASS_PROPERTIES_DESTROYED GCCPASS_TODO_FLAGS_START GCCPASS_TODO_FLAGS_FINISH are like their counterparts in C, and can be a boxed integer, a string or named [i.e. symbol], or a tuple or list of them.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.35 CLASS_GCC_PRAGMA

Class defined at file ‘warmelt-first.melt’, line 674.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPRAGMA_HANDLERCLASS_GCC_PRAGMA
3GCCPRAGMA_DATACLASS_GCC_PRAGMA

class description: The CLASS_GCC_PRAGMA is for objects describing GCC pragmas, as provided by MELT code. Once correctly instanciated, such a pragma descriptor should be registered thru the INSTALL_MELT_GCC_PRAGMA primitive. MELT pragmas are named, and all belong to the same MELT pragma namespace. C code using them will use: #pragma MELT name ... and the name there is the string given by the NAMED_NAME field of the pragma descriptor.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.36 CLASS_GCC_RTL_PASS

Class defined at file ‘warmelt-first.melt’, line 729.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PASS.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS

class description: The CLASS_GCC_RTL_PASS is for GCC RTL pass descriptors.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.37 CLASS_GCC_SIMPLE_IPA_PASS

Class defined at file ‘warmelt-first.melt’, line 743.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PASS CLASS_GCC_ANY_IPA_PASS.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS

class description: The CLASS_GCC_SIMPLE_IPA_PASS is for GCC simple IPA pass descriptors.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.38 CLASS_GCC_TRANSFORM_IPA_PASS

Class defined at file ‘warmelt-first.melt’, line 750.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PASS CLASS_GCC_ANY_IPA_PASS.

13 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPASS_GATECLASS_GCC_PASS
3GCCPASS_EXECCLASS_GCC_PASS
4GCCPASS_DATACLASS_GCC_PASS
5GCCPASS_PROPERTIES_REQUIREDCLASS_GCC_PASS
6GCCPASS_PROPERTIES_PROVIDEDCLASS_GCC_PASS
7GCCPASS_PROPERTIES_DESTROYEDCLASS_GCC_PASS
8GCCPASS_TODO_FLAGS_STARTCLASS_GCC_PASS
9GCCPASS_TODO_FLAGS_FINISHCLASS_GCC_PASS
10GCCTRIPAPASS_STMT_FIXUPCLASS_GCC_TRANSFORM_IPA_PASS
11GCCTRIPAPASS_FUNCTION_TRANSFORMCLASS_GCC_TRANSFORM_IPA_PASS
12GCCTRIPAPASS_VARIABLE_TRANSFORMCLASS_GCC_TRANSFORM_IPA_PASS

class description: The CLASS_GCC_TRANSFORM_IPA_PASS is for GCC full IPA pass descriptors which don’t read or write any LTO information but are plain transforming IPA passes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.39 CLASS_GENERATED_C_CODE

Class defined at file ‘warmelt-first.melt’, line 977.

1 ancestors: CLASS_ROOT.

class description: The super-class CLASS_GENERATED_C_CODE is a common super-class for representing generated C abstract syntax trees inside the MELT translator. Within MELT, it has nothing in common with GCC compiled C abstract syntax trees (that is :tree and :gimple).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.40 CLASS_INITIAL_GENERATION_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 947.

2 ancestors: CLASS_ROOT CLASS_C_GENERATION_CONTEXT.

14 fields:

offsetnameclass
0GNCX_OBJROUTCLASS_C_GENERATION_CONTEXT
1GNCX_LOCMAPCLASS_C_GENERATION_CONTEXT
2GNCX_FREEPTRLISTCLASS_C_GENERATION_CONTEXT
3GNCX_FREELONGLISTCLASS_C_GENERATION_CONTEXT
4GNCX_FREEOTHERMAPSCLASS_C_GENERATION_CONTEXT
5GNCX_RETLOCCLASS_C_GENERATION_CONTEXT
6GNCX_COMPICACHECLASS_C_GENERATION_CONTEXT
7GNCX_MODULCONTEXTCLASS_C_GENERATION_CONTEXT
8GNCX_MATCHMAPCLASS_C_GENERATION_CONTEXT
9GNCX_ALTMATCHCLASS_C_GENERATION_CONTEXT
10IGNCX_PREVENVLOCCLASS_INITIAL_GENERATION_CONTEXT
11IGNCX_CONTENVLOCCLASS_INITIAL_GENERATION_CONTEXT
12IGNCX_PROCURMODENVLISTCLASS_INITIAL_GENERATION_CONTEXT
13IGNCX_IMPORTMAPCLASS_INITIAL_GENERATION_CONTEXT

1 sub-classes: CLASS_EXTENSION_GENERATION_CONTEXT.

class description: The internal CLASS_INITIAL_GENERATION_CONTEXT (for gurus) is used when generating the initial routine of a module, which builds the current environment and evaluates the module toplevel expressions. The IGNCX_PREVENVLOC is the local stack slot for the parent environment. The IGNCX_CONTENVLOC is the local for the container of the current module’s environment. The list of routines using it is in IGNCX_PROCURMODENVLIST. The mapping of imported symbolts to locals is IGNCX_IMPORTMAP.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.41 CLASS_INPUT_CHANNEL_HANDLER

Class defined at file ‘warmelt-first.melt’, line 780.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1INCH_SBUFCLASS_INPUT_CHANNEL_HANDLER
2INCH_CLOSCLASS_INPUT_CHANNEL_HANDLER
3INCH_DATACLASS_INPUT_CHANNEL_HANDLER

class description: Internal class for input channel handling. Its magic number is the file descriptor. INCH_SBUF is the read-only string-buffer for the input, INCH_CLOS is a closure, and INCH_DATA is some client data. See also REGISTER_INPUT_CHANNEL_HANDLER. Use carefully, and don’t mutate it. All fields should be considered read-only from application code, which is only permitted to use INCH_DATA and mutate it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.42 CLASS_INSTANCE_BINDING

Class defined at file ‘warmelt-first.melt’, line 598.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2IBIND_ICLASSCLASS_INSTANCE_BINDING

class description: The internal CLASS_INSTANCE_BINDING is for instance bindings. See the DEFINSTANCE macro. The instance’s class is in IBIND_ICLASS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.43 CLASS_KEYWORD

Class defined at file ‘warmelt-first.melt’, line 275.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_SYMBOL.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SYMB_DATACLASS_SYMBOL

class description: The CLASS_KEYWORD is the sub-class of keywords, that is symbols starting with a colon, which are handled specially and implicitly quoted. Most ctypes are denoted by such keywords like :long :value etc. The reader parses as keyword any symbol starting with a colon. Keywords are interned inside the INITIAL_SYSTEM_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.44 CLASS_LABEL_BINDING

Class defined at file ‘warmelt-first.melt’, line 658.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1LABIND_LOCCLASS_LABEL_BINDING
2LABIND_CLONSYCLASS_LABEL_BINDING
3LABIND_RESCLASS_LABEL_BINDING

class description: The internal CLASS_LABEL_BINDING is for labels. See The FOREVER and EXIT macros. The label source location is LABIND_LOC, the cloned symbol unique to the label is LABIND_CLONSY. The local variables for the result is LABIND_RES.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.45 CLASS_LETREC_BINDING

Class defined at file ‘warmelt-first.melt’, line 640.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_LET_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1LETBIND_TYPECLASS_LET_BINDING
2LETBIND_EXPRCLASS_LET_BINDING
3LETBIND_LOCCLASS_LET_BINDING

class description: The internal CLASS_LETREC_BINDING is for internal letrec bindings. See the LETREC macro. The bound expression should be recursively constructible (like LAMBDA TUPLE LIST INSTANCE ...)


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.46 CLASS_LET_BINDING

Class defined at file ‘warmelt-first.melt’, line 627.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1LETBIND_TYPECLASS_LET_BINDING
2LETBIND_EXPRCLASS_LET_BINDING
3LETBIND_LOCCLASS_LET_BINDING

2 sub-classes: CLASS_LETREC_BINDING, CLASS_NORMAL_LET_BINDING.

class description: The internal CLASS_LET_BINDING is for internal let bindings. See The LET macro and also the CLASS_NORMAL_LET_BINDING. The c-type of the bound valus is LETBIND_TYPE, the expression is LETBIND_EXPR, the source location if any is LEBIND_LOC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.47 CLASS_LITERAL_VALUE

Class defined at file ‘warmelt-normal.melt’, line 858.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LITV_VALUECLASS_LITERAL_VALUE
2LITV_RANKCLASS_LITERAL_VALUE
3LITV_LOCCLASS_LITERAL_VALUE

class description: CLASS_LITERAL_VALUE is the class managing literal values in runtime extension modules. LITV_VALUE is the literal value itself LITV_RANK is its unique rank in the extension module LITV_LOC may contain its stack location


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.48 CLASS_LOCATED

Class defined at file ‘warmelt-first.melt’, line 213.

2 ancestors: CLASS_ROOT CLASS_PROPED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED

97 sub-classes: CLASS_MATCH_FLAG, CLASS_MATCH_STEP, CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_MATCH_STEP_THEN, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG, CLASS_SEXPR, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE, CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_COMMENT, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_EXPORT_SYNONYM, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FIELDASSIGN, CLASS_SOURCE_FIELD_PATTERN, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_GENERATOR_DEVICE, CLASS_SOURCE_GET_FIELD, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MSEND, CLASS_SOURCE_MULTICALL, CLASS_SOURCE_OR, CLASS_SOURCE_PATTERN, CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_MATCHER, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_TUPLE, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_PROGN, CLASS_SOURCE_PUT_FIELDS, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNSAFE_GET_FIELD, CLASS_SOURCE_UNSAFE_PUT_FIELDS, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG.

class description: The CLASS_LOCATED is the super-class for located stuff, having a source file location given by the LOCA_LOCATION field, conventionally a mixed location box with DISCR_MIXED_LOCATION.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.49 CLASS_MACRO_BINDING

Class defined at file ‘warmelt-first.melt’, line 480.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_EXPORTED_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1MBIND_EXPANSERCLASS_MACRO_BINDING

1 sub-classes: CLASS_PATMACRO_BINDING.

class description: The CLASS_MACRO_BINDING is the class of exported macro bindings. See the EXPORT_MACRO macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.50 CLASS_MAKEDOC_INFO

Class defined at file ‘warmelt-modes.melt’, line 389.

2 ancestors: CLASS_ROOT CLASS_PROPED.

16 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MKDOC_PRIMITIVESCLASS_MAKEDOC_INFO
2MKDOC_FUNCTIONSCLASS_MAKEDOC_INFO
3MKDOC_CITERATORSCLASS_MAKEDOC_INFO
4MKDOC_CMATCHERSCLASS_MAKEDOC_INFO
5MKDOC_SELECTORSCLASS_MAKEDOC_INFO
6MKDOC_FIELDSCLASS_MAKEDOC_INFO
7MKDOC_CLASSESCLASS_MAKEDOC_INFO
8MKDOC_INSTANCESCLASS_MAKEDOC_INFO
9MKDOC_MACROSCLASS_MAKEDOC_INFO
10MKDOC_PATMACROSCLASS_MAKEDOC_INFO
11MKDOC_FORMALOCCMAPCLASS_MAKEDOC_INFO
12MKDOC_PREDEFMAPCLASS_MAKEDOC_INFO
13MKDOC_DOCSYMAPCLASS_MAKEDOC_INFO
14MKDOC_SUBCLASSMAPCLASS_MAKEDOC_INFO
15MKDOC_BOXCOUNTERCLASS_MAKEDOC_INFO

class description: The CLASS_MAKEDOC_INFO aggregates data for generating documentation.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.51 CLASS_MATCHED_BINDING

Class defined at file ‘warmelt-normatch.melt’, line 2679.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1MATCHBIND_DATACLASS_MATCHED_BINDING
2MATCHBIND_NBOCCCLASS_MATCHED_BINDING

class description: The CLASS_MATCHED_BINDING is a binding for matched pattern variables. Field MATCHBIND_DATA gives the matched data, and field MATCHBIND_NBOCC is the number of occurrences.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.52 CLASS_MATCHED_DATA

Class defined at file ‘warmelt-normatch.melt’, line 2658.

2 ancestors: CLASS_ROOT CLASS_PROPED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MDATA_SYMBCLASS_MATCHED_DATA
2MDATA_CTYPECLASS_MATCHED_DATA
3MDATA_ORIGCLASS_MATCHED_DATA
4MDATA_STEPSCLASS_MATCHED_DATA

1 sub-classes: CLASS_MATCHED_NORMAL_DATA.

class description: The CLASS_MATCHED_DATA describes some matched data. Field MDATA_SYMB gives the symbol, MDATA_CTYPE gives the ctype. MDATA_ORIG is the origin step or data. MDATA_STEPS is the list of match steps, lazily transformed into a tuple when all steps have been made.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.53 CLASS_MATCHED_NORMAL_DATA

Class defined at file ‘warmelt-normatch.melt’, line 2673.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_MATCHED_DATA.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MDATA_SYMBCLASS_MATCHED_DATA
2MDATA_CTYPECLASS_MATCHED_DATA
3MDATA_ORIGCLASS_MATCHED_DATA
4MDATA_STEPSCLASS_MATCHED_DATA

class description: The CLASS_MATCHED_NORMAL_DATA is a sub-class for the initially matched normal data. The MDATA_ORIG field is the normal matched thing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.54 CLASS_MATCHING_CONTEXT

Class defined at file ‘warmelt-normatch.melt’, line 2622.

1 ancestors: CLASS_ROOT.

10 fields:

offsetnameclass
0MCTX_NORMCTXTCLASS_MATCHING_CONTEXT
1MCTX_SOURCECLASS_MATCHING_CONTEXT
2MCTX_NMATCHEDCLASS_MATCHING_CONTEXT
3MCTX_NMATBINDCLASS_MATCHING_CONTEXT
4MCTX_CASESCLASS_MATCHING_CONTEXT
5MCTX_ENVCLASS_MATCHING_CONTEXT
6MCTX_MDATACLASS_MATCHING_CONTEXT
7MCTX_VARHANDLERSCLASS_MATCHING_CONTEXT
8MCTX_FLAGSCLASS_MATCHING_CONTEXT
9MCTX_ENDLABELCLASS_MATCHING_CONTEXT

class description: The CLASS_MATCHING_CONTEXT is a context for normalization of pattern matching. MCTX_NORMCTXT is the normalization context. MCTX_SOURCE is the source matching expression. MCTX_NMATCHED is the normal matched expression. MCTX_NMATBIND the corresponding bindings. MCTX_CASES is the tuple of cases each of CLASS_MATCH_CASE. MCTX_ENV is the environment of the match. MCTX_MDATA is the initial matched data of CLASS_MATCHED_DATA. MCTX_VARHANDLERS is the list of pattern variable handlers. MCTX_FLAGS is the list of match flags. MCTX_ENDLABEL may hold the ending label.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.55 CLASS_MATCH_CASE

Class defined at file ‘warmelt-normatch.melt’, line 2646.

2 ancestors: CLASS_ROOT CLASS_PROPED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MCASE_MCTXTCLASS_MATCH_CASE
2MCASE_SOURCECLASS_MATCH_CASE
3MCASE_INDEXCLASS_MATCH_CASE
4MCASE_VARMAPCLASS_MATCH_CASE

class description: The CLASS_MATCH_CASE describes a case match. Field MCASE_MCTXT is the matching context. MCASE_SOURCE is the source case, MCASE_INDEX is the boxed integer rank. MCASE_VARMAP is an objectmap from symbols to the list of their pattern variables.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.56 CLASS_MATCH_FLAG

Class defined at file ‘warmelt-normatch.melt’, line 2722.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MFLAG_SPATCLASS_MATCH_FLAG
3MFLAG_RANKCLASS_MATCH_FLAG
4MFLAG_STRINGCLASS_MATCH_FLAG
5MFLAG_SETSTEPCLASS_MATCH_FLAG

class description: The CLASS_MATCH_FLAG describes a flag related to a source pattern. The MFLAG_SPAT is the source pattern, and the MFLAG_RANK is a unique boxed integer rank, MFLAG_STRING gives a small descriptive string, The MFLAG_SETSTEP is the match step setting that flag, or else null. Match flags are initially cleared.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.57 CLASS_MATCH_GRAPHIC

Class defined at file ‘warmelt-normatch.melt’, line 1945.

2 ancestors: CLASS_ROOT CLASS_PROPED.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MCHGX_FILENAMECLASS_MATCH_GRAPHIC
2MCHGX_NODOUTCLASS_MATCH_GRAPHIC
3MCHGX_EDGOUTCLASS_MATCH_GRAPHIC
4MCHGX_DATANAMEMAPCLASS_MATCH_GRAPHIC
5MCHGX_STEPNAMEMAPCLASS_MATCH_GRAPHIC

class description: CLASS_MATCH_GRAPHIC is a private class to generate graphviz .dot graphics files to debug the MELT translation of matching. Don’t use it yourself.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.58 CLASS_MATCH_NORMALIZATION_CONTEXT

Class defined at file ‘warmelt-normatch.melt’, line 5134.

1 ancestors: CLASS_ROOT.

10 fields:

offsetnameclass
0MATNORX_RESLOCCLASS_MATCH_NORMALIZATION_CONTEXT
1MATNORX_NMATCHCLASS_MATCH_NORMALIZATION_CONTEXT
2MATNORX_DATAMAPCLASS_MATCH_NORMALIZATION_CONTEXT
3MATNORX_FLAGMAPCLASS_MATCH_NORMALIZATION_CONTEXT
4MATNORX_STEPMAPCLASS_MATCH_NORMALIZATION_CONTEXT
5MATNORX_MDATAQUEUECLASS_MATCH_NORMALIZATION_CONTEXT
6MATNORX_MSTEPQUEUECLASS_MATCH_NORMALIZATION_CONTEXT
7MATNORX_BODYLISTCLASS_MATCH_NORMALIZATION_CONTEXT
8MATNORX_ENDLABELCLASS_MATCH_NORMALIZATION_CONTEXT
9MATNORX_MATCHCTXTCLASS_MATCH_NORMALIZATION_CONTEXT

class description: The CLASS_MATCH_NORMALIZATION_CONTEXT is agreggating data for normalization of a graph of match steps, indirect instances of CLASS_MATCH_STEP. Field MATNORX_RESLOC gives the instance of CLASS_NREP_LOCSYMOCC for the result of the match. MATNORX_NMATCH gives the partially built normal representation, instance of CLASS_NREP_ALTMATCH, of the match. Field MATNORX_FLAGMAP is the read-mostly map associating match flags to normalized flags. Field MATNORX_STEPMAP is the read-mostly map associating match steps to labels of CLASS_NREP_MATCH_LABEL. Field MATNORX_MDATAMAP is the read-mostly map associating match datas to their normalization. MATNORX_MDATAQUEUE is the read-mostly queue list of match datas to process. MATNORX_MSTEPQUEUE is the read-mostly queue list of match steps, with already an associated label, to process. MATNORX_BODYLIST is the incomplete list of the match body. MATNORX_ENDLABEL is the ending label. MATNORX_MATCHCTXT gives the matching context of CLASS_MATCHING_CONTEXT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.59 CLASS_MATCH_STEP

Class defined at file ‘warmelt-normatch.melt’, line 2738.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED

16 sub-classes: CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_MATCH_STEP_THEN, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG.

class description: The CLASS_MATCH_STEP super-class describes an elementary step of pattern matching, like tests, success, flag settings, etc...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.60 CLASS_MATCH_STEP_CLEAR

Class defined at file ‘warmelt-normatch.melt’, line 2751.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_CLEARDATACLASS_MATCH_STEP_CLEAR

class description: The CLASS_MATCH_STEP_CLEAR is a step to clear the MSTEP_CLEARDATA tuple of matched data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.61 CLASS_MATCH_STEP_FLAG_CONJUNCTION

Class defined at file ‘warmelt-normatch.melt’, line 2785.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_FLAG CLASS_MATCH_STEP_FLAG_OPERATION.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG
4MSTEP_FLAGARGSCLASS_MATCH_STEP_FLAG_OPERATION

class description: The CLASS_MATCH_STEP_FLAG_CONJUNCTION sets the match flag MSTEP_FLAG to the conjunction of MSTEP_FLAGARGS, which is a tuple of match flags.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.62 CLASS_MATCH_STEP_FLAG_DISJUNCTION

Class defined at file ‘warmelt-normatch.melt’, line 2792.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_FLAG CLASS_MATCH_STEP_FLAG_OPERATION.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG
4MSTEP_FLAGARGSCLASS_MATCH_STEP_FLAG_OPERATION

class description: The CLASS_MATCH_STEP_FLAG_DISJUNCTION sets the match flag MSTEP_FLAG to the disjunction of MSTEP_FLAGARGS, which is a tuple of match flags.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.63 CLASS_MATCH_STEP_FLAG_OPERATION

Class defined at file ‘warmelt-normatch.melt’, line 2780.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_FLAG.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG
4MSTEP_FLAGARGSCLASS_MATCH_STEP_FLAG_OPERATION

2 sub-classes: CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION.

class description: The CLASS_MATCH_STEP_FLAG_OPERATION sets the match flag according to flag arguments from the MSTEP_FLAGARGS tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.64 CLASS_MATCH_STEP_FLAG_SET

Class defined at file ‘warmelt-normatch.melt’, line 2774.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_FLAG.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG

class description: The CLASS_MATCH_STEP_FLAG_SET sets to true a match flag MSTEP_FLAG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.65 CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG

Class defined at file ‘warmelt-normatch.melt’, line 2800.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_FLAG.

7 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG
4MSTEPSUCCESS_VAROCCCLASS_MATCH_STEP_SUCCESS_WHEN_FLAG
5MSTEPSUCCESS_BINDSCLASS_MATCH_STEP_SUCCESS_WHEN_FLAG
6MSTEPSUCCESS_BODYCLASS_MATCH_STEP_SUCCESS_WHEN_FLAG

class description: The CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG step represents the normalized action in a match. MSTEP_FLAG is the flag conditionning the success. MSTEPSUCCESS_VAROCC is the tuple of pattern variable occurrences, MSTEPSUCCESS_BINDS is the list of local binders, and MSTEPSUCCESS_BODY is the normalized body tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.66 CLASS_MATCH_STEP_TEST

Class defined at file ‘warmelt-normatch.melt’, line 2812.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST

6 sub-classes: CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE.

class description: The CLASS_MATCH_STEP_TEST is the super-class of elementary tests of pattern matching. The inherited MSTEP_THEN is the then branch, the MSTEP_ELSE is the else branch. The inherited MSTEP_DATA is the tested data, and the inherited MSTEP_INDEX is its index.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.67 CLASS_MATCH_STEP_TEST_CONSTANT

Class defined at file ‘warmelt-normatch.melt’, line 2826.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTEPTESTCONST_DATACLASS_MATCH_STEP_TEST_CONSTANT
7MSTEPTESTCONST_BINDCLASS_MATCH_STEP_TEST_CONSTANT

class description: The CLASS_MATCH_STEP_TEST_CONSTANT is for tests if the constant MSTEPTESTCONST_DATA is the same as the matched data, using the MSTEPTESTCONST_BIND bindinglist


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.68 CLASS_MATCH_STEP_TEST_GROUP

Class defined at file ‘warmelt-normatch.melt’, line 2832.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTGROUP_STARTCLASS_MATCH_STEP_TEST_GROUP
7MSTGROUP_THENCLASS_MATCH_STEP_TEST_GROUP
8MSTGROUP_ELSECLASS_MATCH_STEP_TEST_GROUP

class description: The CLASS_MATCH_STEP_GROUP is used to redirect the then & else tests to a list or tuple of subtests, i.e. to the MSTGROUP_THEN and MSTGROUP_ELSE. The MSTGROUP_START is the starting control point (for then & else edges arriving into the group).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.69 CLASS_MATCH_STEP_TEST_INSTANCE

Class defined at file ‘warmelt-normatch.melt’, line 2843.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTINS_CLASSCLASS_MATCH_STEP_TEST_INSTANCE
7MSTINS_SLOTSCLASS_MATCH_STEP_TEST_INSTANCE

class description: The CLASS_MATCH_STEP_TEST_INSTANCE is the class for testing instance membership. MSTINS_CLASS is the tested class. MSTINS_SLOTS is the tuple of slot matched data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.70 CLASS_MATCH_STEP_TEST_MATCHER

Class defined at file ‘warmelt-normatch.melt’, line 2859.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTMA_MATCHERCLASS_MATCH_STEP_TEST_MATCHER
7MSTMA_BINDSCLASS_MATCH_STEP_TEST_MATCHER
8MSTMA_INSCLASS_MATCH_STEP_TEST_MATCHER
9MSTMA_OUTSCLASS_MATCH_STEP_TEST_MATCHER

class description: The CLASS_MATCH_STEP_TEST_MATCHER is the class for testing with matcher. MSTMA_MATCHER is the matcher, MSTMA_BINDS is the local binding list for inputs, MSTMA_INS is the normalized inputs, MSTMA_OUTS is the tuple of output matched data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.71 CLASS_MATCH_STEP_TEST_MULTIPLE

Class defined at file ‘warmelt-normatch.melt’, line 2851.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

7 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTTUP_COMPONENTSCLASS_MATCH_STEP_TEST_MULTIPLE

class description: The CLASS_MATCH_STEP_TEST_MULTIPLE is the class for testing tupleness. MSTTUP_COMPONENTS is the tuple of matched data components, or nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.72 CLASS_MATCH_STEP_TEST_VARIABLE

Class defined at file ‘warmelt-normatch.melt’, line 2820.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN CLASS_MATCH_STEP_WITH_DATA CLASS_MATCH_STEP_TEST.

7 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA
5MSTEP_ELSECLASS_MATCH_STEP_TEST
6MSTEPTESTVAR_DATACLASS_MATCH_STEP_TEST_VARIABLE

class description: The CLASS_MATCH_STEP_TEST_VARIABLE is for tests if the data MSTEPTESTVAR_DATA is the same as the matched data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.73 CLASS_MATCH_STEP_THEN

Class defined at file ‘warmelt-normatch.melt’, line 2744.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN

15 sub-classes: CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG.

class description: The CLASS_MATCH_STEP_THEN super-class is for steps with a then edge MSTEP_THEN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.74 CLASS_MATCH_STEP_WITH_DATA

Class defined at file ‘warmelt-normatch.melt’, line 2762.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_DATACLASS_MATCH_STEP_WITH_DATA
4MSTEP_INDEXCLASS_MATCH_STEP_WITH_DATA

7 sub-classes: CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE.

class description: The CLASS_MATCH_STEP_WITH_DATA super-class is for matching steps handling a data, such as matching tests. The inherited MSTEP_THEN gives the next step. The MSTEP_DATA field is the matched data. The MSTEP_INDEX field is the boxed integer index counting from 1 of this step within its data, it is lazily filled when all steps of the matched data have been made.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.75 CLASS_MATCH_STEP_WITH_FLAG

Class defined at file ‘warmelt-normatch.melt’, line 2756.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_MATCH_STEP CLASS_MATCH_STEP_THEN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2MSTEP_THENCLASS_MATCH_STEP_THEN
3MSTEP_FLAGCLASS_MATCH_STEP_WITH_FLAG

5 sub-classes: CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG.

class description: The CLASS_MATCH_STEP_WITH_FLAG super-class is for steps with a match flag MSTEP_FLAG, in particular flag assignments and flagged successes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.76 CLASS_MELT_MODE

Class defined at file ‘warmelt-first.melt’, line 762.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2MELTMODE_HELPCLASS_MELT_MODE
3MELTMODE_FUNCLASS_MELT_MODE
4MELTMODE_DATACLASS_MELT_MODE

class description: The CLASS_MELT_MODE describe mode handlers, as given by the -fmelt= or -fplugin-arg-melt-mode= GCC program flag. The MELTMODE_HELP is a help string. The MELTMODE_FUN is the function to run the command, and the MELTMODE_DATA gives additional client data. See the INSTALL_MELT_MODE function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.77 CLASS_MODULE_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 836.

1 ancestors: CLASS_ROOT.

12 fields:

offsetnameclass
0MOCX_MODULENAMECLASS_MODULE_CONTEXT
1MOCX_EXPFIELDICTCLASS_MODULE_CONTEXT
2MOCX_EXPCLASSDICTCLASS_MODULE_CONTEXT
3MOCX_INITIALENVCLASS_MODULE_CONTEXT
4MOCX_FUNCOUNTCLASS_MODULE_CONTEXT
5MOCX_FILETUPLECLASS_MODULE_CONTEXT
6MOCX_CFLAGSCLASS_MODULE_CONTEXT
7MOCX_LINKFLAGSCLASS_MODULE_CONTEXT
8MOCX_CHEADERLISTCLASS_MODULE_CONTEXT
9MOCX_GENDEVLISTCLASS_MODULE_CONTEXT
10MOCX_PACKAGEPCLISTCLASS_MODULE_CONTEXT
11MOCX_ERRORHANDLERCLASS_MODULE_CONTEXT

1 sub-classes: CLASS_RUNNING_EXTENSION_MODULE_CONTEXT.

class description: The internal CLASS_MODULE_CONTEXT describes the whole module context of a translation. MOCX_MODULENAME gives the module name, MOCX_EXPFIELDICT gives the dictionnary of exported fields, MOCX_EXPCLASSDICT gives the dictionnary of exported classes, and MOCX_INITIALENV the initial environment. MOCX_FUNCOUNT is a boxed integer counting the defined functions (excluding LAMBDA-s, counting only DEFUN), used to help generate C code in several files, described in MOCX_FILETUPLE. MOCX_CFLAGS is for the C compilation flags of the module. MOCX_LINKFLAGS is for the linking flags. MOCX_CHEADERLIST is the list of cheader. MOCX_GENDEVLIST is the list of instances of CLASS_SOURCE_GENERATOR_DEVICE. MOCX_ERRORHANDLER is the closure, if any, to call on errors. For gurus!


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.78 CLASS_NAMED

Class defined at file ‘warmelt-first.melt’, line 84.

2 ancestors: CLASS_ROOT CLASS_PROPED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED

27 sub-classes: CLASS_ANY_MATCHER, CLASS_CITERATOR, CLASS_CLASS, CLASS_CLONED_SYMBOL, CLASS_CMATCHER, CLASS_CTYPE, CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN, CLASS_DELAYED_QUEUE, CLASS_DISCRIMINANT, CLASS_FIELD, CLASS_FUNMATCHER, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_KEYWORD, CLASS_MELT_MODE, CLASS_PRIMITIVE, CLASS_SELECTOR, CLASS_SYMBOL, CLASS_SYSTEM_DATA, CLASS_VALUE_DESCRIPTOR, CLASS_VARISIZED_VALUE_DESCRIPTOR.

class description: The CLASS_NAMED is the super-class of every named object. The NAMED_NAME field is conventionally a string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.79 CLASS_NORMALIZATION_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 877.

1 ancestors: CLASS_ROOT.

15 fields:

offsetnameclass
0NCTX_INITPROCCLASS_NORMALIZATION_CONTEXT
1NCTX_PROCLISTCLASS_NORMALIZATION_CONTEXT
2NCTX_DATALISTCLASS_NORMALIZATION_CONTEXT
3NCTX_VALUELISTCLASS_NORMALIZATION_CONTEXT
4NCTX_SYMBMAPCLASS_NORMALIZATION_CONTEXT
5NCTX_KEYWMAPCLASS_NORMALIZATION_CONTEXT
6NCTX_SYMBCACHEMAPCLASS_NORMALIZATION_CONTEXT
7NCTX_PREDEFMAPCLASS_NORMALIZATION_CONTEXT
8NCTX_VALMAPCLASS_NORMALIZATION_CONTEXT
9NCTX_VALBINDMAPCLASS_NORMALIZATION_CONTEXT
10NCTX_CURPROCCLASS_NORMALIZATION_CONTEXT
11NCTX_MODULCONTEXTCLASS_NORMALIZATION_CONTEXT
12NCTX_QDATCURMODENVBOXCLASS_NORMALIZATION_CONTEXT
13NCTX_QDATPARMODENVCLASS_NORMALIZATION_CONTEXT
14NCTX_PROCURMODENVLISTCLASS_NORMALIZATION_CONTEXT

class description: The internal CLASS_NORMALIZATION_CONTEXT (for gurus only) is used for expression normalization by the translator. NCTX_INITPROC gives the initial procedure. NCTX_PROCLIST is the list of procedures. NCTX_DATALIST is the list of data. NCTX_VALUELIST gives the list of imported values. NCTX_SYMBMAP and NCTX_KEYWMAP are dictionnaries mapping symbol or keyword names to interned symbols or keywords. NCTX_SYMBCACHEMAP is an object map to cache the occurrence of symbols. NCTX_PREDEFMAP is a map from predefined to ranks. NCTX_VALMAP is an object map from value to data, and NCTX_VALBINDMAP is an object map from value binding to data. The Current procedure is NCTX_CURPROC. The module compilation context is NCTX_MODULCONTEXT. The quasidata for the current module environment container is NCTX_QDATCURMODENVBOX. The quasi data for the parent module’s environment is NCTX_QDATPARMODENV. The list of procedures using the current module environment is in NCTX_PROCURMODENVLIST.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.80 CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING

Class defined at file ‘warmelt-normal.melt’, line 424.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_NORMAL_CONSTRUCTOR_BINDING.

6 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING
4NINSTB_SLOTSCLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING
5NINSTB_CLABINDCLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING

class description: The internal CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING is the class of instance constructor bindings. Field NINSTB_SLOTS is the tuple of the normalized slots, and NINSTB_CLABIND is the class binding.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.81 CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING

Class defined at file ‘warmelt-normal.melt’, line 417.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_NORMAL_CONSTRUCTOR_BINDING.

7 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING
4NLAMBDAB_NCLOSEDCLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING
5NLAMBDAB_CONSTROUTCLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING
6NLAMBDAB_DATAROUTCLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING

class description: The internal CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING is the class of lambda constructor bindings. Field NLAMBDAB_NCLOSED gives the normalized closed values, and NLAMBDAB_DATAROUT gives the normalized routine data, and NLAMBDAB_CONSTROUT its constant.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.82 CLASS_NORMAL_CONSTRUCTED_LIST_BINDING

Class defined at file ‘warmelt-normal.melt’, line 409.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_NORMAL_CONSTRUCTOR_BINDING.

7 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING
4NLISTB_FIRSTCLASS_NORMAL_CONSTRUCTED_LIST_BINDING
5NLISTB_LASTCLASS_NORMAL_CONSTRUCTED_LIST_BINDING
6NLISTB_PAIRSBCLASS_NORMAL_CONSTRUCTED_LIST_BINDING

class description: The internal CLASS_NORMAL_CONSTRUCTED_LIST_BINDING is the class of list constructor bindings. Field NLISTB_FIRST gives the initial normalized first pair, and field NLISTB_LAST gives the last one. Field NLISTB_PAIRSB gives the tuple of constructed pair bindings


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.83 CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING

Class defined at file ‘warmelt-normal.melt’, line 402.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_NORMAL_CONSTRUCTOR_BINDING.

6 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING
4NPAIRB_HEADCLASS_NORMAL_CONSTRUCTED_PAIR_BINDING
5NPAIRB_TAILCLASS_NORMAL_CONSTRUCTED_PAIR_BINDING

class description: The internal CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING is the class of pair constructor bindings. Field NPAIRB_HEAD gives the normalized head, and NPAIRB_TAIL gives the normalized tail.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.84 CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING

Class defined at file ‘warmelt-normal.melt’, line 395.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_NORMAL_CONSTRUCTOR_BINDING.

5 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING
4NTUPB_COMPCLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING

class description: The internal CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING is the class of tuple constructor bindings. Field NTUPB_COMP gives the tuple of initial normalized components.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.85 CLASS_NORMAL_CONSTRUCTOR_BINDING

Class defined at file ‘warmelt-normal.melt’, line 386.

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NCONSB_LOCCLASS_NORMAL_CONSTRUCTOR_BINDING
2NCONSB_DISCRCLASS_NORMAL_CONSTRUCTOR_BINDING
3NCONSB_NLETRECCLASS_NORMAL_CONSTRUCTOR_BINDING

5 sub-classes: CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING, CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING, CLASS_NORMAL_CONSTRUCTED_LIST_BINDING, CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING, CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING.

class description: The internal CLASS_NORMAL_CONSTRUCTOR_BINDING is the common super-class of constructor bindings in LETREC... Field NCONSB_LOC gives the optional location, field NCONSB_DISCR gives the normalized discriminant, and field NCONSB_NLETREC gives the normal letrec containing it..


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.86 CLASS_NORMAL_LET_BINDING

Class defined at file ‘warmelt-first.melt’, line 649.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_LET_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1LETBIND_TYPECLASS_LET_BINDING
2LETBIND_EXPRCLASS_LET_BINDING
3LETBIND_LOCCLASS_LET_BINDING

class description: The internal CLASS_NORMAL_LET_BINDING is for internal normalized bindings. The bound expression is in normal form. Very often the BINDER is a cloned symbol.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.87 CLASS_NORMAL_OR_VARIABLE

Class defined at file ‘warmelt-normatch.melt’, line 448.

1 ancestors: CLASS_ROOT.

4 fields:

offsetnameclass
0NORVAR_NOREXPCLASS_NORMAL_OR_VARIABLE
1NORVAR_LOCSYMCLASS_NORMAL_OR_VARIABLE
2NORVAR_PATVARCLASS_NORMAL_OR_VARIABLE
3NORVAR_NREPORCLASS_NORMAL_OR_VARIABLE

class description: The CLASS_NORMAL_OR_VARIABLE is an internal class for normalization of variables under an OR pattern. Field NORVAR_PATVAR gives the associated pattern variable, field NORVAR_NREPOR gives the normalized or pattern, and field NORVAR_LOCSYM gives the local symbol occurrence if any. NORVAR_NOREXP gives the normalized matched expression.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.88 CLASS_NREP

Class defined at file ‘warmelt-normal.melt’, line 42.

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

46 sub-classes: CLASS_NREP_ALTMATCH, CLASS_NREP_ANYPROC, CLASS_NREP_APPLY, CLASS_NREP_BOUND_DATA, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_EXPRESSION, CLASS_NREP_IF, CLASS_NREP_IFCOMMON, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_INITPROC, CLASS_NREP_JUMP_WHEN_IS_A, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_LET, CLASS_NREP_LETREC, CLASS_NREP_MATCHED_DATA, CLASS_NREP_MATCH_DATA_ACTION, CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER, CLASS_NREP_MATCH_FLAG, CLASS_NREP_MATCH_JUMP, CLASS_NREP_MATCH_LABEL, CLASS_NREP_MATCH_LABEL_END, CLASS_NREP_MSEND, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND, CLASS_NREP_NIL, CLASS_NREP_PREDEF, CLASS_NREP_PROGN, CLASS_NREP_QUASIDATA, CLASS_NREP_RETURN, CLASS_NREP_ROUTPROC, CLASS_NREP_SIMPLE, CLASS_NREP_TYPED_EXPRESSION, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

class description: The CLASS_NREP is the common super class of normalized representations. Its NREP_LOC field gives the location in source, if any.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.89 CLASS_NREP_ALTMATCH

Class defined at file ‘warmelt-normatch.melt’, line 5063.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION.

7 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NAMATCH_MATCHEDCLASS_NREP_ALTMATCH
3NAMATCH_RESULTCLASS_NREP_ALTMATCH
4NAMATCH_BODYCLASS_NREP_ALTMATCH
5NAMATCH_FLAGSCLASS_NREP_ALTMATCH
6NAMATCH_MDATASCLASS_NREP_ALTMATCH

class description: The CLASS_NREP_ALTMATCH is the representation for normal matches. Field NAMATCH_MATCHED is the normal matched stuff. NAMATCH_RESULT gives if any the result of the match. NAMATCH_BODY is the body tuple, in particular labels of CLASS_NREP_MATCH_LABEL. NAMATCH_FLAGS is the tuple of normal flags, instances of CLASS_NREP_MATCH_FLAG, and NAMATCH_MDATAS is the tuple of normal data, instances of CLASS_NREP_MATCHED_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.90 CLASS_NREP_ANYPROC

Class defined at file ‘warmelt-normal.melt’, line 433.

2 ancestors: CLASS_ROOT CLASS_NREP.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC

5 sub-classes: CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_INITPROC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_ROUTPROC.

class description: The CLASS_NREP_ANYPROC is the common super-class for procedures. Field NPROC_BODY is the normalized body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.91 CLASS_NREP_APPLY

Class defined at file ‘warmelt-normal.melt’, line 84.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS
3NAPP_FUNCLASS_NREP_APPLY

1 sub-classes: CLASS_NREP_MULTIAPPLY.

class description: The CLASS_NREP_APPLY class is for normal applications. NAPP_FUN is the simple function to apply to NEXPR_ARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.92 CLASS_NREP_BOUND_DATA

Class defined at file ‘warmelt-normal.melt’, line 524.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_QUASIDATA.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NDATA_NAMECLASS_NREP_BOUND_DATA
2NDATA_RANKCLASS_NREP_BOUND_DATA
3NDATA_LOCBINDCLASS_NREP_BOUND_DATA

1 sub-classes: CLASS_NREP_DISCRIMINATED_DATA.

class description: The internal CLASS_NREP_BOUND_DATA is for normalized defined and bound data. The objnum of its instance is the predefined rank if any.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.93 CLASS_NREP_CHECKSIGNAL

Class defined at file ‘warmelt-normal.melt’, line 275.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

class description: The CLASS_NREP_CHECKSIGNAL is an internal expression to check interrupts, corresponding to emission of the melt_check_interrupt() C macro. It is emitted at safe places.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.94 CLASS_NREP_CHUNK

Class defined at file ‘warmelt-normal.melt’, line 127.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NCHUNK_EXPANSIONCLASS_NREP_CHUNK
3NCHUNK_OPERCLASS_NREP_CHUNK

class description: The CLASS_NREP_CHUNK is for normalized expansion of primitive or cmatcher expressions. Field NCHUNK_EXPANSION is the expansion - where strings of DISCR_VERBATIM_STRING are handled specifically. Field NCHUNK_OPER is the operator.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.95 CLASS_NREP_COMMENT

Class defined at file ‘warmelt-normal.melt’, line 138.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NCOMM_STRINGCLASS_NREP_COMMENT

class description: The CLASS_NREP_COMMENT if for normalized comments in the generated C code. The field NCOMM_STRING gives the comment.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.96 CLASS_NREP_CONSUME_VARIADIC

Class defined at file ‘warmelt-normal.melt’, line 227.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NCONSVA_VARIADICCLASS_NREP_CONSUME_VARIADIC
2NCONSVA_CTYPESCLASS_NREP_CONSUME_VARIADIC

class description: The CLASS_NREP_CONSUME_VARIADIC is for VARIADIC argument consumption. Field NCONSVA_VARIADIC gives the variadic, and NCONSVA_CTYPES the consumed types of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.97 CLASS_NREP_CPPIF

Class defined at file ‘warmelt-normal.melt’, line 254.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NIFP_CONDCLASS_NREP_CPPIF
2NIFP_THENCLASS_NREP_CPPIF
3NIFP_ELSECLASS_NREP_CPPIF
4NIFP_CTYPCLASS_NREP_CPPIF

class description: The CLASS_NREP_CPPIF is for cppif compile-time tests. NIFP_COND is the tested cpp symbol. NIFP_THEN the then part, NIFP_ELSE the else part, NIFP_CTYP the ctype.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.98 CLASS_NREP_DEFUNROUTPROC

Class defined at file ‘warmelt-normal.melt’, line 489.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_ROUTPROC.

10 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRPRO_NAMECLASS_NREP_ROUTPROC
3NRPRO_ARGBCLASS_NREP_ROUTPROC
4NRPRO_CLOSEDBCLASS_NREP_ROUTPROC
5NRPRO_CONSTCLASS_NREP_ROUTPROC
6NRPRO_DATAROUTCLASS_NREP_ROUTPROC
7NRPRO_DATACLOSCLASS_NREP_ROUTPROC
8NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
9NRPRO_VARIADICCLASS_NREP_ROUTPROC

class description: The CLASS_NREP_DEFUNROUTPROC is the class for DEFUN related routine procedures.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.99 CLASS_NREP_DISCRIMINATED_DATA

Class defined at file ‘warmelt-normal.melt’, line 538.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_QUASIDATA CLASS_NREP_BOUND_DATA.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NDATA_NAMECLASS_NREP_BOUND_DATA
2NDATA_RANKCLASS_NREP_BOUND_DATA
3NDATA_LOCBINDCLASS_NREP_BOUND_DATA
4NDATA_DISCRXCLASS_NREP_DISCRIMINATED_DATA

class description: The internal CLASS_NREP_DISCRIMINATED_DATA is for defined data with a static disciminant.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.100 CLASS_NREP_EXPRESSION

Class defined at file ‘warmelt-normal.melt’, line 60.

2 ancestors: CLASS_ROOT CLASS_NREP.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

31 sub-classes: CLASS_NREP_ALTMATCH, CLASS_NREP_APPLY, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_IF, CLASS_NREP_IFCOMMON, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC, CLASS_NREP_JUMP_WHEN_IS_A, CLASS_NREP_LET, CLASS_NREP_LETREC, CLASS_NREP_MATCH_DATA_ACTION, CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER, CLASS_NREP_MATCH_JUMP, CLASS_NREP_MATCH_LABEL, CLASS_NREP_MATCH_LABEL_END, CLASS_NREP_MSEND, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND, CLASS_NREP_PROGN, CLASS_NREP_RETURN, CLASS_NREP_TYPED_EXPRESSION, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

class description: Common superclass CLASS_NREP_EXPRESSION of normalized expressions which can only appear in normal bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.101 CLASS_NREP_IF

Class defined at file ‘warmelt-normal.melt’, line 245.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIF_TESTCLASS_NREP_IF

class description: The CLASS_NREP_IF is for usual normalized if-test. NIF_TEST gives the tested thing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.102 CLASS_NREP_IFCOMMON

Class defined at file ‘warmelt-normal.melt’, line 182.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON

6 sub-classes: CLASS_NREP_IF, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC.

class description: The CLASS_NREP_IFCOMMON is the common superclass for normalized if-like tests. NIF_THEN gives the then branch, and NIF_ELSE gives the else branch.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.103 CLASS_NREP_IFISA

Class defined at file ‘warmelt-normal.melt’, line 200.

6 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON CLASS_NREP_IFTESTVALUE.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIF_TESTVALCLASS_NREP_IFTESTVALUE
5NIFA_CLASSCLASS_NREP_IFISA

class description: The CLASS_NREP_IFISA is for normalized IS_A tests. Inherited NIF_TESTVAL gives the value to be tested, and NIFA_CLASS gives the normalized class data in which the value is tested for membership.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.104 CLASS_NREP_IFSAME

Class defined at file ‘warmelt-normal.melt’, line 238.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIFS_LEFTCLASS_NREP_IFSAME
5NIFS_RIGHTCLASS_NREP_IFSAME

class description: The CLASS_NREP_IFSAME is for normalized identity tests for matching. NIFS_LEFT and NIFS_RIGHT are the simple stuff to compare for identity.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.105 CLASS_NREP_IFTESTVALUE

Class defined at file ‘warmelt-normal.melt’, line 192.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIF_TESTVALCLASS_NREP_IFTESTVALUE

2 sub-classes: CLASS_NREP_IFISA, CLASS_NREP_IFTUPLESIZED.

class description: The CLASS_NREP_IFTESTVALUE is a common superclass for testing about some given value NIF_TESTVAL


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.106 CLASS_NREP_IFTUPLESIZED

Class defined at file ‘warmelt-normal.melt’, line 209.

6 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON CLASS_NREP_IFTESTVALUE.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIF_TESTVALCLASS_NREP_IFTESTVALUE
5NIF_TUPSIZCLASS_NREP_IFTUPLESIZED

class description: The CLASS_NREP_IFTUPLESIZED is for normalized tests of multiple of given size. Inherited NIF_TESTVAL gives the value to be tested (if it is multiple), and NIF_TUPSIZ gives the size to be tested (if it has that size).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.107 CLASS_NREP_IFVARIADIC

Class defined at file ‘warmelt-normal.melt’, line 218.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_IFCOMMON.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NIF_THENCLASS_NREP_IFCOMMON
3NIF_ELSECLASS_NREP_IFCOMMON
4NIFV_VARIADICCLASS_NREP_IFVARIADIC
5NIFV_CTYPESCLASS_NREP_IFVARIADIC

class description: The CLASS_NREP_IFVARIADIC is for normalized VARIADIC tests. NIFV_VARIADIC gives the variadic name, and NIFV_CTYPES gives the tuple of ctypes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.108 CLASS_NREP_INITEXTENDPROC

Class defined at file ‘warmelt-normal.melt’, line 453.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_INITPROC.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NINIT_TOPLCLASS_NREP_INITPROC
3NINIT_DEFBINDSCLASS_NREP_INITPROC
4NINITEXTEND_MODENVCLASS_NREP_INITEXTENDPROC

class description: The CLASS_NREP_INITEXTENDPROC is the class for the initial extending procedure for an existing module. Field ninitextend_modenv is the extended environment.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.109 CLASS_NREP_INITPROC

Class defined at file ‘warmelt-normal.melt’, line 443.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NINIT_TOPLCLASS_NREP_INITPROC
3NINIT_DEFBINDSCLASS_NREP_INITPROC

1 sub-classes: CLASS_NREP_INITEXTENDPROC.

class description: The CLASS_NREP_INITPROC is the class for the initial procedure in a module. Field NINIT_TOPL is the list of top-level normalized expressions. Field NINIT_DEFBINDS is the list of DEFINE-d bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.110 CLASS_NREP_JUMP_WHEN_IS_A

Class defined at file ‘warmelt-normatch.melt’, line 5125.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NTESTISA_VALUECLASS_NREP_JUMP_WHEN_IS_A
2NTESTISA_CLASSCLASS_NREP_JUMP_WHEN_IS_A
3NTESTISA_JUMPCLASS_NREP_JUMP_WHEN_IS_A

class description: The CLASS_NREP_JUMP_WHEN_IS_A is testing if a simple value NTESTISA_VALUE us an instance of NTESTISA_CLASS. If yes, it jumps to NTESTISA_JUMP.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.111 CLASS_NREP_LAMBDAROUTPROC

Class defined at file ‘warmelt-normal.melt’, line 483.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_ROUTPROC.

10 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRPRO_NAMECLASS_NREP_ROUTPROC
3NRPRO_ARGBCLASS_NREP_ROUTPROC
4NRPRO_CLOSEDBCLASS_NREP_ROUTPROC
5NRPRO_CONSTCLASS_NREP_ROUTPROC
6NRPRO_DATAROUTCLASS_NREP_ROUTPROC
7NRPRO_DATACLOSCLASS_NREP_ROUTPROC
8NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
9NRPRO_VARIADICCLASS_NREP_ROUTPROC

class description: The CLASS_NREP_LAMBDAROUTPROC is the class for LAMBDA related routine procedures.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.112 CLASS_NREP_LET

Class defined at file ‘warmelt-normal.melt’, line 146.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NLET_BINDINGSCLASS_NREP_LET
2NLET_BODYCLASS_NREP_LET

1 sub-classes: CLASS_NREP_LETREC.

class description: The CLASS_NREP_LET is for normalized lets. The NLET_BINDINGS field is a tuple of CLASS_NORMAL_LET_BINDING instances. The NLET_BODY field is the normal body. The normalization process introduce many such normal lets.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.113 CLASS_NREP_LETREC

Class defined at file ‘warmelt-normal.melt’, line 157.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_LET.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NLET_BINDINGSCLASS_NREP_LET
2NLET_BODYCLASS_NREP_LET
3NLETREC_FILL_BINDINGSCLASS_NREP_LETREC
4NLETREC_BODY_BINDINGSCLASS_NREP_LETREC
5NLETREC_LOCSYMSCLASS_NREP_LETREC

class description: The CLASS_NREP_LETREC is for normalized letrec. The field NLETREC_FILL_BINDINGS is the list of internal normal bindings to fill the letrec-ed constructions. The field NLETREC_BODY_BINDINGS is the tuple of internal normal bindings for the body. The field NLETREC_LOCSYMS is the tuple of local symbol occurrences.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.114 CLASS_NREP_MATCHED_DATA

Class defined at file ‘warmelt-normatch.melt’, line 2881.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_SIMPLE.

4 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NRMATD_CTYPECLASS_NREP_MATCHED_DATA
2NRMATD_MDATACLASS_NREP_MATCHED_DATA
3NRMATD_RANKCLASS_NREP_MATCHED_DATA

class description: The CLASS_NREP_MATCHED_DATA is the normalized representation of match data, instance of CLASS_MATCHED_DATA. Field NRPMATD_CTYPE gives the ctype of the data. Field NRMATD_MDATA gives the originating matched data. Field NRMATD_RANK is a unique rank.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.115 CLASS_NREP_MATCH_DATA_ACTION

Class defined at file ‘warmelt-normatch.melt’, line 5097.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMDAC_DATACLASS_NREP_MATCH_DATA_ACTION

3 sub-classes: CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER.

class description: The CLASS_NREP_MATCH_DATA_ACTION is the common super-class for actions concerning a normal match data NMDAC_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.116 CLASS_NREP_MATCH_DATA_CLEAR

Class defined at file ‘warmelt-normatch.melt’, line 5110.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_MATCH_DATA_ACTION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMDAC_DATACLASS_NREP_MATCH_DATA_ACTION

class description: A normal match data clear of CLASS_NREP_MATCH_DATA_CLEAR clears a normal match data given by field NMDAC_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.117 CLASS_NREP_MATCH_DATA_FINALIZER

Class defined at file ‘warmelt-normatch.melt’, line 5117.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_MATCH_DATA_ACTION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMDAC_DATACLASS_NREP_MATCH_DATA_ACTION

class description: A normal match data finalizer of CLASS_NREP_MATCH_DATA_FINALIZER finalizes and unleashes the resources associated with a normal match data given by field NMDAC_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.118 CLASS_NREP_MATCH_DATA_INITIALIZER

Class defined at file ‘warmelt-normatch.melt’, line 5103.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_MATCH_DATA_ACTION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMDAC_DATACLASS_NREP_MATCH_DATA_ACTION

class description: A normal match data initializer of CLASS_NREP_MATCH_DATA_INITIALIZER initializes, allocates resource, and clears a normal match data given by field NMDAC_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.119 CLASS_NREP_MATCH_FLAG

Class defined at file ‘warmelt-normatch.melt’, line 2871.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_SIMPLE.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NRPFLA_FLAGCLASS_NREP_MATCH_FLAG
2NRPFLA_NMATCHCLASS_NREP_MATCH_FLAG

class description: The CLASS_NREP_MATCH_FLAG is the normalized representation of match flags, instances of CLASS_MATCH_FLAG. NRPFLA_FLAG is the matched flag, and NRPFLA_NMATCH is the instance of CLASS_NREP_ALTMATCH using that match flag.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.120 CLASS_NREP_MATCH_JUMP

Class defined at file ‘warmelt-normatch.melt’, line 5091.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMJMP_LABELCLASS_NREP_MATCH_JUMP

class description: A normal match jump of CLASS_NREP_MATCH_JUMP is just a goto to a match label given by field NMJMP_LABEL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.121 CLASS_NREP_MATCH_LABEL

Class defined at file ‘warmelt-normatch.melt’, line 5080.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMLAB_STEPCLASS_NREP_MATCH_LABEL

1 sub-classes: CLASS_NREP_MATCH_LABEL_END.

class description: A normal match label of CLASS_NREP_MATCH_LABEL is just a point which can be jumped to. It corresponds to a match step given by the field NMLAB_STEP.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.122 CLASS_NREP_MATCH_LABEL_END

Class defined at file ‘warmelt-normatch.melt’, line 5087.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_MATCH_LABEL.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NMLAB_STEPCLASS_NREP_MATCH_LABEL

class description: The CLASS_NREP_MATCH_LABEL_END is for the end label.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.123 CLASS_NREP_MSEND

Class defined at file ‘warmelt-normal.melt’, line 104.

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

5 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS
3NSEND_SELCLASS_NREP_MSEND
4NSEND_RECVCLASS_NREP_MSEND

1 sub-classes: CLASS_NREP_MULTIMSEND.

class description: The CLASS_NREP_SEND is for normal message send (or message passing), with a single result. NSEND_SEL is the normalized selector, NSEND_RECV the normalized receiver, with NEXPR_ARGS giving the normalized arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.124 CLASS_NREP_MULTIAPPLY

Class defined at file ‘warmelt-normal.melt’, line 93.

6 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS CLASS_NREP_APPLY.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS
3NAPP_FUNCLASS_NREP_APPLY
4NMULAPP_BINDINGSCLASS_NREP_MULTIAPPLY
5NMULAPP_BODYCLASS_NREP_MULTIAPPLY

class description: The CLASS_NREP_MULTIAPPLY is for normal applications of functions with several results within MULTICALL. NMULAPP_BINDINGS is the tuple of formal result bindings. NMULAPP_BODY is the normal body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.125 CLASS_NREP_MULTIMSEND

Class defined at file ‘warmelt-normal.melt’, line 117.

6 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS CLASS_NREP_MSEND.

7 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS
3NSEND_SELCLASS_NREP_MSEND
4NSEND_RECVCLASS_NREP_MSEND
5NMULSEND_BINDINGSCLASS_NREP_MULTIMSEND
6NMULSEND_BODYCLASS_NREP_MULTIMSEND

class description: The CLASS_NREP_MULTIMSEND is for normal message sends with multiple results thru MULTICALL. NMULSEND_BINDINGS is the tuple of formal result bindings, and NMULSEND_BODY is the normalized body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.126 CLASS_NREP_NIL

Class defined at file ‘warmelt-normal.melt’, line 506.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_SIMPLE.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

class description: The CLASS_NREP_NIL is for normalized nil occurrences.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.127 CLASS_NREP_PREDEF

Class defined at file ‘warmelt-normal.melt’, line 497.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_SIMPLE.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NRPREDEFCLASS_NREP_PREDEF

class description: The CLASS_NREP_PREDEF is for normalized predefined values. NRPREDEF gives the symbolic or integer number.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.128 CLASS_NREP_PROGN

Class defined at file ‘warmelt-normal.melt’, line 266.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROGN_SEQCLASS_NREP_PROGN
2NPROGN_LASTCLASS_NREP_PROGN

class description: The CLASS_NREP_PROGN is for normalized PROGN sequences. The NPROGN_SEQ field is the tuple of all-but-last subexpressions, and the last one is given in NPROGN_LAST.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.129 CLASS_NREP_QUASIDATA

Class defined at file ‘warmelt-normal.melt’, line 517.

2 ancestors: CLASS_ROOT CLASS_NREP.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

2 sub-classes: CLASS_NREP_BOUND_DATA, CLASS_NREP_DISCRIMINATED_DATA.

class description: The CLASS_NREP_QUASIDATA is an abstract super-class for data computed during initialization.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.130 CLASS_NREP_RETURN

Class defined at file ‘warmelt-normal.melt’, line 172.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NRET_MAINCLASS_NREP_RETURN
2NRET_RESTCLASS_NREP_RETURN

class description: The CLASS_NREP_RETURN is for normalized returns. The primary returned value is given thru NRET_MAIN field. The secondary returned things are thru NRET_REST tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.131 CLASS_NREP_ROUTPROC

Class defined at file ‘warmelt-normal.melt’, line 462.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC.

10 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRPRO_NAMECLASS_NREP_ROUTPROC
3NRPRO_ARGBCLASS_NREP_ROUTPROC
4NRPRO_CLOSEDBCLASS_NREP_ROUTPROC
5NRPRO_CONSTCLASS_NREP_ROUTPROC
6NRPRO_DATAROUTCLASS_NREP_ROUTPROC
7NRPRO_DATACLOSCLASS_NREP_ROUTPROC
8NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
9NRPRO_VARIADICCLASS_NREP_ROUTPROC

2 sub-classes: CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_LAMBDAROUTPROC.

class description: The CLASS_NREP_ROUTPROC is the class for normal routine procedures, representing DEFUN or LAMBDA code. Field NRPRO_NAME is the name, field NRPRO_ARGB is the formal arguments binding. Field NRPRO_CLOSEDB is the list of closed bindings. Field NRPRO_CONST is the list of constants. Field NRPRO_DATAROUT is the routine data object. Field NRPRO_DATACLOS is the closure data object. Field NRPRO_THUNKLIST is the list of thunks to be called when compiling it. Field NRPRO_VARIADIC is non-null if the routine is variadic.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.132 CLASS_NREP_SIMPLE

Class defined at file ‘warmelt-normal.melt’, line 52.

2 ancestors: CLASS_ROOT CLASS_NREP.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

4 sub-classes: CLASS_NREP_MATCHED_DATA, CLASS_NREP_MATCH_FLAG, CLASS_NREP_NIL, CLASS_NREP_PREDEF.

class description: The CLASS_NREP_SIMPLE is for simple normal things -e.g. normal symbols.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.133 CLASS_NREP_TYPED_EXPRESSION

Class defined at file ‘warmelt-normal.melt’, line 67.

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION

14 sub-classes: CLASS_NREP_ALTMATCH, CLASS_NREP_APPLY, CLASS_NREP_CHUNK, CLASS_NREP_IF, CLASS_NREP_IFCOMMON, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC, CLASS_NREP_MSEND, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

class description: Common super-class CLASS_NREP_TYPED_EXPRESSION of typed normalized expressions. NEXPR_CTYP gives its c-type.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.134 CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS

Class defined at file ‘warmelt-normal.melt’, line 75.

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION.

3 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS

4 sub-classes: CLASS_NREP_APPLY, CLASS_NREP_MSEND, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND.

class description: Common super-class CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS of typed normalized expressions with normalized arguments. NEXPR_ARGS is the tuple of normalized arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.135 CLASS_OPENGPU_INDUCTION_VARIABLE

Class defined at file ‘xtramelt-opengpu.melt’, line 167.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1OPGPUIV_TVARCLASS_OPENGPU_INDUCTION_VARIABLE
2OPGPUIV_INCRCLASS_OPENGPU_INDUCTION_VARIABLE
3OPGPUIV_BOUNDCLASS_OPENGPU_INDUCTION_VARIABLE

class description: Class representing OpenGpu induction variables, with OPGPUIV_TVAR being the boxed tree and OPGPUIV_INCR being the increment tuple, OPGPUIV_BOUND being the bound if any.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.136 CLASS_OPENGPU_LINEAR_COMPOSITION

Class defined at file ‘xtramelt-opengpu.melt’, line 174.

2 ancestors: CLASS_ROOT CLASS_PROPED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1OPGPULC_INDUCVARCLASS_OPENGPU_LINEAR_COMPOSITION
2OPGPULC_BASECLASS_OPENGPU_LINEAR_COMPOSITION
3OPGPULC_GIMPLECLASS_OPENGPU_LINEAR_COMPOSITION

class description: Class representing linear composition of OpenGpu induction variables, with OPGPULC_INDUCVAR being the induction variable of CLASS_OPENGPU_INDUCTION_VARIABLE OPGPULC_BASE being the base on which we compile and OPGPULC_GIMPLE the gimple making it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.137 CLASS_OPTION_DESCRIPTOR

Class defined at file ‘warmelt-first.melt’, line 3326.

1 ancestors: CLASS_ROOT.

3 fields:

offsetnameclass
0OPTDESC_NAMECLASS_OPTION_DESCRIPTOR
1OPTDESC_FUNCLASS_OPTION_DESCRIPTOR
2OPTDESC_HELPCLASS_OPTION_DESCRIPTOR

class description: The internal CLASS_OPTION_DESCRIPTOR describes MELT options. OPTDESC_NAME is the option symbol name, OPTDESC_FUN is the function, and OPTDESC_HELP is the help string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.138 CLASS_PATMACRO_BINDING

Class defined at file ‘warmelt-first.melt’, line 487.

4 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_EXPORTED_BINDING CLASS_MACRO_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1MBIND_EXPANSERCLASS_MACRO_BINDING
2PATBIND_EXPANSERCLASS_PATMACRO_BINDING

class description: The CLASS_PATMACRO_BINDING is the class of exported pattern-macro bindings. See the EXPORT_PATMACRO macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.139 CLASS_PATTERN_CONTEXT

Class defined at file ‘warmelt-normatch.melt’, line 34.

1 ancestors: CLASS_ROOT.

11 fields:

offsetnameclass
0PCTN_NORMCTXTCLASS_PATTERN_CONTEXT
1PCTN_SRCCLASS_PATTERN_CONTEXT
2PCTN_ENVCLASS_PATTERN_CONTEXT
3PCTN_MAPATVARCLASS_PATTERN_CONTEXT
4PCTN_MAPATCSTCLASS_PATTERN_CONTEXT
5PCTN_MAPORCLASS_PATTERN_CONTEXT
6PCTN_BINDLISTCLASS_PATTERN_CONTEXT
7PCTN_STUFFMAPCLASS_PATTERN_CONTEXT
8PCTN_PVARLOCMAPCLASS_PATTERN_CONTEXT
9PCTN_TESTSCLASS_PATTERN_CONTEXT
10PCTN_VARHANDLERSCLASS_PATTERN_CONTEXT

class description: The CLASS_PATTERN_CONTEXT is for context of patterns’ normalization. PCTN_NORMCTXT is the CLASS_NORMALIZATION_CONTEXT. PCTN_SRC is the source match expression. PCTN_MAPATVAR is the mapping from symbols to pattern variables. PCTN_MAPATCNST is the mapping from constant objects to pattern constants. PCTN_MAPOR is the mapping from or source patterns to their map of symbols to pattern variables. PCTN_BINDLIST is the binding list for input arguments in matcher. PCTN_STUFFMAP is the mapping from a matched stuff to the list of normaltesters matching it. PCTN_PVARLOCMAP maps pattern variable symbols to local occurrences. PCTN_TESTS is the list of normal testers. PCTN_VARHANDERS is a list of pattern variable handler when scanning variables.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.140 CLASS_PATTERN_EXPANSION_CONTEXT

Class defined at file ‘warmelt-macro.melt’, line 1430.

1 ancestors: CLASS_ROOT.

4 fields:

offsetnameclass
0PCTX_MEXPANDERCLASS_PATTERN_EXPANSION_CONTEXT
1PCTX_PEXPANDERCLASS_PATTERN_EXPANSION_CONTEXT
2PCTX_VARMAPCLASS_PATTERN_EXPANSION_CONTEXT
3PCTX_MODCTXCLASS_PATTERN_EXPANSION_CONTEXT

class description: The internal CLASS_PATTERN_EXPANSION_CONTEXT is for expansion of patterns. PCTX_MEXPANDER is the macroexpander for expressions, PCTX_PEXANDER is the pattern expander, PCTX_VARMAP is the object-map for pattern variables. PCTX_MODCTX is the module context.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.141 CLASS_PRIMITIVE

Class defined at file ‘warmelt-first.melt’, line 129.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2PRIM_FORMALSCLASS_PRIMITIVE
3PRIM_TYPECLASS_PRIMITIVE
4PRIM_EXPANSIONCLASS_PRIMITIVE

class description: The CLASS_PRIMITIVE is the class of descriptors of primitives. The PRIM_FORMALS field is the sequence of formal arguments, the PRIM_TYPE field is the type of the primitive, and its expansion is described by the PRIM_EXPANSION tuple. Instances of CLASS_PRIMITIVE are automagically created by the DEFPRIMITIVE macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.142 CLASS_PRIMITIVE_BINDING

Class defined at file ‘warmelt-first.melt’, line 535.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2PBIND_PRIMDEFCLASS_PRIMITIVE_BINDING
3PBIND_PRIMITIVECLASS_PRIMITIVE_BINDING

class description: The internal CLASS_PRIMITIVE_BINDING is for primitive bindings. See DEFPRIMITIVE macro. The PBIND_PRIMDEF gives the definition, and the PBIND_PRIMITIVE gives the primitive itself.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.143 CLASS_PROBED_FILE

Class defined at file ‘xtramelt-probe.melt’, line 141.

2 ancestors: CLASS_ROOT CLASS_PROPED.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1PROBEDFILE_RANKCLASS_PROBED_FILE
2PROBEDFILE_PATHCLASS_PROBED_FILE
3PROBEDFILE_REALPATHCLASS_PROBED_FILE
4PROBEDFILE_LINESBUCKETCLASS_PROBED_FILE
5PROBEDFILE_DATACLASS_PROBED_FILE

class description: CLASS_PROBED_FILE describes a source file known to the probe. PROBEDFILE_RANK is its unique rank inside CLASS_PROBE_DATA, PROBEDFILE_PATH is the given -perhaps relative- path, PROBEDFILE_REALPATH is the real absolute file path, PROBEDFILE_LINESBUCKET is the bucket of interesting lines and PROBEDFILE_DATA is available to clients.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.144 CLASS_PROBED_INTERESTING_LOCATION

Class defined at file ‘xtramelt-probe.melt’, line 160.

2 ancestors: CLASS_ROOT CLASS_PROPED.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1PROBILOC_FILECLASS_PROBED_INTERESTING_LOCATION
2PROBILOC_LINENOCLASS_PROBED_INTERESTING_LOCATION
3PROBILOC_COLUMNCLASS_PROBED_INTERESTING_LOCATION
4PROBILOC_RANKCLASS_PROBED_INTERESTING_LOCATION
5PROBILOC_CLOSINFOLISTCLASS_PROBED_INTERESTING_LOCATION

class description: CLASS_PROBED_INTERESTING LOCATION describes an interesting source file location.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.145 CLASS_PROBE_DATA

Class defined at file ‘xtramelt-probe.melt’, line 171.

2 ancestors: CLASS_ROOT CLASS_PROPED.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1PROBEDATA_FILESVECCLASS_PROBE_DATA
2PROBEDATA_FILEDICTCLASS_PROBE_DATA
3PROBEDATA_REQHDICTCLASS_PROBE_DATA
4PROBEDATA_CMDTOPROBEFDCLASS_PROBE_DATA
5PROBEDATA_REQFROMPROBEFDCLASS_PROBE_DATA
6PROBEDATA_ILOCVECCLASS_PROBE_DATA
7PROBEDATA_NBILOCCLASS_PROBE_DATA
8PROBEDATA_AUXCLASS_PROBE_DATA

class description: Singleton CLASS_PROBE_DATA for probe related data. PROBEDATA_FILESVEC is a tuple of CLASS_PROBED_FILE-s, and PROBEDATA_FILEDICT is a dictionnary mapping given and real paths to them. PROBEDATA_AUX is an auxiliary data. PROBEDATA_CMDTOPROBEFD and PROBEDATA_REQFROMPROBEFD gives the boxed integers for command & request file descriptors to & from the probe. PROBEDATA_ILOCVEC is a tuple of CLASS_PROBED_INTERESTING_LOCATION


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.146 CLASS_PROPED

Class defined at file ‘warmelt-first.melt’, line 74.

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED

141 sub-classes: CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_ANY_MATCHER, CLASS_CHILD_PROCESS_HANDLER, CLASS_CITERATOR, CLASS_CLASS, CLASS_CLONED_SYMBOL, CLASS_CMATCHER, CLASS_CTYPE, CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN, CLASS_DELAYED_QUEUE, CLASS_DISCRIMINANT, CLASS_FIELD, CLASS_FUNMATCHER, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_INPUT_CHANNEL_HANDLER, CLASS_KEYWORD, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MAKEDOC_INFO, CLASS_MATCHED_DATA, CLASS_MATCHED_NORMAL_DATA, CLASS_MATCH_CASE, CLASS_MATCH_FLAG, CLASS_MATCH_GRAPHIC, CLASS_MATCH_STEP, CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_MATCH_STEP_THEN, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG, CLASS_MELT_MODE, CLASS_NAMED, CLASS_OPENGPU_INDUCTION_VARIABLE, CLASS_OPENGPU_LINEAR_COMPOSITION, CLASS_PRIMITIVE, CLASS_PROBED_FILE, CLASS_PROBED_INTERESTING_LOCATION, CLASS_PROBE_DATA, CLASS_SELECTOR, CLASS_SEXPR, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE, CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_COMMENT, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_EXPORT_SYNONYM, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FIELDASSIGN, CLASS_SOURCE_FIELD_PATTERN, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_GENERATOR_DEVICE, CLASS_SOURCE_GET_FIELD, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MSEND, CLASS_SOURCE_MULTICALL, CLASS_SOURCE_OR, CLASS_SOURCE_PATTERN, CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_MATCHER, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_TUPLE, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_PROGN, CLASS_SOURCE_PUT_FIELDS, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNSAFE_GET_FIELD, CLASS_SOURCE_UNSAFE_PUT_FIELDS, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG, CLASS_SYMBOL, CLASS_SYSTEM_DATA, CLASS_VALUE_DESCRIPTOR, CLASS_VARISIZED_VALUE_DESCRIPTOR.

class description: The CLASS_PROPED is the common super-class for objects with a property table PROP_TABLE (an object map associating property naming symbols to arbitrary value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.147 CLASS_REFERENCE

Class defined at file ‘warmelt-first.melt’, line 65.

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0REFERENCED_VALUECLASS_REFERENCE

class description: The CLASS_REFERENCE is a class for mutable references (incorrectly called containers). The contained value is REFERENCED_VALUE. See also REFERENCE and DEREF macros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.148 CLASS_ROOT

Class defined at file ‘warmelt-first.melt’, line 57.

234 sub-classes: CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_ANY_BINDING, CLASS_ANY_MATCHER, CLASS_CHILD_PROCESS_HANDLER, CLASS_CITERATOR, CLASS_CITERATOR_BINDING, CLASS_CLASS, CLASS_CLASS_BINDING, CLASS_CLONED_SYMBOL, CLASS_CMATCHER, CLASS_CMATCHER_BINDING, CLASS_CTYPE, CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN, CLASS_C_GENERATION_CONTEXT, CLASS_DEBUG_INFORMATION, CLASS_DEFINED_VALUE_BINDING, CLASS_DELAYED_QUEUE, CLASS_DESCRIBED_ENVIRONMENT, CLASS_DISCRIMINANT, CLASS_ENVIRONMENT, CLASS_EXPORTED_BINDING, CLASS_EXTENSION_GENERATION_CONTEXT, CLASS_FIELD, CLASS_FIELD_BINDING, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER, CLASS_FUNMATCHER_BINDING, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_GENERATED_C_CODE, CLASS_INITIAL_GENERATION_CONTEXT, CLASS_INPUT_CHANNEL_HANDLER, CLASS_INSTANCE_BINDING, CLASS_KEYWORD, CLASS_LABEL_BINDING, CLASS_LETREC_BINDING, CLASS_LET_BINDING, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MACRO_BINDING, CLASS_MAKEDOC_INFO, CLASS_MATCHED_BINDING, CLASS_MATCHED_DATA, CLASS_MATCHED_NORMAL_DATA, CLASS_MATCHING_CONTEXT, CLASS_MATCH_CASE, CLASS_MATCH_FLAG, CLASS_MATCH_GRAPHIC, CLASS_MATCH_NORMALIZATION_CONTEXT, CLASS_MATCH_STEP, CLASS_MATCH_STEP_CLEAR, CLASS_MATCH_STEP_FLAG_CONJUNCTION, CLASS_MATCH_STEP_FLAG_DISJUNCTION, CLASS_MATCH_STEP_FLAG_OPERATION, CLASS_MATCH_STEP_FLAG_SET, CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG, CLASS_MATCH_STEP_TEST, CLASS_MATCH_STEP_TEST_CONSTANT, CLASS_MATCH_STEP_TEST_GROUP, CLASS_MATCH_STEP_TEST_INSTANCE, CLASS_MATCH_STEP_TEST_MATCHER, CLASS_MATCH_STEP_TEST_MULTIPLE, CLASS_MATCH_STEP_TEST_VARIABLE, CLASS_MATCH_STEP_THEN, CLASS_MATCH_STEP_WITH_DATA, CLASS_MATCH_STEP_WITH_FLAG, CLASS_MELT_MODE, CLASS_MODULE_CONTEXT, CLASS_NAMED, CLASS_NORMALIZATION_CONTEXT, CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING, CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING, CLASS_NORMAL_CONSTRUCTED_LIST_BINDING, CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING, CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING, CLASS_NORMAL_CONSTRUCTOR_BINDING, CLASS_NORMAL_LET_BINDING, CLASS_NORMAL_OR_VARIABLE, CLASS_NREP, CLASS_NREP_ALTMATCH, CLASS_NREP_ANYPROC, CLASS_NREP_APPLY, CLASS_NREP_BOUND_DATA, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_EXPRESSION, CLASS_NREP_IF, CLASS_NREP_IFCOMMON, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_INITPROC, CLASS_NREP_JUMP_WHEN_IS_A, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_LET, CLASS_NREP_LETREC, CLASS_NREP_MATCHED_DATA, CLASS_NREP_MATCH_DATA_ACTION, CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER, CLASS_NREP_MATCH_FLAG, CLASS_NREP_MATCH_JUMP, CLASS_NREP_MATCH_LABEL, CLASS_NREP_MATCH_LABEL_END, CLASS_NREP_MSEND, CLASS_NREP_MULTIAPPLY, CLASS_NREP_MULTIMSEND, CLASS_NREP_NIL, CLASS_NREP_PREDEF, CLASS_NREP_PROGN, CLASS_NREP_QUASIDATA, CLASS_NREP_RETURN, CLASS_NREP_ROUTPROC, CLASS_NREP_SIMPLE, CLASS_NREP_TYPED_EXPRESSION, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS, CLASS_OPENGPU_INDUCTION_VARIABLE, CLASS_OPENGPU_LINEAR_COMPOSITION, CLASS_OPTION_DESCRIPTOR, CLASS_PATMACRO_BINDING, CLASS_PATTERN_CONTEXT, CLASS_PATTERN_EXPANSION_CONTEXT, CLASS_PRIMITIVE, CLASS_PRIMITIVE_BINDING, CLASS_PROBED_FILE, CLASS_PROBED_INTERESTING_LOCATION, CLASS_PROBE_DATA, CLASS_PROPED, CLASS_REFERENCE, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT, CLASS_SELECTOR, CLASS_SELECTOR_BINDING, CLASS_SEXPR, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE, CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_COMMENT, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_EXPORT_SYNONYM, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FIELDASSIGN, CLASS_SOURCE_FIELD_PATTERN, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_GENERATOR_DEVICE, CLASS_SOURCE_GET_FIELD, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MSEND, CLASS_SOURCE_MULTICALL, CLASS_SOURCE_OR, CLASS_SOURCE_PATTERN, CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_MATCHER, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_TUPLE, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_PROGN, CLASS_SOURCE_PUT_FIELDS, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNSAFE_GET_FIELD, CLASS_SOURCE_UNSAFE_PUT_FIELDS, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG, CLASS_SYMBOL, CLASS_SYSTEM_DATA, CLASS_VALUE_BINDING, CLASS_VALUE_DESCRIPTOR, CLASS_VARISIZED_VALUE_DESCRIPTOR.

class description: The CLASS_ROOT is the topmost root of all classes. Every class should be some indirect subclass of CLASS_ROOT. And CLASS_ROOT should be the only class without superclass. Actually its super discriminant is DISCR_ANY_RECEIVER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.149 CLASS_RUNNING_EXTENSION_MODULE_CONTEXT

Class defined at file ‘warmelt-first.melt’, line 864.

2 ancestors: CLASS_ROOT CLASS_MODULE_CONTEXT.

15 fields:

offsetnameclass
0MOCX_MODULENAMECLASS_MODULE_CONTEXT
1MOCX_EXPFIELDICTCLASS_MODULE_CONTEXT
2MOCX_EXPCLASSDICTCLASS_MODULE_CONTEXT
3MOCX_INITIALENVCLASS_MODULE_CONTEXT
4MOCX_FUNCOUNTCLASS_MODULE_CONTEXT
5MOCX_FILETUPLECLASS_MODULE_CONTEXT
6MOCX_CFLAGSCLASS_MODULE_CONTEXT
7MOCX_LINKFLAGSCLASS_MODULE_CONTEXT
8MOCX_CHEADERLISTCLASS_MODULE_CONTEXT
9MOCX_GENDEVLISTCLASS_MODULE_CONTEXT
10MOCX_PACKAGEPCLISTCLASS_MODULE_CONTEXT
11MOCX_ERRORHANDLERCLASS_MODULE_CONTEXT
12MORCX_LITERVALISTCLASS_RUNNING_EXTENSION_MODULE_CONTEXT
13MORCX_LITEROBJMAPCLASS_RUNNING_EXTENSION_MODULE_CONTEXT
14MORCX_COUNTLITVALCLASS_RUNNING_EXTENSION_MODULE_CONTEXT

class description: The CLASS_RUNNING_EXTENSION_MODULE_CONTEXT is for runtime evaluation of expressions. Field MORCX_LITERVALIST is the list of literal values of CLASS_LITERAL_VALUE, with MORCX_LITEROBJMAP used to literal objects. MORCX_COUNTLITVAL is the literal value counter.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.150 CLASS_SELECTOR

Class defined at file ‘warmelt-first.melt’, line 244.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SEL_SIGNATURECLASS_SELECTOR
3SEL_DATACLASS_SELECTOR

class description: The CLASS_SELECTOR is the class of message selectors, created by the DEFSELECTOR macro. The SEL_SIGNATURE could give a signature (as a formal argument list) and the SEL_DATA is for additional data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.151 CLASS_SELECTOR_BINDING

Class defined at file ‘warmelt-first.melt’, line 525.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2SBIND_SELECTORDEFCLASS_SELECTOR_BINDING

class description: The internal CLASS_SELECTOR_BINDING is a fixed binding for selectors. See DEFSELECTOR macro. The SBIND_SELECTORDEF gives the definition.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.152 CLASS_SEXPR

Class defined at file ‘warmelt-first.melt’, line 222.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXP_CONTENTSCLASS_SEXPR

1 sub-classes: CLASS_SEXPR_MACROSTRING.

class description: The CLASS_SEXPR is the class of source expressions, as parsed by the reader before their macro expansion into abstract syntax tree [see CLASS_SOURCE]. The SEXP_CONTENTS field is a list of contents.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.153 CLASS_SEXPR_MACROSTRING

Class defined at file ‘warmelt-first.melt’, line 233.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SEXPR.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXP_CONTENTSCLASS_SEXPR

class description: The CLASS_SEXPR_MACROSTRING has the same fields as CLASS_SEXPR but is used for macrostring s-expressions, written in MELT source with the #{ #} notation.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.154 CLASS_SOURCE

Class defined at file ‘warmelt-first.melt’, line 823.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED

76 sub-classes: CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_COMMENT, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_EXPORT_SYNONYM, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FIELDASSIGN, CLASS_SOURCE_FIELD_PATTERN, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_GENERATOR_DEVICE, CLASS_SOURCE_GET_FIELD, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MSEND, CLASS_SOURCE_MULTICALL, CLASS_SOURCE_OR, CLASS_SOURCE_PATTERN, CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_MATCHER, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_TUPLE, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_PROGN, CLASS_SOURCE_PUT_FIELDS, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNSAFE_GET_FIELD, CLASS_SOURCE_UNSAFE_PUT_FIELDS, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG.

class description: The CLASS_SOURCE is the common super-class of source elements, i.e. of abstract syntax tree elements after macro-expansion. Its subclasses are produced by macro expanders.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.155 CLASS_SOURCE_AGAIN

Class defined at file ‘warmelt-macro.melt’, line 625.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LABELLED.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLABEL_BINDCLASS_SOURCE_LABELLED

class description: The internal CLASS_SOURCE_AGAIN is for abstract syntax of AGAIN. SLABEL_BIND gives the restarted loop label binding.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.156 CLASS_SOURCE_APPLY

Class defined at file ‘warmelt-macro.melt’, line 74.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3SAPP_FUNCLASS_SOURCE_APPLY

class description: The internal CLASS_SOURCE_APPLY is for function application abstract syntax. SAPP_FUN is the applied function, SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.157 CLASS_SOURCE_ARGUMENTED_OPERATOR

Class defined at file ‘warmelt-macro.melt’, line 66.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR

9 sub-classes: CLASS_SOURCE_APPLY, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_LIST, CLASS_SOURCE_MSEND, CLASS_SOURCE_PRIMITIVE, CLASS_SOURCE_RETURN, CLASS_SOURCE_TUPLE.

class description: The internal super-class CLASS_SOURCE_ARGUMENTED_OPERATOR is the super-class of many abstract syntax with a sequence of argument subexpressions. Field SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.158 CLASS_SOURCE_CHEADER

Class defined at file ‘warmelt-macro.melt’, line 184.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SCHEADER_CODESTRINGCLASS_SOURCE_CHEADER

class description: The internal CLASS_SOURCE_C_HEADER is for C_HEADER abstract syntax. SCHEADER_CODESTRING gives the code string to add into the declaration part.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.159 CLASS_SOURCE_CITERATION

Class defined at file ‘warmelt-macro.melt’, line 106.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3SCITER_OPERCLASS_SOURCE_CITERATION
4SCITER_VARBINDCLASS_SOURCE_CITERATION
5SCITER_BODYCLASS_SOURCE_CITERATION

class description: The intenal CLASS_SOURCE_CITERATION is for c-iteration abstract syntax. SCRITER_OPER is the c-iterator, SARGOP_ARGS is the tuple of arguments, SCITER_VARBIND is the tuple of formal local bindings, and SCITER_BODY is the tuple for the abstract body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.160 CLASS_SOURCE_CMATCHEXPR

Class defined at file ‘warmelt-macro.melt’, line 118.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3SCMATX_CMATCHERCLASS_SOURCE_CMATCHEXPR

class description: The internal CLASS_SOURCE_CMATCHEXPR is for c-matcher expression abstract syntax. SCMATX_CMATCHER is for the c-matcher, SCMATX_ARGS is for arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.161 CLASS_SOURCE_COMMENT

Class defined at file ‘warmelt-macro.melt’, line 176.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SCOMM_STRCLASS_SOURCE_COMMENT

class description: The internal CLASS_SOURCE_COMMENT is for COMMENT abstract syntax. SCOMM_STR is the comment string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.162 CLASS_SOURCE_CPPIF

Class defined at file ‘warmelt-macro.melt’, line 507.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SIFP_CONDCLASS_SOURCE_CPPIF
3SIFP_THENCLASS_SOURCE_CPPIF
4SIFP_ELSECLASS_SOURCE_CPPIF

class description: The internal CLASS_SOURCE_CPPIF is the abstract syntax of CPPIF preprocessor conditionals. SIFP_COND is the preprocessor symbol. SIFP_THEN is the then part. SIFP_ELSE is the else part.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.163 CLASS_SOURCE_DEFCITERATOR

Class defined at file ‘warmelt-macro.melt’, line 318.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL
5SCITERDEF_CITERATORCLASS_SOURCE_DEFCITERATOR
6SCITERDEF_BEFORELOCCLASS_SOURCE_DEFCITERATOR
7SCITERDEF_AFTERLOCCLASS_SOURCE_DEFCITERATOR

class description: The internal CLASS_SOURCE_DEFCITERATOR is the abstact syntax of DEFCITERATOR. SCITERDEF_CITERATOR is the c-iterator, SCITERDEF_BEFORELOC is the location of the before chunk, and SCRITERDEF_AFTERLOC is the location of the after chunk


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.164 CLASS_SOURCE_DEFCLASS

Class defined at file ‘warmelt-macro.melt’, line 377.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFOBJCOMMON.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SOBJ_PREDEFCLASS_SOURCE_DEFOBJCOMMON
5SCLASS_CLABINDCLASS_SOURCE_DEFCLASS
6SCLASS_SUPERBINDCLASS_SOURCE_DEFCLASS
7SCLASS_FLDBINDSCLASS_SOURCE_DEFCLASS

class description: The internal CLASS_SOURCE_DEFCLASS is the DEFCLASS abstract syntax. SCLASS_CLABIND is the binding of the class, SCLASS_SUPERBIND is the binding of the superclass, SCLASS_FLDBIND is the sequence of own field bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.165 CLASS_SOURCE_DEFCMATCHER

Class defined at file ‘warmelt-macro.melt’, line 328.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL
5SCMATDEF_CMATCHERCLASS_SOURCE_DEFCMATCHER
6SCMATDEF_TESTLOCCLASS_SOURCE_DEFCMATCHER
7SCMATDEF_FILLLOCCLASS_SOURCE_DEFCMATCHER
8SCMATDEF_OPERLOCCLASS_SOURCE_DEFCMATCHER

class description: The internal CLASS_SOURCE_DEFCMATCHER is the abstract syntax of DEFCMATCHER. SCMATDEF_CMATCHER is the c-matcher. SCMATDEF_TESTLOC is the location of the test expansion, SCMATDEF_FILLLOC is the location of the fill expansion, and SCMATDEF_OPERLOC is the location of the optional operator expansion.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.166 CLASS_SOURCE_DEFINE

Class defined at file ‘warmelt-macro.melt’, line 282.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SDEFINE_BODYCLASS_SOURCE_DEFINE

class description: The CLASS_SOURCE_DEFINE is for value definitions. Field SDEFINE_BODY is the tuple of expressions of the value bound to SDEF_NAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.167 CLASS_SOURCE_DEFINITION

Class defined at file ‘warmelt-macro.melt’, line 272.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION

11 sub-classes: CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER.

class description: The internal common super-class for abstract syntax of all source definitions is CLASS_SOURCE_DEFINITION. The field SDEF_NAME is the defined name. The field SDEF_DOC gives the optional documentation.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.168 CLASS_SOURCE_DEFINITION_FORMAL

Class defined at file ‘warmelt-macro.melt’, line 290.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL

5 sub-classes: CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER.

class description: The internal CLASS_SOURCE_DEFINITION_FORMAL is the super-class of all definitions with a formal arguments binding tuple given in SFORMAL_ARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.169 CLASS_SOURCE_DEFINSTANCE

Class defined at file ‘warmelt-macro.melt’, line 390.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFOBJCOMMON.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SOBJ_PREDEFCLASS_SOURCE_DEFOBJCOMMON
5SINST_CLASSCLASS_SOURCE_DEFINSTANCE
6SINST_CLABINDCLASS_SOURCE_DEFINSTANCE
7SINST_OBJNUMCLASS_SOURCE_DEFINSTANCE
8SINST_FIELDSCLASS_SOURCE_DEFINSTANCE

1 sub-classes: CLASS_SOURCE_DEFSELECTOR.

class description: The internal CLASS_SOURCE_DEFINSTANCE is the DEFINSTANCE abstract syntax. SINST_CLASS the class of the defined instance, SINST_CLABIND is its binding, SINST_OBJNUM if for the object magic number, SINST_FIELDS is the sequence of field assignments of CLASS_SOURCE_FIELDASSIGN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.170 CLASS_SOURCE_DEFOBJCOMMON

Class defined at file ‘warmelt-macro.melt’, line 367.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SOBJ_PREDEFCLASS_SOURCE_DEFOBJCOMMON

3 sub-classes: CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFSELECTOR.

class description: The internal CLASS_SOURCE_DEFOBJCOMMON is the common superclass for object definitions. SOBJ_PREDEF is the predefined rank if any.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.171 CLASS_SOURCE_DEFPRIMITIVE

Class defined at file ‘warmelt-macro.melt’, line 305.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL.

8 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL
5SPRIM_TYPECLASS_SOURCE_DEFPRIMITIVE
6SPRIM_EXPANSIONCLASS_SOURCE_DEFPRIMITIVE
7SPRIM_EXPLOCCLASS_SOURCE_DEFPRIMITIVE

class description: The internal CLASS_SOURCE_DEFPRIMITIVE is the abstract syntax of DEFPRIMITIVE. SPRIM_TYPE is the result ctype, SPRIM_EXPANSION is the tuple of its expansion and SPRIM_EXPLOC is the location of the expansion.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.172 CLASS_SOURCE_DEFSELECTOR

Class defined at file ‘warmelt-macro.melt’, line 404.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFOBJCOMMON CLASS_SOURCE_DEFINSTANCE.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SOBJ_PREDEFCLASS_SOURCE_DEFOBJCOMMON
5SINST_CLASSCLASS_SOURCE_DEFINSTANCE
6SINST_CLABINDCLASS_SOURCE_DEFINSTANCE
7SINST_OBJNUMCLASS_SOURCE_DEFINSTANCE
8SINST_FIELDSCLASS_SOURCE_DEFINSTANCE
9SDEFSEL_FORMALSCLASS_SOURCE_DEFSELECTOR

class description: The internal CLASS_SOURCE_DEFSELECTOR is the DEFSELECTOR abstract syntax. SDEFSEL_FORMALS is the formal argument bindings signature sequence, if any.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.173 CLASS_SOURCE_DEFUN

Class defined at file ‘warmelt-macro.melt’, line 298.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL
5SFUN_BODYCLASS_SOURCE_DEFUN

class description: The internal CLASS_SOURCE_DEFUN is the abstract syntax of DEFUN. SFUN_BODY is the body tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.174 CLASS_SOURCE_DEFUNMATCHER

Class defined at file ‘warmelt-macro.melt’, line 347.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL.

10 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION
4SFORMAL_ARGSCLASS_SOURCE_DEFINITION_FORMAL
5SFUMATDEF_INSCLASS_SOURCE_DEFUNMATCHER
6SFUMATDEF_OUTSCLASS_SOURCE_DEFUNMATCHER
7SFUMATDEF_MATCHFCLASS_SOURCE_DEFUNMATCHER
8SFUMATDEF_APPLYFCLASS_SOURCE_DEFUNMATCHER
9SFUMATDEF_DATACLASS_SOURCE_DEFUNMATCHER

class description: The internal CLASS_SOURCE_DEFUNMATCHER is the abstract syntax of DEFUNMATCHER. SFUMATDEF_INS is the input formals tuple. SFUNMATDEF_OUTS is the output formals tuple. SFUMATDEF_MATCHF is the matcher function expression. SFUNMATDEF_APPLYF is the the applying function expression. SFUMATDEF_DATA is some extra data.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.175 CLASS_SOURCE_EXIT

Class defined at file ‘warmelt-macro.melt’, line 632.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LABELLED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLABEL_BINDCLASS_SOURCE_LABELLED
3SEXI_BODYCLASS_SOURCE_EXIT

class description: The internal CLASS_SOURCE_EXIT is for abstract syntax of EXIT loops. The field SEXI_BODY is the body sequence.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.176 CLASS_SOURCE_EXPORTCOMMON

Class defined at file ‘warmelt-macro.melt’, line 211.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPORT_NAMESCLASS_SOURCE_EXPORTCOMMON

2 sub-classes: CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_VALUES.

class description: The internal CLASS_SOURCE_EXPORTCOMMON is the common super-class of abstract syntax of name-exporting directives. SEXPORT_NAMES is the tuple of exported names.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.177 CLASS_SOURCE_EXPORT_CLASS

Class defined at file ‘warmelt-macro.melt’, line 227.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORTCOMMON.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPORT_NAMESCLASS_SOURCE_EXPORTCOMMON

class description: The internal CLASS_SOURCE_EXPORT_CLASS is for abstract syntax of EXPORT_CLASS directives.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.178 CLASS_SOURCE_EXPORT_MACRO

Class defined at file ‘warmelt-macro.melt’, line 236.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_MACRO
3SEXPMAC_MVALCLASS_SOURCE_EXPORT_MACRO
4SEXPMAC_DOCCLASS_SOURCE_EXPORT_MACRO

1 sub-classes: CLASS_SOURCE_EXPORT_PATMACRO.

class description: The internal CLASS_SOURCE_EXPORT_MACRO is for abstract syntax of EXPORT_MACRO directives. SEXPMAC_MNAME is the macro-name, SEXPMAC_MVAL is the expanser value, and SEXPMAC_DOC is the documentation.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.179 CLASS_SOURCE_EXPORT_PATMACRO

Class defined at file ‘warmelt-macro.melt’, line 249.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORT_MACRO.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_MACRO
3SEXPMAC_MVALCLASS_SOURCE_EXPORT_MACRO
4SEXPMAC_DOCCLASS_SOURCE_EXPORT_MACRO
5SEXPPAT_PVALCLASS_SOURCE_EXPORT_PATMACRO

class description: The internal CLASS_SOURCE_EXPORT_PATMACRO is for abstract syntax of EXPORT_PATMACRO directive. SEXPPAT_PVAL is the pattern expander.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.180 CLASS_SOURCE_EXPORT_SYNONYM

Class defined at file ‘warmelt-macro.melt’, line 261.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPSYN_NEWNAMECLASS_SOURCE_EXPORT_SYNONYM
3SEXPSYN_OLDNAMECLASS_SOURCE_EXPORT_SYNONYM
4SEXPSYN_DOCCLASS_SOURCE_EXPORT_SYNONYM

class description: CLASS_SOURCE_EXPORT_SYNONYM represent synonym declarations: the SEXPSYN_NEWNAME is a new name synonym of EXPSYN_OLDNAME and documentation SEXPSYN_DOC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.181 CLASS_SOURCE_EXPORT_VALUES

Class defined at file ‘warmelt-macro.melt’, line 220.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORTCOMMON.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPORT_NAMESCLASS_SOURCE_EXPORTCOMMON

class description: The internal CLASS_SOURCE_EXPORT_VALUES is for the EXPORT_VALUES directive.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.182 CLASS_SOURCE_FIELDASSIGN

Class defined at file ‘warmelt-macro.melt’, line 413.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SFLA_FIELDCLASS_SOURCE_FIELDASSIGN
3SFLA_EXPRCLASS_SOURCE_FIELDASSIGN

class description: The internal CLASS_SOURCE_FIELDASSIGN is the abstract syntax for field assigments inside e.g. DEFINSANCE. SFLA_FIELD is the field, SFLA_EXPR is the expression.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.183 CLASS_SOURCE_FIELD_PATTERN

Class defined at file ‘warmelt-macro.melt’, line 805.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SPAF_FIELDCLASS_SOURCE_FIELD_PATTERN
3SPAF_PATTERNCLASS_SOURCE_FIELD_PATTERN

class description: The internal CLASS_SOURCE_FIELD_PATTERN is for abstract syntax of fields inside patterns like INSTANCE or OBJECT. The SPAF_FIELD is the required field, and the SPAF_PATTERN gives the matching sub-pattern.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.184 CLASS_SOURCE_FOREVER

Class defined at file ‘warmelt-macro.melt’, line 617.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LABELLED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLABEL_BINDCLASS_SOURCE_LABELLED
3SFRV_BODYCLASS_SOURCE_FOREVER

class description: The internal CLASS_SOURCE_FOREVER is for abstract syntax of FOREVER loops. The field SFRV_BODY is the body sequence.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.185 CLASS_SOURCE_FUNMATCHEXPR

Class defined at file ‘warmelt-macro.melt’, line 127.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3SFMATX_FMATCHERCLASS_SOURCE_FUNMATCHEXPR
4SFMATX_FMATBINDCLASS_SOURCE_FUNMATCHEXPR

class description: The internal CLASS_SOURCE_FUNMATCHEXPR is for funmatcher expression abstract syntax. SFMATX_FMATCHER is the funmatcher SFMATX_FMATBIND is the funmatcher binding, SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.186 CLASS_SOURCE_GENERATOR_DEVICE

Class defined at file ‘warmelt-macro.melt’, line 44.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SRCGEN_DEFINCLASS_SOURCE_GENERATOR_DEVICE
3SRCGEN_REPRCLASS_SOURCE_GENERATOR_DEVICE

class description: The internal CLASS_SOURCE_GENERATOR_DEVICE accumulate C code generator devices to test syntactically that they produce good enough code. field SRCGEN_DEFIN gives the definition and SRCGEN_REPR gives the internal representation.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.187 CLASS_SOURCE_GET_FIELD

Class defined at file ‘warmelt-macro.melt’, line 436.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUGET_OBJCLASS_SOURCE_GET_FIELD
3SUGET_FIELDCLASS_SOURCE_GET_FIELD

1 sub-classes: CLASS_SOURCE_UNSAFE_GET_FIELD.

class description: The internal CLASS_SOURCE_GET_FIELD is the abstract syntax of GET_FIELD. SUGET_OBJ is the object expression, SUGET_FIELD is the accessed field.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.188 CLASS_SOURCE_IF

Class defined at file ‘warmelt-macro.melt’, line 475.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SIF_TESTCLASS_SOURCE_IF
3SIF_THENCLASS_SOURCE_IF

1 sub-classes: CLASS_SOURCE_IFELSE.

class description: The internal CLASS_SOURCE_IF is the abstract syntax of conditionals like IF AND COND. SIF_TEST is the test, and SIF_THEN is the then part. See also CLASS_SOURCE_IFELSE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.189 CLASS_SOURCE_IFELSE

Class defined at file ‘warmelt-macro.melt’, line 484.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_IF.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SIF_TESTCLASS_SOURCE_IF
3SIF_THENCLASS_SOURCE_IF
4SIF_ELSECLASS_SOURCE_IFELSE

class description: The internal CLASS_SOURCE_IFELSE is the abstract syntax of conditionals with else part like some IF AND COND. The SIF_ELSE is the else part. See also CLASS_SOURCE_IF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.190 CLASS_SOURCE_IFVARIADIC

Class defined at file ‘warmelt-macro.melt’, line 584.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SIFVARIADIC_ARGBINDCLASS_SOURCE_IFVARIADIC
3SIFVARIADIC_THENCLASS_SOURCE_IFVARIADIC
4SIFVARIADIC_ELSECLASS_SOURCE_IFVARIADIC

class description: The internal CLASS_SOURCE_IFVARIADIC is for abstract syntax of VARIADIC. The SIFVARIADIC_ARGBIND is the tuple of formals of CLASS_FORMAL_BINDING, and the SIFVARIADIC_THEN is the tuple of body expressions evaluated with the variadics bound, otherwise SIFVARIADIC_ELSE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.191 CLASS_SOURCE_INSTANCE

Class defined at file ‘warmelt-macro.melt’, line 424.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SMINS_CLASSCLASS_SOURCE_INSTANCE
3SMINS_CLABINDCLASS_SOURCE_INSTANCE
4SMINS_FIELDSCLASS_SOURCE_INSTANCE

class description: The internal CLASS_SOURCE_INSTANCE is the abstract syntax of INSTANCE expressions. SMINS_CLASS is the class of the new object, SMINS_CLABIND is the class binding, SMINS_FIELDS is the sequence of CLASS_SOURCE_FIELDASSIGN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.192 CLASS_SOURCE_LABELLED

Class defined at file ‘warmelt-macro.melt’, line 608.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLABEL_BINDCLASS_SOURCE_LABELLED

3 sub-classes: CLASS_SOURCE_AGAIN, CLASS_SOURCE_EXIT, CLASS_SOURCE_FOREVER.

class description: The internal CLASS_SOURCE_LABELLED is the super-class of abstract syntax dealing with labels like FOREVER and EXIT. The field SLABEL_BIND gives the label binding.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.193 CLASS_SOURCE_LAMBDA

Class defined at file ‘warmelt-macro.melt’, line 574.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLAM_ARGBINDCLASS_SOURCE_LAMBDA
3SLAM_BODYCLASS_SOURCE_LAMBDA

class description: The internal CLASS_SOURCE_LAMBDA is for abstract syntax of LAMBDA. The SLAM_ARGBIND is the tuple of formals CLASS_FORMAL_BINDING and the SLAM_BODY is the tuple of body expressions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.194 CLASS_SOURCE_LAZY_MACRO_EXPANSION

Class defined at file ‘warmelt-macro.melt’, line 53.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLAZYMACRO_FUNCLASS_SOURCE_LAZY_MACRO_EXPANSION
3SLAZYMACRO_OPERCLASS_SOURCE_LAZY_MACRO_EXPANSION

class description: The internal CLASS_SOURCE_LAZY_MACRO_EXPANSION handles the common case of forward reference applications and other stuff. The normalization step will actually do the macro expansion. Field SLAZYMACRO_FUN is a closure thunk returning the macro-expanded result. SLAZYMACRO_OPER is the operator, usually a bound name.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.195 CLASS_SOURCE_LET

Class defined at file ‘warmelt-macro.melt’, line 556.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLET_BINDINGSCLASS_SOURCE_LET
3SLET_BODYCLASS_SOURCE_LET

1 sub-classes: CLASS_SOURCE_LETREC.

class description: The internal CLASS_SOURCE_LET is for abstract syntax of LET. The SLET_BINDINGS field is the tuple of bindings as instances of CLASS_SOURCE_LET_BINDING and the SLET_BODY field is the tuple of body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.196 CLASS_SOURCE_LETREC

Class defined at file ‘warmelt-macro.melt’, line 566.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LET.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLET_BINDINGSCLASS_SOURCE_LET
3SLET_BODYCLASS_SOURCE_LET

class description: The internal CLASS_SOURCE_LETREC is for abstract syntax of LETREC. The SLET_BINDINGS are restricted to constructible expressions bindings


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.197 CLASS_SOURCE_LETREC_BINDING

Class defined at file ‘warmelt-macro.melt’, line 550.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LET_BINDING.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_TYPECLASS_SOURCE_LET_BINDING
3SLETB_BINDERCLASS_SOURCE_LET_BINDING
4SLETB_EXPRCLASS_SOURCE_LET_BINDING

class description: The internal CLASS_SOURCE_LETREC_BINDING is abstract syntax for LETREC bindings in the source.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.198 CLASS_SOURCE_LET_BINDING

Class defined at file ‘warmelt-macro.melt’, line 539.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_TYPECLASS_SOURCE_LET_BINDING
3SLETB_BINDERCLASS_SOURCE_LET_BINDING
4SLETB_EXPRCLASS_SOURCE_LET_BINDING

1 sub-classes: CLASS_SOURCE_LETREC_BINDING.

class description: The internal CLASS_SOURCE_LET_BINDING is abstract syntax for LET bindings in the source. The SLETB_TYPE gives the type of the binding, the SLETB_BINDER gives the binder, and the SLETB_EXPR gives the bound expression.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.199 CLASS_SOURCE_LIST

Class defined at file ‘warmelt-macro.melt’, line 145.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR

class description: The internal CLASS_SOURCE_LIST is for LIST expression abstract syntax. SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.200 CLASS_SOURCE_MATCH

Class defined at file ‘warmelt-macro.melt’, line 518.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SMAT_MATCHEDXCLASS_SOURCE_MATCH
3SMAT_CASESCLASS_SOURCE_MATCH

class description: The internal CLASS_SOURCE_MATCH is the abtract syntax of MATCH expressions. SMAT_MATCHEDX is the matched expression. SMAT_CASES is the tuple of match-cases of CLASS_SOURCE_CASEMATCH.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.201 CLASS_SOURCE_MATCH_CASE

Class defined at file ‘warmelt-macro.melt’, line 529.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SCAM_PATTCLASS_SOURCE_MATCH_CASE
3SCAM_BODYCLASS_SOURCE_MATCH_CASE

class description: The internal CLASS_SOURCE_MATCH_CASE is the abstract syntax of match-cases. SCAM_PATT is the pattern, SCAM_BODY is the body tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.202 CLASS_SOURCE_MSEND

Class defined at file ‘warmelt-macro.melt’, line 84.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3MSEND_SELSYMBCLASS_SOURCE_MSEND
4MSEND_RECVCLASS_SOURCE_MSEND

class description: The internal CLASS_SOURCE_MSEND for message sending abstract syntax. MSEND_SELSYMB is the message selector symbol, MSEND_RECV is the receiver, SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.203 CLASS_SOURCE_MULTICALL

Class defined at file ‘warmelt-macro.melt’, line 596.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SMULC_RESBINDCLASS_SOURCE_MULTICALL
3SMULC_CALLCLASS_SOURCE_MULTICALL
4SMULC_BODYCLASS_SOURCE_MULTICALL

class description: The internal CLASS_SOURCE_MULTICALL is for abstract syntax of MULTICALL. The tuple of formal bindings of result variables is SMULC_RESBIND. The called abstract syntac is SMULC_CALL, and the body is SMULC_BODY.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.204 CLASS_SOURCE_OR

Class defined at file ‘warmelt-macro.melt’, line 495.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SOR_DISJCLASS_SOURCE_OR

class description: The internal CLASS_SOURCE_OR is the abstract syntax of OR conditionals. SOR_DISCJ is the tuple of disjuncts. See also CLASS_SOURCE_IF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.205 CLASS_SOURCE_PATTERN

Class defined at file ‘warmelt-macro.melt’, line 695.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN

15 sub-classes: CLASS_SOURCE_PATTERN_AND, CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_CONSTANT, CLASS_SOURCE_PATTERN_CONSTRUCT, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_JOKER_VARIABLE, CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_MATCHER, CLASS_SOURCE_PATTERN_OBJECT, CLASS_SOURCE_PATTERN_OR, CLASS_SOURCE_PATTERN_TUPLE, CLASS_SOURCE_PATTERN_VARIABLE, CLASS_SOURCE_PATTERN_WHEN.

class description: Common internal super-class CLASS_SOURCE_PATTERN for abstract syntax of patterns. The PAT_WEIGHT field contains the weight of the pattern, in a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.206 CLASS_SOURCE_PATTERN_AND

Class defined at file ‘warmelt-macro.melt’, line 713.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3ANDPAT_CONJCLASS_SOURCE_PATTERN_AND

class description: The internal CLASS_SOURCE_PATTERN_AND is for abstract syntax of AND patterns. Pattern syntax is ?(AND subpattern...). Field ANDPAT_CONJ gives the tuple of pattern conjuncts.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.207 CLASS_SOURCE_PATTERN_COMPOSITE

Class defined at file ‘warmelt-macro.melt’, line 816.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_OBJECT.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT
5SPAC_OPERATORCLASS_SOURCE_PATTERN_COMPOSITE
6SPAC_OPERBINDCLASS_SOURCE_PATTERN_COMPOSITE
7SPAC_INARGSCLASS_SOURCE_PATTERN_COMPOSITE
8SPAC_OUTARGSCLASS_SOURCE_PATTERN_COMPOSITE

3 sub-classes: CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_MATCHER.

class description: The internal CLASS_SOURCE_PATTERN_COMPOSITE is abstract syntax for composite patterns with matchers. The SPAC_OPERATOR field gives the pattern operator, the SPAC_OPERBIND is an optional operator binding. The SPAC_INARGS are the input sub-expressions. The SPAC_OUTARGS are the output sub-patterns.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.208 CLASS_SOURCE_PATTERN_CONSTANT

Class defined at file ‘warmelt-macro.melt’, line 752.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CONSTXCLASS_SOURCE_PATTERN_CONSTANT

class description: The internal CLASS_SOURCE_PATTERN_CONSTANT is for constant pattern abstract syntax. The field SPAT_CONSTX is the expression giving the constant.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.209 CLASS_SOURCE_PATTERN_CONSTRUCT

Class defined at file ‘warmelt-macro.melt’, line 761.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3CTPAT_SUBPACLASS_SOURCE_PATTERN_CONSTRUCT

2 sub-classes: CLASS_SOURCE_PATTERN_LIST, CLASS_SOURCE_PATTERN_TUPLE.

class description: The internal CLASS_SOURCE_PATTERN_CONSTRUCT is the superclass for constructive pattern abstract syntax. The field CTPAT_SUBPA is for sub-patterns abstract syntax.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.210 CLASS_SOURCE_PATTERN_C_MATCH

Class defined at file ‘warmelt-macro.melt’, line 839.

8 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_OBJECT CLASS_SOURCE_PATTERN_COMPOSITE CLASS_SOURCE_PATTERN_MATCHER.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT
5SPAC_OPERATORCLASS_SOURCE_PATTERN_COMPOSITE
6SPAC_OPERBINDCLASS_SOURCE_PATTERN_COMPOSITE
7SPAC_INARGSCLASS_SOURCE_PATTERN_COMPOSITE
8SPAC_OUTARGSCLASS_SOURCE_PATTERN_COMPOSITE

class description: The internal CLASS_SOURCE_PATTERN_C_MATCH is for abstract syntax of pattern with c-matchers.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.211 CLASS_SOURCE_PATTERN_FUN_MATCH

Class defined at file ‘warmelt-macro.melt’, line 845.

8 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_OBJECT CLASS_SOURCE_PATTERN_COMPOSITE CLASS_SOURCE_PATTERN_MATCHER.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT
5SPAC_OPERATORCLASS_SOURCE_PATTERN_COMPOSITE
6SPAC_OPERBINDCLASS_SOURCE_PATTERN_COMPOSITE
7SPAC_INARGSCLASS_SOURCE_PATTERN_COMPOSITE
8SPAC_OUTARGSCLASS_SOURCE_PATTERN_COMPOSITE

class description: The internal CLASS_SOURCE_PATTERN_FUN_MATCH is for abstract syntax of pattern with fun-matchers.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.212 CLASS_SOURCE_PATTERN_INSTANCE

Class defined at file ‘warmelt-macro.melt’, line 797.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_OBJECT.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT

class description: The internal CLASS_SOURCE_PATTERN_INSTANCE is for INSTANCE pattern abstract syntax. See also CLASS_SOURCE_PATTERN_OBJECT for field details.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.213 CLASS_SOURCE_PATTERN_JOKER_VARIABLE

Class defined at file ‘warmelt-macro.melt’, line 745.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_VARIABLE.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPATVAR_SYMBCLASS_SOURCE_PATTERN_VARIABLE
4SPATVAR_NBOCCCLASS_SOURCE_PATTERN_VARIABLE

class description: The internal CLASS_SOURCE_PATTERN_JOKER_VARIABLE is for joker pattern abstract syntax.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.214 CLASS_SOURCE_PATTERN_LIST

Class defined at file ‘warmelt-macro.melt’, line 777.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_CONSTRUCT.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3CTPAT_SUBPACLASS_SOURCE_PATTERN_CONSTRUCT

class description: The internal CLASS_SOURCE_PATTERN_LIST is for LIST pattern abstract syntax.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.215 CLASS_SOURCE_PATTERN_MATCHER

Class defined at file ‘warmelt-macro.melt’, line 833.

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_OBJECT CLASS_SOURCE_PATTERN_COMPOSITE.

9 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT
5SPAC_OPERATORCLASS_SOURCE_PATTERN_COMPOSITE
6SPAC_OPERBINDCLASS_SOURCE_PATTERN_COMPOSITE
7SPAC_INARGSCLASS_SOURCE_PATTERN_COMPOSITE
8SPAC_OUTARGSCLASS_SOURCE_PATTERN_COMPOSITE

2 sub-classes: CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH.

class description: The internal CLASS_SOURCE_PATTERN_MATCHER is for abstract syntax of pattern with any kind of matchers.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.216 CLASS_SOURCE_PATTERN_OBJECT

Class defined at file ‘warmelt-macro.melt’, line 785.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPAT_CLASSCLASS_SOURCE_PATTERN_OBJECT
4SPAT_FIELDSCLASS_SOURCE_PATTERN_OBJECT

5 sub-classes: CLASS_SOURCE_PATTERN_COMPOSITE, CLASS_SOURCE_PATTERN_C_MATCH, CLASS_SOURCE_PATTERN_FUN_MATCH, CLASS_SOURCE_PATTERN_INSTANCE, CLASS_SOURCE_PATTERN_MATCHER.

class description: The internal CLASS_SOURCE_PATTERN_OBJECT is for OBJECT pattern abstract syntax. SPAT_CLASS gives the class, and SPAT_FIELDS give the sequence of field patterns. See also CLASS_SOURCE_PATTERN_INSTANCE and CLASS_SOURCE_FIELD_PATTERN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.217 CLASS_SOURCE_PATTERN_OR

Class defined at file ‘warmelt-macro.melt’, line 704.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3ORPAT_DISJCLASS_SOURCE_PATTERN_OR

class description: The internal CLASS_SOURCE_PATTERN_OR is for abstract syntax of OR patterns. Pattern syntax is ?(OR subpattern...). Field ORPAT_DISJ gives the tuple of pattern disjuncts.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.218 CLASS_SOURCE_PATTERN_TUPLE

Class defined at file ‘warmelt-macro.melt’, line 770.

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN CLASS_SOURCE_PATTERN_CONSTRUCT.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3CTPAT_SUBPACLASS_SOURCE_PATTERN_CONSTRUCT

class description: The internal CLASS_SOURCE_PATTERN_TUPLE is for TUPLE pattern abstract syntax.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.219 CLASS_SOURCE_PATTERN_VARIABLE

Class defined at file ‘warmelt-macro.melt’, line 734.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3SPATVAR_SYMBCLASS_SOURCE_PATTERN_VARIABLE
4SPATVAR_NBOCCCLASS_SOURCE_PATTERN_VARIABLE

1 sub-classes: CLASS_SOURCE_PATTERN_JOKER_VARIABLE.

class description: The internal CLASS_SOURCE_PATTERN_VARIABLE is for pattern variable abstract syntax. The field SPATVAR_SYMB gives the variable symbol. The field SPATVAR_NBOCC is the boxed occurrence count.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.220 CLASS_SOURCE_PATTERN_WHEN

Class defined at file ‘warmelt-macro.melt’, line 722.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PATTERN.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2PAT_WEIGHTCLASS_SOURCE_PATTERN
3WHENPAT_SUBPATCLASS_SOURCE_PATTERN_WHEN
4WHENPAT_CONDCLASS_SOURCE_PATTERN_WHEN

class description: The internal CLASS_SOURCE_PATTERN_WHEN is for abstract syntax of tested patterns. Pattern syntax is ?(WHEN sub-pattern condition). Field WHENPAT_SUBPAT is the sub-pattern and WHENPAT_COND is the condition.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.221 CLASS_SOURCE_PRIMITIVE

Class defined at file ‘warmelt-macro.melt’, line 95.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR
3SPRIM_OPERCLASS_SOURCE_PRIMITIVE

class description: The internal CLASS_SOURCE_PRIMITIVE is for primitive invocation abstract syntax. SPRIM_OPER is the primitive operation, SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.222 CLASS_SOURCE_PROGN

Class defined at file ‘warmelt-macro.melt’, line 152.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SPROGN_BODYCLASS_SOURCE_PROGN

class description: The internal CLASS_SOURCE_PROGN is for PROGN expression abstract syntax. SPROGN_BODY is the body tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.223 CLASS_SOURCE_PUT_FIELDS

Class defined at file ‘warmelt-macro.melt’, line 456.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUPUT_OBJCLASS_SOURCE_PUT_FIELDS
3SUPUT_FIELDSCLASS_SOURCE_PUT_FIELDS

1 sub-classes: CLASS_SOURCE_UNSAFE_PUT_FIELDS.

class description: The internal CLASS_SOURCE_UNSAFE_PUT_FIELDS is the abstract syntax of PUT_FIELDS. SUPUT_OBJ is the object expression, SUPU_FIELDS is the sequence of CLASS_SOURCE_FIELDASSIGN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.224 CLASS_SOURCE_QUOTE

Class defined at file ‘warmelt-macro.melt’, line 204.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SQUOTEDCLASS_SOURCE_QUOTE

class description: The internal SCLASS_SOURCE_QUOTE is for QUOTE abstract syntax. SQUOTED is the quoted stuff.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.225 CLASS_SOURCE_RETURN

Class defined at file ‘warmelt-macro.melt’, line 160.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR

class description: The internal CLASS_SOURCE_RETURN is for RETURN expression abstract syntax. The tuple of returned stuff is SARGOP_ARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.226 CLASS_SOURCE_SETQ

Class defined at file ‘warmelt-macro.melt’, line 167.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SSTQ_VARCLASS_SOURCE_SETQ
3SSTQ_EXPRCLASS_SOURCE_SETQ

class description: The internal CLASS_SOURCE_SETQ is for SETQ expression abstract syntax. SSTQ_VAR is the assigned variable, SSTQ_EXPR is the expression.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.227 CLASS_SOURCE_TUPLE

Class defined at file ‘warmelt-macro.melt’, line 138.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ARGUMENTED_OPERATOR.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR

class description: The internal CLASS_SOURCE_TUPLE is for TUPLE expression abstract syntax. SARGOP_ARGS is the tuple of arguments.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.228 CLASS_SOURCE_UNSAFE_GET_FIELD

Class defined at file ‘warmelt-macro.melt’, line 447.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_GET_FIELD.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUGET_OBJCLASS_SOURCE_GET_FIELD
3SUGET_FIELDCLASS_SOURCE_GET_FIELD

class description: The internal CLASS_SOURCE_UNSAFE_GET_FIELD is the abstract syntax of UNSAFE_GET_FIELD. See CLASS_SOURCE_GET_FIELD.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.229 CLASS_SOURCE_UNSAFE_PUT_FIELDS

Class defined at file ‘warmelt-macro.melt’, line 466.

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_PUT_FIELDS.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUPUT_OBJCLASS_SOURCE_PUT_FIELDS
3SUPUT_FIELDSCLASS_SOURCE_PUT_FIELDS

class description: The internal CLASS_SOURCE_UNSAFE_PUT_FIELDS is the abstract syntax of UNSAFE_PUT_FIELDS. See CLASS_SOURCE_PUT_FIELDS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.230 CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG

Class defined at file ‘warmelt-macro.melt’, line 194.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUSEPACKAGE_PKGTUPLECLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG

class description: The internal CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG is for USE_PACKAGE_FROM_PKG_CONFIG abstract syntax. SUSEPACKAGE_PKGTUPLE gives the tuple of pkg-config package string names.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.231 CLASS_SYMBOL

Class defined at file ‘warmelt-first.melt’, line 254.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SYMB_DATACLASS_SYMBOL

2 sub-classes: CLASS_CLONED_SYMBOL, CLASS_KEYWORD.

class description: The CLASS_SYMBOL is the class of symbols. The SYMB_DATA is a field for some additional data. The reader may create instances of CLASS_SYMBOL when encoutering new symbols. Symbols are interned inside the INITIAL_SYSTEM_DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.232 CLASS_SYSTEM_DATA

Class defined at file ‘warmelt-first.melt’, line 366.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

44 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SYSDATA_MODE_DICTCLASS_SYSTEM_DATA
3SYSDATA_CONT_FRESH_ENVCLASS_SYSTEM_DATA
4SYSDATA_VALUE_EXPORTERCLASS_SYSTEM_DATA
5SYSDATA_MACRO_EXPORTERCLASS_SYSTEM_DATA
6SYSDATA_SYMBOLDICTCLASS_SYSTEM_DATA
7SYSDATA_KEYWDICTCLASS_SYSTEM_DATA
8SYSDATA_ADDSYMBOLCLASS_SYSTEM_DATA
9SYSDATA_ADDKEYWCLASS_SYSTEM_DATA
10SYSDATA_INTERNSYMBOLCLASS_SYSTEM_DATA
11SYSDATA_INTERNKEYWCLASS_SYSTEM_DATA
12SYSDATA_VALUE_IMPORTERCLASS_SYSTEM_DATA
13SYSDATA_PASS_DICTCLASS_SYSTEM_DATA
14SYSDATA_EXIT_FINALIZERCLASS_SYSTEM_DATA
15SYSDATA_MELTATTR_DEFINERCLASS_SYSTEM_DATA
16SYSDATA_PATMACRO_EXPORTERCLASS_SYSTEM_DATA
17SYSDATA_DEBUGMSGCLASS_SYSTEM_DATA
18SYSDATA_STDOUTCLASS_SYSTEM_DATA
19SYSDATA_STDERRCLASS_SYSTEM_DATA
20SYSDATA_DUMPFILECLASS_SYSTEM_DATA
21SYSDATA_PRE_GENERICIZECLASS_SYSTEM_DATA
22SYSDATA_UNIT_STARTERCLASS_SYSTEM_DATA
23SYSDATA_UNIT_FINISHERCLASS_SYSTEM_DATA
24SYSDATA_OPTION_SETCLASS_SYSTEM_DATA
25SYSDATA_PASSEXEC_HOOKCLASS_SYSTEM_DATA
26SYSDATA_MELTPASS_AFTER_HOOKCLASS_SYSTEM_DATA
27SYSDATA_MELTPRAGMASCLASS_SYSTEM_DATA
28SYSDATA_FINISHTYPE_HOOKCLASS_SYSTEM_DATA
29SYSDATA_FINISHDECL_HOOKCLASS_SYSTEM_DATA
30SYSDATA_ALL_PASSES_START_HOOKCLASS_SYSTEM_DATA
31SYSDATA_ALL_PASSES_END_HOOKCLASS_SYSTEM_DATA
32SYSDATA_ALL_IPA_PASSES_START_HOOKCLASS_SYSTEM_DATA
33SYSDATA_ALL_IPA_PASSES_END_HOOKCLASS_SYSTEM_DATA
34SYSDATA_EARLY_GIMPLE_PASSES_START_HOOKCLASS_SYSTEM_DATA
35SYSDATA_EARLY_GIMPLE_PASSES_END_HOOKCLASS_SYSTEM_DATA
36SYSDATA_INCHANNEL_DATACLASS_SYSTEM_DATA
37SYSDATA_ALARM_HOOKCLASS_SYSTEM_DATA
38SYSDATA_CHILD_HOOKCLASS_SYSTEM_DATA
39SYSDATA_SRC_LOC_FILE_DICTCLASS_SYSTEM_DATA
40SYSDATA___SPARE1CLASS_SYSTEM_DATA
41SYSDATA___SPARE2CLASS_SYSTEM_DATA
42SYSDATA___SPARE3CLASS_SYSTEM_DATA
43SYSDATA___SPARE4CLASS_SYSTEM_DATA

class description: The CLASS_SYSTEM_DATA has a singleton instance, the INITIAL_SYSTEM_DATA. It contains lots of fields, starting by SYSDATA_, for various system facilities. It is very magical, and should be kept in sync with the MELT runtime. Only for gurus! So don’t instanciate this class!


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.233 CLASS_VALUE_BINDING

Class defined at file ‘warmelt-first.melt’, line 494.

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_EXPORTED_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1VBIND_VALUECLASS_VALUE_BINDING

class description: The CLASS_PATMACRO_BINDING is the class of exported value bindings. See The EXPORT_VALUES macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.234 CLASS_VALUE_DESCRIPTOR

Class defined at file ‘warmelt-base.melt’, line 2534.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

11 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2VALDESC_OBJMAGICCLASS_VALUE_DESCRIPTOR
3VALDESC_STRUCTCLASS_VALUE_DESCRIPTOR
4VALDESC_UNIONMEMCLASS_VALUE_DESCRIPTOR
5VALDESC_GTYCLASS_VALUE_DESCRIPTOR
6VALDESC_MEMBCHUNKCLASS_VALUE_DESCRIPTOR
7VALDESC_DECLCHUNKCLASS_VALUE_DESCRIPTOR
8VALDESC_COPYCHUNKCLASS_VALUE_DESCRIPTOR
9VALDESC_FORWCHUNKCLASS_VALUE_DESCRIPTOR
10VALDESC_CLONECHUNKCLASS_VALUE_DESCRIPTOR

1 sub-classes: CLASS_VARISIZED_VALUE_DESCRIPTOR.

class description: The CLASS_VALUE_DESCRIPTOR describes MELT values which are not ctype renated. VALDESC_OBJMAGIC is the symbol MELTOBMAG_* of its magic number. VALDESC_STRUCT is the GTY-ed struct name. VALDESC_UNIONMEM is the union member name inside union melt_un. VALDESC_MEMBCHUNK is the code chunk of the structure members after the discriminant. VALDESC_DECLCHUNK is the code chunk for declarations, e.g. macros, outside of the GTY-ed structure. VALDESC_GTY is the optional GTY argument. VALDESC_COPYCHUNK is the code chunk copying src to an allocated dst. VALDESC_FORWCHUNK is the code chunk formarding internal pointers. VALDESC_CLONECHUNK is the code chunk to clone src, default to structure copy if :TRUE, used in the CLONE_WITH_DISCRIMINANT primitive.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.3.235 CLASS_VARISIZED_VALUE_DESCRIPTOR

Class defined at file ‘warmelt-base.melt’, line 2562.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_VALUE_DESCRIPTOR.

11 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2VALDESC_OBJMAGICCLASS_VALUE_DESCRIPTOR
3VALDESC_STRUCTCLASS_VALUE_DESCRIPTOR
4VALDESC_UNIONMEMCLASS_VALUE_DESCRIPTOR
5VALDESC_GTYCLASS_VALUE_DESCRIPTOR
6VALDESC_MEMBCHUNKCLASS_VALUE_DESCRIPTOR
7VALDESC_DECLCHUNKCLASS_VALUE_DESCRIPTOR
8VALDESC_COPYCHUNKCLASS_VALUE_DESCRIPTOR
9VALDESC_FORWCHUNKCLASS_VALUE_DESCRIPTOR
10VALDESC_CLONECHUNKCLASS_VALUE_DESCRIPTOR

class description: The CLASS_VARISIZED_VALUE_DESCRIPTOR describes variable sized MELT values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4 MELT primitives

There are 445 primitives.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.1 !=

Primitive defined at file ‘warmelt-first.melt’, line 1043.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Test that values A and B are not identical.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.2 !=I

Primitive defined at file ‘warmelt-base.melt’, line 152.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A is unequal to B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.3 !=IV

Primitive defined at file ‘warmelt-base.melt’, line 301.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for numeric inequality. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.4 !=IVI

Primitive defined at file ‘warmelt-base.melt’, line 345.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for numeric inequality. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.5 !=S

Primitive defined at file ‘warmelt-first.melt’, line 1221.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that S1 and S2 are not both string equal values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.6 %I

Primitive defined at file ‘warmelt-first.melt’, line 1118.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary modulus of A and B, robust to zero-divide.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.7 %IRAW

Primitive defined at file ‘warmelt-first.melt’, line 1121.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer raw modulus of A and B, crash on zero-divide.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.8 %IVI

Primitive defined at file ‘warmelt-base.melt’, line 268.

result type: VALUE

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: modulus boxed integer A by constant raw long LB. Return null if A is not a boxed integer or LB is zero.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.9 *I

Primitive defined at file ‘warmelt-base.melt’, line 169.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary product of A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.10 *IVI

Primitive defined at file ‘warmelt-base.melt’, line 250.

result type: VALUE

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: multiply boxed integer A by constant raw long LB. Return null if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.11 +I

Primitive defined at file ‘warmelt-first.melt’, line 1113.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary addition of A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.12 +IVI

Primitive defined at file ‘warmelt-base.melt’, line 231.

result type: VALUE

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Add boxed integer A to constant raw long LB. Return null if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.13 -I

Primitive defined at file ‘warmelt-base.melt’, line 166.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary substraction of A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.14 -IVI

Primitive defined at file ‘warmelt-base.melt’, line 241.

result type: VALUE

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: substract from boxed integer A the constant raw long LB. Return null if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.15 /I

Primitive defined at file ‘warmelt-first.melt’, line 1116.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary division of A and B, robust to zero-divide.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.16 /IRAW

Primitive defined at file ‘warmelt-first.melt’, line 1120.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer raw division of A and B, crash on zero-divide.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.17 /IVI

Primitive defined at file ‘warmelt-base.melt’, line 259.

result type: VALUE

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: divide boxed integer A by constant raw long LB. Return null if A is not a boxed integer or LB is zero.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.18 <=I

Primitive defined at file ‘warmelt-base.melt’, line 145.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A less or equal to B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.19 <=IV

Primitive defined at file ‘warmelt-base.melt’, line 285.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for less or equal. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.20 <=IVI

Primitive defined at file ‘warmelt-base.melt’, line 329.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for less or equal. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.21 <I

Primitive defined at file ‘warmelt-first.melt’, line 1106.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A less than B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.22 <IV

Primitive defined at file ‘warmelt-base.melt’, line 277.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for less than. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.23 <IVI

Primitive defined at file ‘warmelt-base.melt’, line 325.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for less than. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.24 ==

Primitive defined at file ‘warmelt-first.melt’, line 1040.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Test identity of values A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.25 ==BB

Primitive defined at file ‘xtramelt-ana-base.melt’, line 308.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBB1
1BASIC_BLOCKBB2

primitive description: Identity [i.e. pointer equality] of raw basic_blocks.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.26 ==E

Primitive defined at file ‘xtramelt-ana-base.melt’, line 71.

result type: LONG

primitive formals:

indextypename
0EDGEE1
1EDGEE2

primitive description: Test physical equality, that is identity, of edge stuff E1 and E2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.27 ==G

Primitive defined at file ‘xtramelt-ana-gimple.melt’, line 50.

result type: LONG

primitive formals:

indextypename
0GIMPLEG1
1GIMPLEG2

primitive description: Equality of gimples G1 & G2


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.28 ==I

Primitive defined at file ‘warmelt-base.melt’, line 148.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A is equal to B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.29 ==S

Primitive defined at file ‘warmelt-first.melt’, line 1218.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that S1 and S2 are both string values and are equal.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.30 ==T

Primitive defined at file ‘xtramelt-ana-tree.melt’, line 72.

result type: LONG

primitive formals:

indextypename
0TREET1
1TREET2

primitive description: ==T safely compare tree T1 and T2 for identity


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.31 =IV

Primitive defined at file ‘warmelt-base.melt’, line 293.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for numeric equality. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.32 =IVI

Primitive defined at file ‘warmelt-base.melt’, line 341.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for numeric equality. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.33 >=I

Primitive defined at file ‘warmelt-first.melt’, line 1110.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A greater or equal to B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.34 >=IV

Primitive defined at file ‘warmelt-base.melt’, line 317.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for greater or equal. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.35 >=IVI

Primitive defined at file ‘warmelt-base.melt’, line 337.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for greater or equal. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.36 >I

Primitive defined at file ‘warmelt-first.melt’, line 1108.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A greater than B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.37 >IV

Primitive defined at file ‘warmelt-base.melt’, line 309.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Boxed integer compare of A and B for greater than. Return 0 for non-boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.38 >IVI

Primitive defined at file ‘warmelt-base.melt’, line 333.

result type: LONG

primitive formals:

indextypename
0VALUEA
1LONGLB

primitive description: Compare boxed integer A with constant raw long LB for greater than. Return 0 if A is not a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.39 ADD2OUT_CCOMCONST

Primitive defined at file ‘warmelt-base.melt’, line 1261.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1CSTRINGCSTR

primitive description: Add to OUT the constant C-comment encoded raw CSTR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.40 ADD2OUT_CCOMSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1255.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEASBUF

primitive description: Add to OUT the C-comment encoded stringbuffer ASBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.41 ADD2OUT_CCOMSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1249.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR

primitive description: Add to output OUT the C-comment encoded string value STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.42 ADD2OUT_CENCONST

Primitive defined at file ‘warmelt-base.melt’, line 1240.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1CSTRINGCSTR

primitive description: Add into stringbuffer SBUF the C-encoded constant string CSTR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.43 ADD2OUT_CENCSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1244.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEASBUF

primitive description: Add to output OUT the C-encoded stringbuffer ASBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.44 ADD2OUT_CENCSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1227.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR

primitive description: Add to output OUT the C-encoded string value STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.45 ADD2OUT_CENCSUBSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1233.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR
2LONGOFF
3LONGSLEN

primitive description: Add to output OUT the C-encoded substring value STR at offset OFF of length SLEN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.46 ADD2OUT_CIDENT

Primitive defined at file ‘warmelt-base.melt’, line 1267.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR

primitive description: Add to OUT the MELT string STR encocded as a C identifier, so with every non-alnum character replaced with an underscore.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.47 ADD2OUT_CIDENTPREFIX

Primitive defined at file ‘warmelt-base.melt’, line 1275.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR
2LONGPREFLEN

primitive description: Add to OUT the prefix of a string encoded as a C identifier, limited by a small length PREFLEN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.48 ADD2OUT_INDENT

Primitive defined at file ‘warmelt-base.melt’, line 1208.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGDEPTH

primitive description: Add to output OUT the indentation DEPTH or a space.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.49 ADD2OUT_INDENTNL

Primitive defined at file ‘warmelt-base.melt’, line 1215.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGDEPTH

primitive description: Add to output OUT the indented newline of given DEPTH.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.50 ADD2OUT_LONGDEC

Primitive defined at file ‘warmelt-base.melt’, line 1283.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGNUM

primitive description: Add to OUT the number NUM in decimal.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.51 ADD2OUT_LONGHEX

Primitive defined at file ‘warmelt-base.melt’, line 1288.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGNUM

primitive description: Add to OUT the number NUM in hex.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.52 ADD2OUT_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 1193.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEMIXL

primitive description: Add to output OUT the mixed location MIXL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.53 ADD2OUT_ROUTINEDESCR

Primitive defined at file ‘warmelt-base.melt’, line 1293.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEROUT

primitive description: Add to OUT the routine desscriptor ROUT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.54 ADD2OUT_SBUF

Primitive defined at file ‘warmelt-base.melt’, line 1222.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEASBUF

primitive description: Add to output OUT the stringbuffer ASBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.55 ADD2OUT_STRCONST

Primitive defined at file ‘warmelt-base.melt’, line 1184.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1CSTRINGSTR

primitive description: Add to output OUT the cstring STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.56 ADD2OUT_STRING

Primitive defined at file ‘warmelt-base.melt’, line 1188.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR

primitive description: Add to output OUT the string value STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.57 ADD2SBUF_CCOMCONST

Primitive defined at file ‘warmelt-base.melt’, line 1123.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1CSTRINGCSTR

primitive description: Add into stringbuffer SBUF the constant string CSTR with C-comment encoding so no */.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.58 ADD2SBUF_CCOMSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1117.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEASBUF

primitive description: Add into stringbuffer SBUF the content of stringbuffer ASBUF with C-comment encoding, i.e. avoiding */.