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

1. MELT Programming Reference

This documentation is generated on July 27, 2015 by MELT 1.2.0 [melt-branch_revision_226151].


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

1.1 MELT macros

There are 82 documented macros.


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

1.1.1 *

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

macro description: The product * operator is variadic, and understood as successive applications of *i primitives.


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

1.1.2 +

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

macro description: The addition + operator is variadic, and understood as successive applications of +i primitives.


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

1.1.3 -

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

macro description: The substraction - operator is variadic, and understood as successive applications of -i primitives.


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

1.1.4 /

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

macro description: The division / operator is variadic, and understood as successive applications of /i primitives.


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

1.1.5 AGAIN

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

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.6 ASSERT_MSG

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

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


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

1.1.7 AT_MACRO_EXPANSION

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

macro description: The AT_MACRO_EXPANSION macro will evaluate its body, e.g. containing defun or definstance at macro-expansion time. In particular, functions used inside a DEFMACRO should be defined inside AT_MACRO_EXPANSION and are not available in ordinary code.


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

1.1.8 BACKQUOTE

Macro defined at file ‘warmelt-moremacro.melt’, line 426.

macro description: The BACKQUOTE macro is expanding into an s-expr, except for COMMA It is often noted with a prefix backquote-character `....


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

1.1.9 BOX

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

macro description: The BOX syntax is boxing stuff into mutable values. So (box 2) gives the same as (make_integerbox discr_integer 2) and if g is some gimple stuff, (box g) gives the same as (make_gimple discr_gimple g) etc... If the argument is some value, it makes some reference, instance of CLASS_REFERENCE, from that value.


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

1.1.10 CHEADER

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

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


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

1.1.11 CIMPLEMENT

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

macro description: The CIMPLEMENT syntax inserts C code in the implementation part of the generated code.


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

1.1.12 CODE_CHUNK

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

macro description: The CODE_CHUNK macro is for low-level C code chunks. The syntax is (CODE_CHUNK state-symbol chunk...) where chunk-s may be macro-strings or nested s-expressions. It generates a C block. Nested expressions should be :void and are expanded at place of occurence, as blocks. Since it does not make any type verification, it should be used with parcimony. See DEFPRIMITIVE and EXPR_CHUNK etc.


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

1.1.13 COMMA

Macro defined at file ‘warmelt-moremacro.melt’, line 444.

macro description: The COMMA macro is related to BACKQUTE. COMMA It is often noted with a prefix comma-character ,....


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

1.1.14 COMMENT

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

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.15 COMPILE_ERROR

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

macro description: The COMPILE_ERROR syntax issues an error, inspired by GCC #error. Syntax is (COMPILE_ERROR <string> [<expression>]). May be useful in macros or with GCCIF.


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

1.1.16 COMPILE_WARNING

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

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.17 COND

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

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.18 CONSTANT_BOX

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

macro description: The CONSTANT_BOX syntax is boxing stuff into constant values. So (constant_box 2) gives the same as (make_integerbox discr_constant_integer 2) and if g is some gimple stuff, (box g) gives the same as (make_gimple discr_constant_gimple g) etc...


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

1.1.19 CONTENT

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

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


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

1.1.20 CPPIF

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

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.21 CURRENT_MODULE_ENVIRONMENT_CONTAINER

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

macro description: (CURRENT_MODULE_ENVIRONMENT_CONTAINER) is obsolete. Use CURRENT_MODULE_ENVIRONMENT_REFERENCE.


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

1.1.22 CURRENT_MODULE_ENVIRONMENT_REFERENCE

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

macro description: (CURRENT_MODULE_ENVIRONMENT_REFERENCE) returns a container, i.e. a reference thru CLASS_REFERENCE, for the current environment. See also PARENT_MODULE_ENVIRONMENT and CLASS_ENVIRONMENT. (CURRENT_MODULE_ENVIRONMENT_REFERENCE) cannot be used inside hooks. Was previously called inccorrectly CURRENT_MODULE_ENVIRONMENT_CONTAINER.


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

1.1.23 DEBUG

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

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 something similar to (cppif MELT_HAVE_DEBUG (if (melt_need_dbg 0) (melt_debug_fun () count filename lineno ...)))


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

1.1.24 DEFCITERATOR

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

macro description: The DEFCITERATOR macro defines a module-global 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.25 DEFCLASS

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

macro description: The DEFCLASS macro defines a module-global 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.26 DEFCMATCHER

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

macro description: The DEFCMATCHER macro defines a module-global 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.27 DEFHOOK

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

macro description: The DEFHOOK macro defines a module-global hook, that is arbitrary C/C++ routines coded in MELT.. Syntax is (DEFHOOK hook-name input-formals output-formals ctype [:var hook-var] [:predef hook-predef] [:doc documentation] body...). This binds hook-name to a generated hook value of DISCR_HOOK discriminant, containing a pointer to the generated C/C++ routine and closed values, like functions and instances mentionned inside the body, etc... This generates an extern "C" C/C++ routine named melthook_hook-name, return a result of given ctype, and with formal arguments: the hook value itself, the input formals, the pointers to output formals (which can be modified in the body with SETQ). If hook-var is given with a :var annotation, it should be a module variable defined with DEFVAR, and that module variable is assigned to the hook value. Then, a C/C++ routine named melthookproc_hook-name is emitted, taking only the input and output formals, and passing that module variable as the hook. And similarily for predefined hooks with their hook-predef.


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

1.1.28 DEFINE

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

macro description: The DEFINE macro defines a module-global 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.29 DEFINE_GCC_BINARY_TREE

Macro defined at file ‘libmelt-ana-tree.melt’, line 2988.

macro description: The macro DEFINE_GCC_BINARY_TREE takes one or many treecode names and expands to exported cmatchers.


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

1.1.30 DEFINSTANCE

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

macro description: The DEFINSTANCE syntax defines a module-global 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.31 DEFMACRO

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

macro description: The DEFMACRO macro defines a module-global macro. Syntax is (DEFMACRO funame formals [:doc documentation] body...). At most four formals are permitted of ctype :value, for the s-expression invoking the macro, the environment at macro-expansion time, the current macro-expander closure and at last the module context.


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

1.1.32 DEFPRIMITIVE

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

macro description: The DEFPRIMITIVE macro defines a module-global new primitive operation 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.33 DEFSELECTOR

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

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


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

1.1.34 DEFUN

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

macro description: The DEFUN macro defines a module-global 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.35 DEFUNMATCHER

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

macro description: The DEFUNMATCHER syntax defines a module-global 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.36 DEFVAR

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

macro description: The DEFVAR macro defines a module-global variable, initialized to the nil value. Syntax is (DEFVAR varame [:doc documentation]).


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

1.1.37 DEREF

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

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.38 DIAGNOSTIC_ARGS_MACRO

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

macro description: Macro DIAGNOSTIC_ARGS_MACRO to be invoked with two variables nbargs and vect to parse variadic arguments in diagnostic functions like ERROR or WARNING or INFORM.


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

1.1.39 EACH_COMPONENT_IN_LIST

Macro defined at file ‘warmelt-moremacro.melt’, line 44.

macro description: Macro EACH_COMPONENT_IN_LIST to be invoked with a list-giving expr and a local variable compvar expands into (foreach_pair_component_in_list (expr) (curpairvar compvar) body...) where curpairvar is fresh.


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

1.1.40 EXCLAIM

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

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.41 EXIT

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

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.42 EXPORT_CLASS

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

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


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

1.1.43 EXPORT_MACRO

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

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


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

1.1.44 EXPORT_PATMACRO

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

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


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

1.1.45 EXPORT_SYNONYM

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

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


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

1.1.46 EXPORT_VALUES

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

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.47 EXPR_CHUNK

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

macro description: The EXPR_CHUNK macro is for low-level C expression chunks, e.g. anonymous primitive-like expressions. The syntax is (EXPR_CHUNK state-symbol ctype chunk...) where chunk-s may be macro-strings or sub-expressions. It generates a C expressions, with all the sub-expressions strictly normalized before the expansion of the expr_chunk. Since it does not make any type verification, it should be usually avoided. See DEFPRIMITIVE and EXPR_CHUNK etc.


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

1.1.48 FETCH_PREDEFINED

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

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.49 FOREVER

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

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.50 GCCIF

Macro defined at file ‘warmelt-moremacro.melt’, line 215.

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 constant string such as "4.8" for gcc-4.8 or a list of such strings.


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

1.1.51 GET_FIELD

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

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.52 IF

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

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.53 LAMBDA

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

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.54 LET

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

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 or :auto (which is the default), followed by a local variable name, followed by a single expression. With an :auto type annotation, the bound variable takes the type provided by the binding 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. If the first element of the <binding> list is exactly :expand like in (LET (:expand <expanded-binding>...) <body> ...). the <expanded-binding> is macro-expanded, but then :macro bindings are not allowed.


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

1.1.55 LETREC

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

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. Note that MELT LETREC is similar to Scheme’s LETREC.


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

1.1.56 LOAD

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

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


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

1.1.57 MATCH

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

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.58 MATCHALT

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

macro description: The temporary MATCHALT syntax is for pattern-matching expressions. It is sama as MATCH but uses an alternative implementation. Don’t use it (except for test cases), it will disappear when that better implemenation will be fully debugged.


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

1.1.59 MODULE_IS_GPL_COMPATIBLE

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

macro description: The MODULE_IS_GPL_COMPATIBLE syntax reminds that MELT modules should be GPL compatible. Argument is a comment-like string or symbol. This has a role analogue to the plugin_is_GPL_compatible symbol in GCC plugins.


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

1.1.60 MULTICALL

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

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-message-send> <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.61 PARENT_MODULE_ENVIRONMENT

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

macro description: (PARENT_MODULE_ENVIRONMENT) gives the parent environnment of this module. See also CLASS_ENVIRONMENT and CURRENT_MODULE_ENVIRONMENT_REFERENCE. (PARENT_MODULE_ENVIRONMENT) cannot be used inside hooks.


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

1.1.62 PROGN

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

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.63 PUT_FIELDS

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

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.64 QUOTE

Macro defined at file ‘warmelt-moremacro.melt’, line 379.

macro description: The QUOTE syntax (usually noted with a prefix quote-character ') is for quotations. A quoted literal reifies a value, so '2 is a value of DISCR_CONSTANT_INTEGER. A quoted s-expression invokes MELT_MAKE_SEXPR using HOOK_MELT_MAKE_LOCATION.


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

1.1.65 REGISTER_GCC_ATTRIBUTE

Macro defined at file ‘warmelt-hooks.melt’, line 2392.

macro description: The variadic macro REGISTER_GCC_ATTRIBUTE is registering a GCC attribute ATTR of CLASS_GCC_ATTRIBUTE by expanding to a call to MELT_REGISTER_GCC_ATTRIBUTE_AT internal function. Memory used by the attribute is never freed. After it can occur variadically equivalents of struct attribute_spec fields: :MIN_LENGTH minimal-length (default 0). :MAX_LENGTH maximal-length (default -1). :DECL_REQUIRED decl-required-flag. :TYPE_REQUIRED type-required-flag. :FUNCTION_TYPE_REQUIRED function-type-required-flag :AFFECTS_TYPE_IDENTITY affects-type-identity-flag. Notice that checking of variadic arguments happen at run-time.


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

1.1.66 RETURN

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

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. Hooks cannot return secondary results.


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

1.1.67 SETQ

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

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.68 SET_REF

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

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.69 SKIP_NIL

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

macro description: The SKIP_NIL macro is macro-expanding its arguments, and skipping those which are macro-expanded to nil. It might be useful with LOAD to avoid useless expressions from the loaded file.


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

1.1.70 STORE_PREDEFINED

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

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


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

1.1.71 THIS_FILE

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

macro description: THIS_FILE, inspired by the __FILE__ macro of C or C++, is a macro expanding to the string naming the source file of its occurrence, or NIL if no source location is available.


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

1.1.72 THIS_LINE

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

macro description: THIS_LINE, inspired by the __LINE__ macro of C or C++, is a macro expanding to the line number in the source file of its occurrence, or NIL if no line.


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

1.1.73 UNBOX

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

macro description: The UNBOX syntax is unboxing some value into some raw stuff. It is given a ctype and an expression: (UNBOX ctype expr).


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

1.1.74 UNLESS

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

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.75 UNSAFE_GET_FIELD

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

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.76 UNSAFE_PUT_FIELDS

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

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.77 UPDATE_CURRENT_MODULE_ENVIRONMENT_REFERENCE

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

macro description: (UPDATE_CURRENT_MODULE_ENVIRONMENT_REFERENCE) is a guru macro to update the current module environment reference. You probably should never use it, but it is necessary inside MELT. See CURRENT_MODULE_ENVIRONMENT_REFERENCE. Was previously called incorrectly UPDATE_CURRENT_MODULE_ENVIRONMENT_CONTAINER.


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

1.1.78 USE-PACKAGE-FROM-PKG-CONFIG

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

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.79 USE_PACKAGE_FROM_PKG_CONFIG

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

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.80 VARIADIC

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

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.81 WHEN

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

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.1.82 WITH_CLONED_SYMB

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

macro description: The WITH_CLONED_SYMB syntax sugar is for easily cloning symbols, notably useful in macros. Syntax is (WITH_CLONED_SYMB (<symb>...) <body>...) same as (LET ( (<symb> (CLONE_SYMBOL (QUOTE <symb>))) ...) <body>...) etc...


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

1.2 MELT pattern macros

There are 12 documented pattern-macros.


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

1.2.1 AND

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

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-moremacro.melt’, line 240.

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


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

1.2.3 GIMPLE_CALL_ARGS

Pattern macro defined at file ‘libmelt-ana-gimple.melt’, line 2120.

pattern macro description: The GIMPLE_CALL_ARGS is for patterns or expressions for GIMPLE_CALL. Usage is ?(GIMPLE_CALL_ARGS <lhs> <fndecl> <args>...).


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

1.2.4 GIMPLE_CALL_MORE_ARGS

Pattern macro defined at file ‘libmelt-ana-gimple.melt’, line 2424.

pattern macro description: The GIMPLE_CALL_MORE_ARGS is for patterns but not expressions for GIMPLE_CALL, with at least the given arguments and possibly some more. Usage is ?(GIMPLE_CALL_MORE_ARGS <lhs> <fndecl> <args>...).


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

1.2.5 INSTANCE

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

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.6 LIST

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

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.7 OBJECT

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

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.8 OR

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

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.9 REFERENCE

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

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.10 TREE_CALL_EXPR

Pattern macro defined at file ‘libmelt-ana-tree.melt’, line 2697.

pattern macro description: The TREE_CALL_EXPR is for patterns or expressions for treecode CALL_EXPR. Usage is (TREE_CALL_EXPR <called-fun> <chaining> <call-arguments> ...), where everything is a tree


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

1.2.11 TREE_CALL_MORE_EXPR

Pattern macro defined at file ‘libmelt-ana-tree.melt’, line 2893.

pattern macro description: The TREE_CALL_MORE_EXPR is for patterns or expressions for treecode CALL_EXPR with more arguments than given. Usage is (TREE_CALL_MORE_EXPR <called-fun> <chaining> <call-arguments> ...), where everything is a tree. So ?(tree_call_more_expr ?tfun ?tchain ?ta0 ?ta1) will match call trees with two or more arguments. See also FOREACH_ARGUMENT_IN_CALL_EXPR_TREE, ARITY_TREE_CALL_EXPR and NTH_ARG_TREE_CALL_EXPR


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

1.2.12 TUPLE

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

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_NORMAL_OR_VARIABLE, CLASS_NREP, CLASS_PATTERN_CONTEXT, CLASS_PATTERN_EXPANSION_CONTEXT, CLASS_PROPED, CLASS_REFERENCE

2:

CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_ANY_MODULE_CONTEXT, CLASS_CHILD_PROCESS_HANDLER, CLASS_DEBUG_OUTPUT_INFORMATION, CLASS_DESCRIBED_ENVIRONMENT, CLASS_EXPORTED_BINDING, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_INITIAL_GENERATION_CONTEXT, CLASS_INPUT_CHANNEL_HANDLER, CLASS_JSON_PARSER, CLASS_LABEL_BINDING, CLASS_LET_BINDING, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MATCHED_BINDING, CLASS_MATCHED_DATA, CLASS_MATCH_CASE, CLASS_MATCH_GRAPHIC, CLASS_NAMED, CLASS_NORMALIZATION_CONTEXT, CLASS_NORMAL_CONSTRUCTOR_BINDING, CLASS_NORMAL_MAGIC_BINDING, CLASS_NREP_ANYPROC, CLASS_NREP_EXPRESSION, CLASS_NREP_QUASIDATA, CLASS_NREP_SIMPLE

3:

CLASS_ANY_MATCHER, CLASS_CITERATOR, CLASS_CITERATOR_BINDING, CLASS_CLASS_BINDING, CLASS_CMATCHER_BINDING, CLASS_DEFINED_VALUE_BINDING, CLASS_DELAYED_QUEUE, CLASS_DIAGNOSTIC_STATE, CLASS_DISCRIMINANT, CLASS_EXTENSION_GENERATION_CONTEXT, CLASS_FIELD, CLASS_FIELD_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER_BINDING, CLASS_GCC_ATTRIBUTE, CLASS_GCC_PASS, CLASS_GCC_PRAGMA, CLASS_HOOK_BINDING, CLASS_HOOK_DESCRIPTOR, CLASS_INSTANCE_BINDING, CLASS_LETREC_BINDING, CLASS_MACRO_BINDING, CLASS_MAKEDOC_MODULE_CONTEXT, 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_CLOSPROC, 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_TYPED_EXPRESSION, CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER, CLASS_PRIMITIVE, CLASS_PRIMITIVE_BINDING, CLASS_QUASI_CTYPE, CLASS_RAW_INPUT_CHANNEL_HANDLER, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT, CLASS_SELECTOR, CLASS_SELECTOR_BINDING, CLASS_SEXPR, CLASS_SOURCE, CLASS_SYMBOL, CLASS_SYSTEM_DATA, CLASS_VALUE_BINDING, CLASS_VALUE_DESCRIPTOR, CLASS_VARIABLE_BINDING

4:

CLASS_CLASS, CLASS_CLONED_SYMBOL, CLASS_CMATCHER, CLASS_CTYPE, CLASS_DEFINED_MACRO_BINDING, CLASS_FIRST_MODULE_CONTEXT, CLASS_FUNMATCHER, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_EXPANDED_PRAGMA, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PLAIN_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_KEYWORD, CLASS_MATCH_STEP_THEN, CLASS_NORMAL_MODULE_VARIABLE_BINDING, CLASS_NREP_CHUNK, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_HOOKPROC, CLASS_NREP_IFCOMMON, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_LETREC, CLASS_NREP_MATCHALT, CLASS_NREP_MATCH_DATA_CLEAR, CLASS_NREP_MATCH_DATA_FINALIZER, CLASS_NREP_MATCH_DATA_INITIALIZER, CLASS_NREP_MATCH_LABEL_END, CLASS_NREP_ROUTPROC, CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS, CLASS_PATMACRO_BINDING, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE_ANY_LET_BINDING, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_CODE_STRING, CLASS_SOURCE_COMMENT, CLASS_SOURCE_COMPILE_DIAGNOSTIC, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_ANY_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_MACRO_INSTALLATION, 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_QUASI_BOX, CLASS_SOURCE_QUOTE, CLASS_SOURCE_SETQ, CLASS_SOURCE_UNBOX, CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG, CLASS_VARISIZED_VALUE_DESCRIPTOR

5:

CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN, 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_DEFUNROUTPROC, CLASS_NREP_HOOK_CALL, CLASS_NREP_IF, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFVARIADIC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_MACROLAMBDAROUTPROC, CLASS_NREP_MSEND, CLASS_SOURCE_AGAIN, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_BOX, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_COMPILE_WARNING, CLASS_SOURCE_CONSTANT_BOX, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFVAR, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_DEFMACRO, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_VALUES, CLASS_SOURCE_FOREVER, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_HOOK_CALL, CLASS_SOURCE_IFELSE, CLASS_SOURCE_LAMBDA_FOR_MACRO, CLASS_SOURCE_LETREC, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LIST, CLASS_SOURCE_MACRO_LET_BINDING, CLASS_SOURCE_MATCHALT, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE, 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_DEFHOOK, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_EXPORT_PATMACRO, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, 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_DEFMACRO, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_PATTERN_MATCHER

8:

CLASS_SOURCE_DEFMACRO_IN_LET, 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 835.

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 ‘libmelt-ana-base.melt’, line 37.

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 466.

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING

32 sub-classes: CLASS_CITERATOR_BINDING, CLASS_CLASS_BINDING, CLASS_CMATCHER_BINDING, CLASS_DEFINED_MACRO_BINDING, CLASS_DEFINED_VALUE_BINDING, CLASS_EXPORTED_BINDING, CLASS_FIELD_BINDING, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER_BINDING, CLASS_HOOK_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_NORMAL_MAGIC_BINDING, CLASS_NORMAL_MODULE_VARIABLE_BINDING, CLASS_PATMACRO_BINDING, CLASS_PRIMITIVE_BINDING, CLASS_SELECTOR_BINDING, CLASS_VALUE_BINDING, CLASS_VARIABLE_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 171.

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_ANY_MODULE_CONTEXT

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

2 ancestors: CLASS_ROOT CLASS_PROPED.

22 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MOCX_MODULENAMECLASS_ANY_MODULE_CONTEXT
2MOCX_EXPFIELDICTCLASS_ANY_MODULE_CONTEXT
3MOCX_EXPCLASSDICTCLASS_ANY_MODULE_CONTEXT
4MOCX_INITIALENVCLASS_ANY_MODULE_CONTEXT
5MOCX_MACROENVCLASS_ANY_MODULE_CONTEXT
6MOCX_BASENVCLASS_ANY_MODULE_CONTEXT
7MOCX_FUNCOUNTCLASS_ANY_MODULE_CONTEXT
8MOCX_FILETUPLECLASS_ANY_MODULE_CONTEXT
9MOCX_CFLAGSCLASS_ANY_MODULE_CONTEXT
10MOCX_LINKFLAGSCLASS_ANY_MODULE_CONTEXT
11MOCX_CHEADERLISTCLASS_ANY_MODULE_CONTEXT
12MOCX_CIMPLEMENTLISTCLASS_ANY_MODULE_CONTEXT
13MOCX_STARTCOMMENTCLASS_ANY_MODULE_CONTEXT
14MOCX_GENDEVLISTCLASS_ANY_MODULE_CONTEXT
15MOCX_PACKAGEPCLISTCLASS_ANY_MODULE_CONTEXT
16MOCX_ERRORHANDLERCLASS_ANY_MODULE_CONTEXT
17MOCX_VARCOUNTCLASS_ANY_MODULE_CONTEXT
18MOCX_VARLISTCLASS_ANY_MODULE_CONTEXT
19MOCX_HOOKDICTCLASS_ANY_MODULE_CONTEXT
20MOCX_MACROLISTCLASS_ANY_MODULE_CONTEXT
21MOCX_ISGPLCOMPATIBLECLASS_ANY_MODULE_CONTEXT

3 sub-classes: CLASS_FIRST_MODULE_CONTEXT, CLASS_MAKEDOC_MODULE_CONTEXT, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT.

class description: The internal CLASS_ANY_MODULE_CONTEXT describes the whole module or extension 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_MACROENV is the environment for macros. 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 cheaders. MOCX_CIMPLEMENTLIST is the list of cimplements. MOCX_STARTCOMMENT is the initial comment. MOCX_GENDEVLIST is the list of instances of CLASS_SOURCE_GENERATOR_DEVICE. MOCX_ERRORHANDLER is the closure, if any, to call on errors. MOCX_VARCOUNT is the counter for variables. MOCX_VARLIST contains the list of variable descriptions. MOCX_MACROLIST is the list of not-yet-compiled macros. MOCX_ISGPLCOMPATIBLE is a string or null - see MODULE_IS_GPL_COMPATIBLE macro. For gurus!


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

1.3.6 CLASS_CHILD_PROCESS_HANDLER

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

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.7 CLASS_CITERATOR

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

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.8 CLASS_CITERATOR_BINDING

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

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.9 CLASS_CLASS

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

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.10 CLASS_CLASS_BINDING

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

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.11 CLASS_CLONED_SYMBOL

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

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.12 CLASS_CMATCHER

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

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.13 CLASS_CMATCHER_BINDING

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

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.14 CLASS_CTYPE

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_QUASI_CTYPE.

13 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_QUASI_CTYPE
3CTYPE_DESCRCLASS_QUASI_CTYPE
4CTYPE_CNAMECLASS_CTYPE
5CTYPE_PARCHARCLASS_CTYPE
6CTYPE_PARSTRINGCLASS_CTYPE
7CTYPE_ARGFIELDCLASS_CTYPE
8CTYPE_RESFIELDCLASS_CTYPE
9CTYPE_MARKERCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE
11CTYPE_AUTOBOXDISCRCLASS_CTYPE
12CTYPE_AUTOCONSTBOXDISCRCLASS_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. The CTYPE_AUTOBOXDISCR gives the discriminant for autoboxing or nil, and the CTYPE_AUTOCONSTBOXDISCR gives the discriminant for const autoboxinf oe nil. Adding new c-types requires an update of MELT runtime!


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

1.3.15 CLASS_CTYPE_GTY

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_QUASI_CTYPE CLASS_CTYPE.

35 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_QUASI_CTYPE
3CTYPE_DESCRCLASS_QUASI_CTYPE
4CTYPE_CNAMECLASS_CTYPE
5CTYPE_PARCHARCLASS_CTYPE
6CTYPE_PARSTRINGCLASS_CTYPE
7CTYPE_ARGFIELDCLASS_CTYPE
8CTYPE_RESFIELDCLASS_CTYPE
9CTYPE_MARKERCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE
11CTYPE_AUTOBOXDISCRCLASS_CTYPE
12CTYPE_AUTOCONSTBOXDISCRCLASS_CTYPE
13CTYPG_BOXEDMAGICCLASS_CTYPE_GTY
14CTYPG_MAPMAGICCLASS_CTYPE_GTY
15CTYPG_BOXEDSTRUCTCLASS_CTYPE_GTY
16CTYPG_BOXEDUNIMEMBCLASS_CTYPE_GTY
17CTYPG_ENTRYSTRUCTCLASS_CTYPE_GTY
18CTYPG_MAPSTRUCTCLASS_CTYPE_GTY
19CTYPG_MAPDISCRCLASS_CTYPE_GTY
20CTYPG_MAPUNIMEMBCLASS_CTYPE_GTY
21CTYPG_BOXFUNCLASS_CTYPE_GTY
22CTYPG_UNBOXFUNCLASS_CTYPE_GTY
23CTYPG_UPDATEBOXFUNCLASS_CTYPE_GTY
24CTYPG_NEWMAPFUNCLASS_CTYPE_GTY
25CTYPG_MAPGETFUNCLASS_CTYPE_GTY
26CTYPG_MAPPUTFUNCLASS_CTYPE_GTY
27CTYPG_MAPREMOVEFUNCLASS_CTYPE_GTY
28CTYPG_MAPCOUNTFUNCLASS_CTYPE_GTY
29CTYPG_MAPSIZEFUNCLASS_CTYPE_GTY
30CTYPG_MAPNATTFUNCLASS_CTYPE_GTY
31CTYPG_MAPNVALFUNCLASS_CTYPE_GTY
32CTYPG_MAPAUXDATAFUNCLASS_CTYPE_GTY
33CTYPG_MAPAUXPUTFUNCLASS_CTYPE_GTY
34CTYPG_MAPHASHFUNCLASS_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.16 CLASS_CTYPE_PLAIN

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_QUASI_CTYPE CLASS_CTYPE.

15 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_QUASI_CTYPE
3CTYPE_DESCRCLASS_QUASI_CTYPE
4CTYPE_CNAMECLASS_CTYPE
5CTYPE_PARCHARCLASS_CTYPE
6CTYPE_PARSTRINGCLASS_CTYPE
7CTYPE_ARGFIELDCLASS_CTYPE
8CTYPE_RESFIELDCLASS_CTYPE
9CTYPE_MARKERCLASS_CTYPE
10CTYPE_ALTKEYWORDCLASS_CTYPE
11CTYPE_AUTOBOXDISCRCLASS_CTYPE
12CTYPE_AUTOCONSTBOXDISCRCLASS_CTYPE
13CTYPP_BOXINGCLASS_CTYPE_PLAIN
14CTYPP_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.17 CLASS_C_GENERATION_CONTEXT

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

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.18 CLASS_DEBUG_INFORMATION

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

1 ancestors: CLASS_ROOT.

3 fields:

offsetnameclass
0DBGI_OUTCLASS_DEBUG_INFORMATION
1DBGI_OCCMAPCLASS_DEBUG_INFORMATION
2DBGI_MAXDEPTHCLASS_DEBUG_INFORMATION

1 sub-classes: CLASS_DEBUG_OUTPUT_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.19 CLASS_DEBUG_OUTPUT_INFORMATION

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

2 ancestors: CLASS_ROOT CLASS_DEBUG_INFORMATION.

3 fields:

offsetnameclass
0DBGI_OUTCLASS_DEBUG_INFORMATION
1DBGI_OCCMAPCLASS_DEBUG_INFORMATION
2DBGI_MAXDEPTHCLASS_DEBUG_INFORMATION

class description: The CLASS_DEBUG_OUTPUT_INFORMATION is for debug output, which happens even when debug printing is not enabled by a program argument like -f[plugin-arg-]melt-debugging.


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

1.3.20 CLASS_DEFINED_MACRO_BINDING

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

4 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_EXPORTED_BINDING CLASS_MACRO_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1MBIND_EXPANSERCLASS_MACRO_BINDING
2MBIND_DEFMACROCLASS_DEFINED_MACRO_BINDING
3MBIND_DATACLASS_DEFINED_MACRO_BINDING

class description: The internal CLASS_DEFINED_MACRO_BINDING is for macros defined with DEFMACRO.


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

1.3.21 CLASS_DEFINED_VALUE_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
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.22 CLASS_DELAYED_QUEUE

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

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.23 CLASS_DESCRIBED_ENVIRONMENT

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

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.24 CLASS_DIAGNOSTIC_STATE

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2DIAG_VECTCLASS_DIAGNOSTIC_STATE
3DIAG_POSITIONCLASS_DIAGNOSTIC_STATE
4DIAG_STATECLASS_DIAGNOSTIC_STATE

class description: The CLASS_DIAGNOSTIC_STATE manage diagnostic handling by ERROR and WARNING ....


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

1.3.25 CLASS_DISCRIMINANT

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

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.26 CLASS_ENVIRONMENT

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

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_REFERENCE and PARENT_MODULE_ENVIRONMENT macros.


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

1.3.27 CLASS_EXPORTED_BINDING

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

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

1 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING

4 sub-classes: CLASS_DEFINED_MACRO_BINDING, 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.28 CLASS_EXTENSION_GENERATION_CONTEXT

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

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.29 CLASS_FIELD

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

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.30 CLASS_FIELD_BINDING

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

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.31 CLASS_FIRST_MODULE_CONTEXT

Class defined at file ‘warmelt-outobj.melt’, line 7206.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_ANY_MODULE_CONTEXT CLASS_MODULE_CONTEXT.

22 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MOCX_MODULENAMECLASS_ANY_MODULE_CONTEXT
2MOCX_EXPFIELDICTCLASS_ANY_MODULE_CONTEXT
3MOCX_EXPCLASSDICTCLASS_ANY_MODULE_CONTEXT
4MOCX_INITIALENVCLASS_ANY_MODULE_CONTEXT
5MOCX_MACROENVCLASS_ANY_MODULE_CONTEXT
6MOCX_BASENVCLASS_ANY_MODULE_CONTEXT
7MOCX_FUNCOUNTCLASS_ANY_MODULE_CONTEXT
8MOCX_FILETUPLECLASS_ANY_MODULE_CONTEXT
9MOCX_CFLAGSCLASS_ANY_MODULE_CONTEXT
10MOCX_LINKFLAGSCLASS_ANY_MODULE_CONTEXT
11MOCX_CHEADERLISTCLASS_ANY_MODULE_CONTEXT
12MOCX_CIMPLEMENTLISTCLASS_ANY_MODULE_CONTEXT
13MOCX_STARTCOMMENTCLASS_ANY_MODULE_CONTEXT
14MOCX_GENDEVLISTCLASS_ANY_MODULE_CONTEXT
15MOCX_PACKAGEPCLISTCLASS_ANY_MODULE_CONTEXT
16MOCX_ERRORHANDLERCLASS_ANY_MODULE_CONTEXT
17MOCX_VARCOUNTCLASS_ANY_MODULE_CONTEXT
18MOCX_VARLISTCLASS_ANY_MODULE_CONTEXT
19MOCX_HOOKDICTCLASS_ANY_MODULE_CONTEXT
20MOCX_MACROLISTCLASS_ANY_MODULE_CONTEXT
21MOCX_ISGPLCOMPATIBLECLASS_ANY_MODULE_CONTEXT

class description: CLASS_FIRST_MODULE_CONTEXT is for compiling the bootstrapped first module warmelt-first. For Gurus.


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

1.3.32 CLASS_FIXED_BINDING

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

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING

13 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_HOOK_BINDING, CLASS_INSTANCE_BINDING, CLASS_NORMAL_MODULE_VARIABLE_BINDING, CLASS_PRIMITIVE_BINDING, CLASS_SELECTOR_BINDING, CLASS_VARIABLE_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.33 CLASS_FORMAL_BINDING

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

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.34 CLASS_FUNCTION_BINDING

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

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.35 CLASS_FUNMATCHER

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

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.36 CLASS_FUNMATCHER_BINDING

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

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.37 CLASS_GCC_ANY_IPA_PASS

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

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.38 CLASS_GCC_ATTRIBUTE

Class defined at file ‘warmelt-hooks.melt’, line 2281.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCATTR_DATACLASS_GCC_ATTRIBUTE
3GCCATTR_HANDLERCLASS_GCC_ATTRIBUTE

class description: The CLASS_GCC_ATTRIBUTE describes general GCC attributes known by MELT. Its GCCATTR_DATA field can contain arbitrary data. Its GCCATTR_HANDER should be a closure (see handler field in attribute_spec field of ‘gcc/tree-core.h’ of GCC). The closure is given the attribute, a list of flag keywords such as :attr_flag_decl_next, :attr_flag_function_next, :attr_flag_array_next, :attr_flag_type_in_place, :attr_flag_built_in, :attr_flag_cxx11, the tree node, the tree name, and the tree args as arguments, and should give a primary boolean result value (non-nil to clear no_add_attrs) and secondarily the tree result and the output tree node.


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

1.3.39 CLASS_GCC_EXPANDED_PRAGMA

Class defined at file ‘libmelt-ana-tree.melt’, line 3632.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PRAGMA.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPRAGMA_HANDLERCLASS_GCC_PRAGMA
3GCCPRAGMA_SPACECLASS_GCC_PRAGMA
4GCCPRAGMA_DATACLASS_GCC_PRAGMA

class description: The CLASS_GCC_EXPANDED_PRAGMA is for registered pragma handlers with expansion, see c_register_pragma_with_expansion_and_data in ‘c-family/c-pragma.h’ and also CLASS_GCC_PLAIN_PRAGMA.


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

1.3.40 CLASS_GCC_GIMPLE_PASS

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

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.41 CLASS_GCC_PASS

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

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.42 CLASS_GCC_PLAIN_PRAGMA

Class defined at file ‘libmelt-ana-tree.melt’, line 3641.

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED CLASS_GCC_PRAGMA.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPRAGMA_HANDLERCLASS_GCC_PRAGMA
3GCCPRAGMA_SPACECLASS_GCC_PRAGMA
4GCCPRAGMA_DATACLASS_GCC_PRAGMA

class description: The CLASS_GCC_PLAIN_PRAGMA is for registered pragma handlers without expansion, see c_register_pragma_with_data in ‘c-family/c-pragma.h’ and also CLASS_GCC_EXPANDED_PRAGMA.


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

1.3.43 CLASS_GCC_PRAGMA

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2GCCPRAGMA_HANDLERCLASS_GCC_PRAGMA
3GCCPRAGMA_SPACECLASS_GCC_PRAGMA
4GCCPRAGMA_DATACLASS_GCC_PRAGMA

2 sub-classes: CLASS_GCC_EXPANDED_PRAGMA, CLASS_GCC_PLAIN_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.44 CLASS_GCC_RTL_PASS

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

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.45 CLASS_GCC_SIMPLE_IPA_PASS

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

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.46 CLASS_GCC_TRANSFORM_IPA_PASS

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

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.47 CLASS_GENERATED_C_CODE

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

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.48 CLASS_HOOK_BINDING

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

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

4 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2HOOKBIND_DEFHOOKCLASS_HOOK_BINDING
3HOOKBIND_DESCRCLASS_HOOK_BINDING

class description: The internal CLASS_HOOK_BINDING is for hook bindings. See the DEFHOOK macro. The HOOKBIND_DEFHOOK provides the definition.


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

1.3.49 CLASS_HOOK_DESCRIPTOR

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2HOOKDESC_IN_FORMALSCLASS_HOOK_DESCRIPTOR
3HOOKDESC_OUT_FORMALSCLASS_HOOK_DESCRIPTOR
4HOOKDESC_CTYPECLASS_HOOK_DESCRIPTOR
5HOOKDESC_HOOKCLASS_HOOK_DESCRIPTOR

class description: The CLASS_HOOK_DESCRIPTOR describes the hook interface. NAMED_NAME is the hook name. HOOKDESC_IN_FORMALS is the tuple of input formal bindings. HOOKDESC_OUT_FORMALS is the tuple of output formal bindings. HOOKDESC_CTYPE is the ctype of the result. HOOKDESC_HOOK is the described hook.


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

1.3.50 CLASS_INITIAL_GENERATION_CONTEXT

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

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.51 CLASS_INPUT_CHANNEL_HANDLER

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

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

2 sub-classes: CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER, CLASS_RAW_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.52 CLASS_INSTANCE_BINDING

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

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.53 CLASS_JSON_PARSER

Class defined at file ‘warmelt-hooks.melt’, line 3607.

2 ancestors: CLASS_ROOT CLASS_PROPED.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1JSONPARSE_JDATACLASS_JSON_PARSER
2JSONPARSE_STACKCLASS_JSON_PARSER
3JSONPARSE_ERRORHANDLERCLASS_JSON_PARSER
4JSONPARSE_COUNTERCLASS_JSON_PARSER

class description: The CLASS_JSON_PARSER is the internal class for asynchronous JSON parsing


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

1.3.54 CLASS_KEYWORD

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

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.55 CLASS_LABEL_BINDING

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

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.56 CLASS_LETREC_BINDING

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

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.57 CLASS_LET_BINDING

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

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.58 CLASS_LITERAL_VALUE

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

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.59 CLASS_LOCATED

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

2 ancestors: CLASS_ROOT CLASS_PROPED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED

121 sub-classes: CLASS_DIAGNOSTIC_STATE, 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_ANY_LET_BINDING, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_BOX, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_CODE_STRING, CLASS_SOURCE_COMMENT, CLASS_SOURCE_COMPILE_DIAGNOSTIC, CLASS_SOURCE_COMPILE_WARNING, CLASS_SOURCE_CONSTANT_BOX, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_DEFVAR, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_ANY_MACRO, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_DEFMACRO, 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_HOOK_CALL, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAMBDA_FOR_MACRO, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, CLASS_SOURCE_LIST, CLASS_SOURCE_MACRO_INSTALLATION, CLASS_SOURCE_MACRO_LET_BINDING, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCHALT, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE, 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_QUASI_BOX, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNBOX, 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.60 CLASS_MACRO_BINDING

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

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_EXPORTED_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1MBIND_EXPANSERCLASS_MACRO_BINDING

2 sub-classes: CLASS_DEFINED_MACRO_BINDING, CLASS_PATMACRO_BINDING.

class description: The CLASS_MACRO_BINDING is the class of exported or defined macro bindings. See the EXPORT_MACRO and DEFMACRO macros.


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

1.3.61 CLASS_MAKEDOC_MODULE_CONTEXT

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_ANY_MODULE_CONTEXT.

38 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MOCX_MODULENAMECLASS_ANY_MODULE_CONTEXT
2MOCX_EXPFIELDICTCLASS_ANY_MODULE_CONTEXT
3MOCX_EXPCLASSDICTCLASS_ANY_MODULE_CONTEXT
4MOCX_INITIALENVCLASS_ANY_MODULE_CONTEXT
5MOCX_MACROENVCLASS_ANY_MODULE_CONTEXT
6MOCX_BASENVCLASS_ANY_MODULE_CONTEXT
7MOCX_FUNCOUNTCLASS_ANY_MODULE_CONTEXT
8MOCX_FILETUPLECLASS_ANY_MODULE_CONTEXT
9MOCX_CFLAGSCLASS_ANY_MODULE_CONTEXT
10MOCX_LINKFLAGSCLASS_ANY_MODULE_CONTEXT
11MOCX_CHEADERLISTCLASS_ANY_MODULE_CONTEXT
12MOCX_CIMPLEMENTLISTCLASS_ANY_MODULE_CONTEXT
13MOCX_STARTCOMMENTCLASS_ANY_MODULE_CONTEXT
14MOCX_GENDEVLISTCLASS_ANY_MODULE_CONTEXT
15MOCX_PACKAGEPCLISTCLASS_ANY_MODULE_CONTEXT
16MOCX_ERRORHANDLERCLASS_ANY_MODULE_CONTEXT
17MOCX_VARCOUNTCLASS_ANY_MODULE_CONTEXT
18MOCX_VARLISTCLASS_ANY_MODULE_CONTEXT
19MOCX_HOOKDICTCLASS_ANY_MODULE_CONTEXT
20MOCX_MACROLISTCLASS_ANY_MODULE_CONTEXT
21MOCX_ISGPLCOMPATIBLECLASS_ANY_MODULE_CONTEXT
22MKDOC_PRIMITIVESCLASS_MAKEDOC_MODULE_CONTEXT
23MKDOC_FUNCTIONSCLASS_MAKEDOC_MODULE_CONTEXT
24MKDOC_CITERATORSCLASS_MAKEDOC_MODULE_CONTEXT
25MKDOC_CMATCHERSCLASS_MAKEDOC_MODULE_CONTEXT
26MKDOC_SELECTORSCLASS_MAKEDOC_MODULE_CONTEXT
27MKDOC_FIELDSCLASS_MAKEDOC_MODULE_CONTEXT
28MKDOC_CLASSESCLASS_MAKEDOC_MODULE_CONTEXT
29MKDOC_INSTANCESCLASS_MAKEDOC_MODULE_CONTEXT
30MKDOC_MACROSCLASS_MAKEDOC_MODULE_CONTEXT
31MKDOC_PATMACROSCLASS_MAKEDOC_MODULE_CONTEXT
32MKDOC_HOOKSCLASS_MAKEDOC_MODULE_CONTEXT
33MKDOC_FORMALOCCMAPCLASS_MAKEDOC_MODULE_CONTEXT
34MKDOC_PREDEFMAPCLASS_MAKEDOC_MODULE_CONTEXT
35MKDOC_DOCSYMAPCLASS_MAKEDOC_MODULE_CONTEXT
36MKDOC_SUBCLASSMAPCLASS_MAKEDOC_MODULE_CONTEXT
37MKDOC_BOXCOUNTERCLASS_MAKEDOC_MODULE_CONTEXT

class description: The CLASS_MAKEDOC_MODULE_CONTEXT aggregates data for generating documentation, and is a module context since macro-expansion needs that.


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

1.3.62 CLASS_MATCHED_BINDING

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

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.63 CLASS_MATCHED_DATA

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

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.64 CLASS_MATCHED_NORMAL_DATA

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

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.65 CLASS_MATCHING_CONTEXT

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

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.66 CLASS_MATCH_CASE

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

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.67 CLASS_MATCH_FLAG

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

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.68 CLASS_MATCH_GRAPHIC

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

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.69 CLASS_MATCH_NORMALIZATION_CONTEXT

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

1 ancestors: CLASS_ROOT.

11 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_STARTLABELCLASS_MATCH_NORMALIZATION_CONTEXT
10MATNORX_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_MATCHALT, 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.70 CLASS_MATCH_STEP

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

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.71 CLASS_MATCH_STEP_CLEAR

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

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.72 CLASS_MATCH_STEP_FLAG_CONJUNCTION

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

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.73 CLASS_MATCH_STEP_FLAG_DISJUNCTION

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

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.74 CLASS_MATCH_STEP_FLAG_OPERATION

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

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.75 CLASS_MATCH_STEP_FLAG_SET

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

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.76 CLASS_MATCH_STEP_SUCCESS_WHEN_FLAG

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

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.77 CLASS_MATCH_STEP_TEST

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

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.78 CLASS_MATCH_STEP_TEST_CONSTANT

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

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.79 CLASS_MATCH_STEP_TEST_GROUP

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

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.80 CLASS_MATCH_STEP_TEST_INSTANCE

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.

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.81 CLASS_MATCH_STEP_TEST_MATCHER

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

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.82 CLASS_MATCH_STEP_TEST_MULTIPLE

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.

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.83 CLASS_MATCH_STEP_TEST_VARIABLE

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

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.84 CLASS_MATCH_STEP_THEN

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

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.85 CLASS_MATCH_STEP_WITH_DATA

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

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.86 CLASS_MATCH_STEP_WITH_FLAG

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

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.87 CLASS_MELT_MODE

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

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.88 CLASS_NAMED

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

2 ancestors: CLASS_ROOT CLASS_PROPED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED

32 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_ATTRIBUTE, CLASS_GCC_EXPANDED_PRAGMA, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PLAIN_PRAGMA, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_HOOK_DESCRIPTOR, CLASS_KEYWORD, CLASS_MELT_MODE, CLASS_PRIMITIVE, CLASS_QUASI_CTYPE, 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, notably symbols and keywords, see CLASS_SYMBOL and CLASS_KEYWORD. The NAMED_NAME field is conventionally a string and should not change.


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

1.3.89 CLASS_NORMALIZATION_CONTEXT

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

2 ancestors: CLASS_ROOT CLASS_PROPED.

16 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NCTX_INITPROCCLASS_NORMALIZATION_CONTEXT
2NCTX_PROCLISTCLASS_NORMALIZATION_CONTEXT
3NCTX_DATALISTCLASS_NORMALIZATION_CONTEXT
4NCTX_VALUELISTCLASS_NORMALIZATION_CONTEXT
5NCTX_SYMBMAPCLASS_NORMALIZATION_CONTEXT
6NCTX_KEYWMAPCLASS_NORMALIZATION_CONTEXT
7NCTX_SYMBCACHEMAPCLASS_NORMALIZATION_CONTEXT
8NCTX_PREDEFMAPCLASS_NORMALIZATION_CONTEXT
9NCTX_VALMAPCLASS_NORMALIZATION_CONTEXT
10NCTX_VALBINDMAPCLASS_NORMALIZATION_CONTEXT
11NCTX_CURPROCCLASS_NORMALIZATION_CONTEXT
12NCTX_MODULCONTEXTCLASS_NORMALIZATION_CONTEXT
13NCTX_QDATCURMODENVBOXCLASS_NORMALIZATION_CONTEXT
14NCTX_QDATPARMODENVCLASS_NORMALIZATION_CONTEXT
15NCTX_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.90 CLASS_NORMAL_CONSTRUCTED_INSTANCE_BINDING

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

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.91 CLASS_NORMAL_CONSTRUCTED_LAMBDA_BINDING

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

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.92 CLASS_NORMAL_CONSTRUCTED_LIST_BINDING

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

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.93 CLASS_NORMAL_CONSTRUCTED_PAIR_BINDING

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

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.94 CLASS_NORMAL_CONSTRUCTED_TUPLE_BINDING

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

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.95 CLASS_NORMAL_CONSTRUCTOR_BINDING

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

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.96 CLASS_NORMAL_LET_BINDING

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

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.97 CLASS_NORMAL_MAGIC_BINDING

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

2 ancestors: CLASS_ROOT CLASS_ANY_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1NMAGIC_VALUECLASS_NORMAL_MAGIC_BINDING

class description: The CLASS_NORMAL_MAGIC_BINDING is tricky, rarely used (e.g. for code_chunk tags): the NMAGIC_VALUE is the returned value of its BINDER. If it is a closure of DICR_NORMALIZING_CLOSURE, that closure is applied to normalize.


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

1.3.98 CLASS_NORMAL_MODULE_VARIABLE_BINDING

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

4 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING CLASS_VARIABLE_BINDING.

3 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING
2NVARB_NUMCLASS_NORMAL_MODULE_VARIABLE_BINDING

class description: The internal CLASS_NORMAL_MODULE_VARIABLE_BINDING is the class of module variable bindings.


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

1.3.99 CLASS_NORMAL_OR_VARIABLE

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

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.100 CLASS_NREP

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

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

50 sub-classes: CLASS_NREP_ANYPROC, CLASS_NREP_APPLY, CLASS_NREP_BOUND_DATA, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_CLOSPROC, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_EXPRESSION, CLASS_NREP_HOOKPROC, CLASS_NREP_HOOK_CALL, 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_MACROLAMBDAROUTPROC, CLASS_NREP_MATCHALT, 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.101 CLASS_NREP_ANYPROC

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

2 ancestors: CLASS_ROOT CLASS_NREP.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC

8 sub-classes: CLASS_NREP_CLOSPROC, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_HOOKPROC, CLASS_NREP_INITEXTENDPROC, CLASS_NREP_INITPROC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_MACROLAMBDAROUTPROC, 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.102 CLASS_NREP_APPLY

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

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.103 CLASS_NREP_BOUND_DATA

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

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.104 CLASS_NREP_CHECKSIGNAL

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

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.105 CLASS_NREP_CHUNK

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

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.106 CLASS_NREP_CLOSPROC

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

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC.

7 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC

5 sub-classes: CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_HOOKPROC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_MACROLAMBDAROUTPROC, CLASS_NREP_ROUTPROC.

class description: The internal CLASS_NREP_CLOSPROC is the super-class for closing procedures with optional name NRCLOP_NAME, [input] arguments bindings tuplz NRCLOP_ARGBINDTUPLE, closed bindings list NRCLOP_CLOBINDLIST, constant list NRCLOP_CONSTLIST, and object const cache map NRCLOP_OBJCONSTCACHEMAP


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

1.3.107 CLASS_NREP_COMMENT

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

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.108 CLASS_NREP_CONSUME_VARIADIC

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

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.109 CLASS_NREP_CPPIF

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

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.110 CLASS_NREP_DEFUNROUTPROC

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

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_CLOSPROC CLASS_NREP_ROUTPROC.

11 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC
7NRPRO_DATAROUTCLASS_NREP_ROUTPROC
8NRPRO_DATACLOSCLASS_NREP_ROUTPROC
9NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
10NRPRO_VARIADICCLASS_NREP_ROUTPROC

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


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

1.3.111 CLASS_NREP_DISCRIMINATED_DATA

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

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.112 CLASS_NREP_EXPRESSION

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

2 ancestors: CLASS_ROOT CLASS_NREP.

1 fields:

offsetnameclass
0NREP_LOCCLASS_NREP

32 sub-classes: CLASS_NREP_APPLY, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_HOOK_CALL, 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_MATCHALT, 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.113 CLASS_NREP_HOOKPROC

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

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_CLOSPROC.

10 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC
7NRHOOK_OUTBCLASS_NREP_HOOKPROC
8NRHOOK_CTYPECLASS_NREP_HOOKPROC
9NRHOOK_DATAHOOKCLASS_NREP_HOOKPROC

class description: The CLASS_NREP_HOOKPROC is the class for a hook procedure in a module, defined with DEFHOOK.


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

1.3.114 CLASS_NREP_HOOK_CALL

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

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS.

7 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NEXPR_ARGSCLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS
3NHOOK_NAMECLASS_NREP_HOOK_CALL
4NHOOK_CALLEDCLASS_NREP_HOOK_CALL
5NHOOK_OUTSCLASS_NREP_HOOK_CALL
6NHOOK_DESCRCLASS_NREP_HOOK_CALL

class description: The CLASS_NREP_HOOK_CALL is for normal hook calls. NHOOK_CALLED is the called hook. NHOOK_OUTS it the actual output arguments to the hook. NHOOK_DESCR is the descriptor.


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

1.3.115 CLASS_NREP_IF

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

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.116 CLASS_NREP_IFCOMMON

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

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.117 CLASS_NREP_IFISA

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

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.118 CLASS_NREP_IFSAME

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

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.119 CLASS_NREP_IFTESTVALUE

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

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.120 CLASS_NREP_IFTUPLESIZED

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

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.121 CLASS_NREP_IFVARIADIC

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

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.122 CLASS_NREP_INITEXTENDPROC

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

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_INITPROC.

7 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NINIT_TOPLCLASS_NREP_INITPROC
3NINIT_DEFBINDSCLASS_NREP_INITPROC
4NINIT_IMPORTSCLASS_NREP_INITPROC
5NINIT_IMPORTEXPRSCLASS_NREP_INITPROC
6NINITEXTEND_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.123 CLASS_NREP_INITPROC

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

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC.

6 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NINIT_TOPLCLASS_NREP_INITPROC
3NINIT_DEFBINDSCLASS_NREP_INITPROC
4NINIT_IMPORTSCLASS_NREP_INITPROC
5NINIT_IMPORTEXPRSCLASS_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. Field NINIT_IMPORTS is the list of imports.


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

1.3.124 CLASS_NREP_JUMP_WHEN_IS_A

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

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.125 CLASS_NREP_LAMBDAROUTPROC

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

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_CLOSPROC CLASS_NREP_ROUTPROC.

11 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC
7NRPRO_DATAROUTCLASS_NREP_ROUTPROC
8NRPRO_DATACLOSCLASS_NREP_ROUTPROC
9NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
10NRPRO_VARIADICCLASS_NREP_ROUTPROC

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


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

1.3.126 CLASS_NREP_LET

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

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.127 CLASS_NREP_LETREC

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

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.128 CLASS_NREP_MACROLAMBDAROUTPROC

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

5 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_CLOSPROC CLASS_NREP_ROUTPROC.

11 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC
7NRPRO_DATAROUTCLASS_NREP_ROUTPROC
8NRPRO_DATACLOSCLASS_NREP_ROUTPROC
9NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
10NRPRO_VARIADICCLASS_NREP_ROUTPROC

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


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

1.3.129 CLASS_NREP_MATCHALT

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

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION CLASS_NREP_TYPED_EXPRESSION.

8 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION
2NAMATCH_MATCHEDCLASS_NREP_MATCHALT
3NAMATCH_RESULTCLASS_NREP_MATCHALT
4NAMATCH_BODYCLASS_NREP_MATCHALT
5NAMATCH_FLAGSCLASS_NREP_MATCHALT
6NAMATCH_MDATASCLASS_NREP_MATCHALT
7NAMATCH_STARTLABELCLASS_NREP_MATCHALT

class description: The CLASS_NREP_MATCHALT 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.130 CLASS_NREP_MATCHED_DATA

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

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.131 CLASS_NREP_MATCH_DATA_ACTION

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

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.132 CLASS_NREP_MATCH_DATA_CLEAR

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

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.133 CLASS_NREP_MATCH_DATA_FINALIZER

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

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.134 CLASS_NREP_MATCH_DATA_INITIALIZER

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

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.135 CLASS_NREP_MATCH_FLAG

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

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_MATCHALT using that match flag.


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

1.3.136 CLASS_NREP_MATCH_JUMP

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

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.137 CLASS_NREP_MATCH_LABEL

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

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.138 CLASS_NREP_MATCH_LABEL_END

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

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.139 CLASS_NREP_MSEND

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

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.140 CLASS_NREP_MULTIAPPLY

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

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.141 CLASS_NREP_MULTIMSEND

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

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.142 CLASS_NREP_NIL

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

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.143 CLASS_NREP_PREDEF

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

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.144 CLASS_NREP_PROGN

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

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.145 CLASS_NREP_QUASIDATA

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

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.146 CLASS_NREP_RETURN

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

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.147 CLASS_NREP_ROUTPROC

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

4 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_ANYPROC CLASS_NREP_CLOSPROC.

11 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NPROC_BODYCLASS_NREP_ANYPROC
2NRCLOP_NAMECLASS_NREP_CLOSPROC
3NRCLOP_ARGBINDTUPLECLASS_NREP_CLOSPROC
4NRCLOP_CLOBINDLISTCLASS_NREP_CLOSPROC
5NRCLOP_CONSTLISTCLASS_NREP_CLOSPROC
6NRCLOP_OBJCONSTCACHEMAPCLASS_NREP_CLOSPROC
7NRPRO_DATAROUTCLASS_NREP_ROUTPROC
8NRPRO_DATACLOSCLASS_NREP_ROUTPROC
9NRPRO_THUNKLISTCLASS_NREP_ROUTPROC
10NRPRO_VARIADICCLASS_NREP_ROUTPROC

3 sub-classes: CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_LAMBDAROUTPROC, CLASS_NREP_MACROLAMBDAROUTPROC.

class description: The CLASS_NREP_ROUTPROC is the class for normal routine procedures, representing DEFUN or LAMBDA code. 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.148 CLASS_NREP_SIMPLE

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

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.149 CLASS_NREP_TYPED_EXPRESSION

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

3 ancestors: CLASS_ROOT CLASS_NREP CLASS_NREP_EXPRESSION.

2 fields:

offsetnameclass
0NREP_LOCCLASS_NREP
1NEXPR_CTYPCLASS_NREP_TYPED_EXPRESSION

15 sub-classes: CLASS_NREP_APPLY, CLASS_NREP_CHUNK, CLASS_NREP_HOOK_CALL, CLASS_NREP_IF, CLASS_NREP_IFCOMMON, CLASS_NREP_IFISA, CLASS_NREP_IFSAME, CLASS_NREP_IFTESTVALUE, CLASS_NREP_IFTUPLESIZED, CLASS_NREP_IFVARIADIC, CLASS_NREP_MATCHALT, 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.150 CLASS_NREP_TYPED_EXPRESSION_WITH_ARGUMENTS

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

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

5 sub-classes: CLASS_NREP_APPLY, CLASS_NREP_HOOK_CALL, 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.151 CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER

Class defined at file ‘warmelt-hooks.melt’, line 2873.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_INPUT_CHANNEL_HANDLER.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1INCH_SBUFCLASS_INPUT_CHANNEL_HANDLER
2INCH_CLOSCLASS_INPUT_CHANNEL_HANDLER
3INCH_DATACLASS_INPUT_CHANNEL_HANDLER

class description: CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER is for input channel handlers which are accepting paragraphs terminated by two newlines. See also CLASS_RAW_INPUT_CHANNEL_HANDLER


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

1.3.152 CLASS_PATMACRO_BINDING

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

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.153 CLASS_PATTERN_CONTEXT

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

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.154 CLASS_PATTERN_EXPANSION_CONTEXT

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

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.155 CLASS_PRIMITIVE

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

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.156 CLASS_PRIMITIVE_BINDING

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

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.157 CLASS_PROPED

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

1 ancestors: CLASS_ROOT.

1 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED

172 sub-classes: CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_ANY_MATCHER, CLASS_ANY_MODULE_CONTEXT, 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_DIAGNOSTIC_STATE, CLASS_DISCRIMINANT, CLASS_FIELD, CLASS_FIRST_MODULE_CONTEXT, CLASS_FUNMATCHER, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_ATTRIBUTE, CLASS_GCC_EXPANDED_PRAGMA, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PLAIN_PRAGMA, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_HOOK_DESCRIPTOR, CLASS_INPUT_CHANNEL_HANDLER, CLASS_JSON_PARSER, CLASS_KEYWORD, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MAKEDOC_MODULE_CONTEXT, 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_NORMALIZATION_CONTEXT, CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER, CLASS_PRIMITIVE, CLASS_QUASI_CTYPE, CLASS_RAW_INPUT_CHANNEL_HANDLER, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT, CLASS_SELECTOR, CLASS_SEXPR, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE, CLASS_SOURCE_AGAIN, CLASS_SOURCE_ANY_LET_BINDING, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_BOX, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_CODE_STRING, CLASS_SOURCE_COMMENT, CLASS_SOURCE_COMPILE_DIAGNOSTIC, CLASS_SOURCE_COMPILE_WARNING, CLASS_SOURCE_CONSTANT_BOX, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_DEFVAR, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_ANY_MACRO, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_DEFMACRO, 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_HOOK_CALL, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAMBDA_FOR_MACRO, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, CLASS_SOURCE_LIST, CLASS_SOURCE_MACRO_INSTALLATION, CLASS_SOURCE_MACRO_LET_BINDING, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCHALT, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE, 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_QUASI_BOX, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNBOX, 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.158 CLASS_QUASI_CTYPE

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2CTYPE_KEYWORDCLASS_QUASI_CTYPE
3CTYPE_DESCRCLASS_QUASI_CTYPE

3 sub-classes: CLASS_CTYPE, CLASS_CTYPE_GTY, CLASS_CTYPE_PLAIN.

class description: The CLASS_QUASI_CTYPE is only for the :auto ctype annotation and :macro annotation. but the CLASS_CTYPE is its subclass. CTYPE_KEYWORD gives the MELT keyword symbol associated to it. CTYPE_DESCR gives a descriptive string.


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

1.3.159 CLASS_RAW_INPUT_CHANNEL_HANDLER

Class defined at file ‘warmelt-hooks.melt’, line 2880.

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_INPUT_CHANNEL_HANDLER.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1INCH_SBUFCLASS_INPUT_CHANNEL_HANDLER
2INCH_CLOSCLASS_INPUT_CHANNEL_HANDLER
3INCH_DATACLASS_INPUT_CHANNEL_HANDLER

class description: CLASS_RAW_INPUT_CHANNEL_HANDLER is for input channel handlers which are accepting raw input data, without paragraph separation. See also CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER.


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

1.3.160 CLASS_REFERENCE

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

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.161 CLASS_ROOT

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

271 sub-classes: CLASS_ALARM_HANDLER, CLASS_ANALYSIS_STATE, CLASS_ANY_BINDING, CLASS_ANY_MATCHER, CLASS_ANY_MODULE_CONTEXT, 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_DEBUG_OUTPUT_INFORMATION, CLASS_DEFINED_MACRO_BINDING, CLASS_DEFINED_VALUE_BINDING, CLASS_DELAYED_QUEUE, CLASS_DESCRIBED_ENVIRONMENT, CLASS_DIAGNOSTIC_STATE, CLASS_DISCRIMINANT, CLASS_ENVIRONMENT, CLASS_EXPORTED_BINDING, CLASS_EXTENSION_GENERATION_CONTEXT, CLASS_FIELD, CLASS_FIELD_BINDING, CLASS_FIRST_MODULE_CONTEXT, CLASS_FIXED_BINDING, CLASS_FORMAL_BINDING, CLASS_FUNCTION_BINDING, CLASS_FUNMATCHER, CLASS_FUNMATCHER_BINDING, CLASS_GCC_ANY_IPA_PASS, CLASS_GCC_ATTRIBUTE, CLASS_GCC_EXPANDED_PRAGMA, CLASS_GCC_GIMPLE_PASS, CLASS_GCC_PASS, CLASS_GCC_PLAIN_PRAGMA, CLASS_GCC_PRAGMA, CLASS_GCC_RTL_PASS, CLASS_GCC_SIMPLE_IPA_PASS, CLASS_GCC_TRANSFORM_IPA_PASS, CLASS_GENERATED_C_CODE, CLASS_HOOK_BINDING, CLASS_HOOK_DESCRIPTOR, CLASS_INITIAL_GENERATION_CONTEXT, CLASS_INPUT_CHANNEL_HANDLER, CLASS_INSTANCE_BINDING, CLASS_JSON_PARSER, CLASS_KEYWORD, CLASS_LABEL_BINDING, CLASS_LETREC_BINDING, CLASS_LET_BINDING, CLASS_LITERAL_VALUE, CLASS_LOCATED, CLASS_MACRO_BINDING, CLASS_MAKEDOC_MODULE_CONTEXT, 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_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_MAGIC_BINDING, CLASS_NORMAL_MODULE_VARIABLE_BINDING, CLASS_NORMAL_OR_VARIABLE, CLASS_NREP, CLASS_NREP_ANYPROC, CLASS_NREP_APPLY, CLASS_NREP_BOUND_DATA, CLASS_NREP_CHECKSIGNAL, CLASS_NREP_CHUNK, CLASS_NREP_CLOSPROC, CLASS_NREP_COMMENT, CLASS_NREP_CONSUME_VARIADIC, CLASS_NREP_CPPIF, CLASS_NREP_DEFUNROUTPROC, CLASS_NREP_DISCRIMINATED_DATA, CLASS_NREP_EXPRESSION, CLASS_NREP_HOOKPROC, CLASS_NREP_HOOK_CALL, 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_MACROLAMBDAROUTPROC, CLASS_NREP_MATCHALT, 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_PARAGRAPH_INPUT_CHANNEL_HANDLER, CLASS_PATMACRO_BINDING, CLASS_PATTERN_CONTEXT, CLASS_PATTERN_EXPANSION_CONTEXT, CLASS_PRIMITIVE, CLASS_PRIMITIVE_BINDING, CLASS_PROPED, CLASS_QUASI_CTYPE, CLASS_RAW_INPUT_CHANNEL_HANDLER, CLASS_REFERENCE, CLASS_RUNNING_EXTENSION_MODULE_CONTEXT, CLASS_SELECTOR, CLASS_SELECTOR_BINDING, CLASS_SEXPR, CLASS_SEXPR_MACROSTRING, CLASS_SOURCE, CLASS_SOURCE_AGAIN, CLASS_SOURCE_ANY_LET_BINDING, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_BOX, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_CODE_STRING, CLASS_SOURCE_COMMENT, CLASS_SOURCE_COMPILE_DIAGNOSTIC, CLASS_SOURCE_COMPILE_WARNING, CLASS_SOURCE_CONSTANT_BOX, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_DEFVAR, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_ANY_MACRO, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_DEFMACRO, 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_HOOK_CALL, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAMBDA_FOR_MACRO, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, CLASS_SOURCE_LIST, CLASS_SOURCE_MACRO_INSTALLATION, CLASS_SOURCE_MACRO_LET_BINDING, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCHALT, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE, 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_QUASI_BOX, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNBOX, 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_VARIABLE_BINDING, 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.162 CLASS_RUNNING_EXTENSION_MODULE_CONTEXT

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_ANY_MODULE_CONTEXT.

25 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1MOCX_MODULENAMECLASS_ANY_MODULE_CONTEXT
2MOCX_EXPFIELDICTCLASS_ANY_MODULE_CONTEXT
3MOCX_EXPCLASSDICTCLASS_ANY_MODULE_CONTEXT
4MOCX_INITIALENVCLASS_ANY_MODULE_CONTEXT
5MOCX_MACROENVCLASS_ANY_MODULE_CONTEXT
6MOCX_BASENVCLASS_ANY_MODULE_CONTEXT
7MOCX_FUNCOUNTCLASS_ANY_MODULE_CONTEXT
8MOCX_FILETUPLECLASS_ANY_MODULE_CONTEXT
9MOCX_CFLAGSCLASS_ANY_MODULE_CONTEXT
10MOCX_LINKFLAGSCLASS_ANY_MODULE_CONTEXT
11MOCX_CHEADERLISTCLASS_ANY_MODULE_CONTEXT
12MOCX_CIMPLEMENTLISTCLASS_ANY_MODULE_CONTEXT
13MOCX_STARTCOMMENTCLASS_ANY_MODULE_CONTEXT
14MOCX_GENDEVLISTCLASS_ANY_MODULE_CONTEXT
15MOCX_PACKAGEPCLISTCLASS_ANY_MODULE_CONTEXT
16MOCX_ERRORHANDLERCLASS_ANY_MODULE_CONTEXT
17MOCX_VARCOUNTCLASS_ANY_MODULE_CONTEXT
18MOCX_VARLISTCLASS_ANY_MODULE_CONTEXT
19MOCX_HOOKDICTCLASS_ANY_MODULE_CONTEXT
20MOCX_MACROLISTCLASS_ANY_MODULE_CONTEXT
21MOCX_ISGPLCOMPATIBLECLASS_ANY_MODULE_CONTEXT
22MORCX_LITERVALISTCLASS_RUNNING_EXTENSION_MODULE_CONTEXT
23MORCX_LITEROBJMAPCLASS_RUNNING_EXTENSION_MODULE_CONTEXT
24MORCX_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.163 CLASS_SELECTOR

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

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.164 CLASS_SELECTOR_BINDING

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

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.165 CLASS_SEXPR

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

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.166 CLASS_SEXPR_MACROSTRING

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

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.167 CLASS_SOURCE

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED.

2 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED

99 sub-classes: CLASS_SOURCE_AGAIN, CLASS_SOURCE_ANY_LET_BINDING, CLASS_SOURCE_APPLY, CLASS_SOURCE_ARGUMENTED_OPERATOR, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_BOX, CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_CODE_STRING, CLASS_SOURCE_COMMENT, CLASS_SOURCE_COMPILE_DIAGNOSTIC, CLASS_SOURCE_COMPILE_WARNING, CLASS_SOURCE_CONSTANT_BOX, CLASS_SOURCE_CPPIF, CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_DEFVAR, CLASS_SOURCE_EXIT, CLASS_SOURCE_EXPORTCOMMON, CLASS_SOURCE_EXPORT_ANY_MACRO, CLASS_SOURCE_EXPORT_CLASS, CLASS_SOURCE_EXPORT_DEFMACRO, 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_HOOK_CALL, CLASS_SOURCE_IF, CLASS_SOURCE_IFELSE, CLASS_SOURCE_IFVARIADIC, CLASS_SOURCE_INSTANCE, CLASS_SOURCE_LABELLED, CLASS_SOURCE_LAMBDA, CLASS_SOURCE_LAMBDA_FOR_MACRO, CLASS_SOURCE_LAZY_MACRO_EXPANSION, CLASS_SOURCE_LET, CLASS_SOURCE_LETREC, CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, CLASS_SOURCE_LIST, CLASS_SOURCE_MACRO_INSTALLATION, CLASS_SOURCE_MACRO_LET_BINDING, CLASS_SOURCE_MATCH, CLASS_SOURCE_MATCHALT, CLASS_SOURCE_MATCH_CASE, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE, 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_QUASI_BOX, CLASS_SOURCE_QUOTE, CLASS_SOURCE_RETURN, CLASS_SOURCE_SETQ, CLASS_SOURCE_TUPLE, CLASS_SOURCE_UNBOX, 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.168 CLASS_SOURCE_AGAIN

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

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.169 CLASS_SOURCE_ANY_LET_BINDING

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_BINDERCLASS_SOURCE_ANY_LET_BINDING

4 sub-classes: CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO, CLASS_SOURCE_MACRO_LET_BINDING.

class description: The internal CLASS_SOURCE_ANY_LET_BINDING is abstract syntax for LET bindings in the source.


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

1.3.170 CLASS_SOURCE_APPLY

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

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.171 CLASS_SOURCE_ARGUMENTED_OPERATOR

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SARGOP_ARGSCLASS_SOURCE_ARGUMENTED_OPERATOR

11 sub-classes: CLASS_SOURCE_APPLY, CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION, CLASS_SOURCE_CITERATION, CLASS_SOURCE_CMATCHEXPR, CLASS_SOURCE_FUNMATCHEXPR, CLASS_SOURCE_HOOK_CALL, 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.172 CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION

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

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
3SARITHVAR_NEUTRALCLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION
4SARITHVAR_PRIMITIVECLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION

class description: The internal CLASS_SOURCE_ARITHMETIC_VARIADIC_OPERATION is for expansion of variadic arithmetic operations like + - * /.


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

1.3.173 CLASS_SOURCE_BOX

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_QUASI_BOX.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SBOXEDCLASS_SOURCE_QUASI_BOX

class description: The internal SCLASS_SOURCE_BOX is for BOX abstract syntax. SBOXED is the boxed stuff.


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

1.3.174 CLASS_SOURCE_CHEADER

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_CODE_STRING.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SC_CODESTRINGCLASS_SOURCE_CODE_STRING

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


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

1.3.175 CLASS_SOURCE_CIMPLEMENT

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_CODE_STRING.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SC_CODESTRINGCLASS_SOURCE_CODE_STRING

class description: The internal CLASS_SOURCE_CIMPLEMENT is for C_IMPLEMENT abstract syntax. S_CODESTRING gives the code string to add into the implementation part.


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

1.3.176 CLASS_SOURCE_CITERATION

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

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.177 CLASS_SOURCE_CMATCHEXPR

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

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.178 CLASS_SOURCE_CODE_STRING

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SC_CODESTRINGCLASS_SOURCE_CODE_STRING

3 sub-classes: CLASS_SOURCE_CHEADER, CLASS_SOURCE_CIMPLEMENT, CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE.

class description: The internal abstract superclass CLASS_SOURCE_CODE_STRING is for C_HEADER and C_IMPLEMENT


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

1.3.179 CLASS_SOURCE_COMMENT

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

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 syntax. SCOMM_STR is the comment string.


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

1.3.180 CLASS_SOURCE_COMPILE_DIAGNOSTIC

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SCDIAG_MSGCLASS_SOURCE_COMPILE_DIAGNOSTIC
3SCDIAG_EXPRCLASS_SOURCE_COMPILE_DIAGNOSTIC

1 sub-classes: CLASS_SOURCE_COMPILE_WARNING.

class description: The interal abstract CLASS_SOURCE_COMPILER_DIAGNOSTIC is for compile time diagnostic message.


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

1.3.181 CLASS_SOURCE_COMPILE_WARNING

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_COMPILE_DIAGNOSTIC.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SCDIAG_MSGCLASS_SOURCE_COMPILE_DIAGNOSTIC
3SCDIAG_EXPRCLASS_SOURCE_COMPILE_DIAGNOSTIC

class description: The interal abstract CLASS_SOURCE_COMPILER_WARNING is for compile time diagnostic message.


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

1.3.182 CLASS_SOURCE_CONSTANT_BOX

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_QUASI_BOX.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SBOXEDCLASS_SOURCE_QUASI_BOX

class description: The internal SCLASS_SOURCE_CONSTANT_BOX is for CONSTANT_BOX abstract syntax. SBOXED is the boxed stuff.


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

1.3.183 CLASS_SOURCE_CPPIF

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

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.184 CLASS_SOURCE_DEFCITERATOR

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

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.185 CLASS_SOURCE_DEFCLASS

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

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.186 CLASS_SOURCE_DEFCMATCHER

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

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.187 CLASS_SOURCE_DEFHOOK

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

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
5SHOOK_OUT_FORMALSCLASS_SOURCE_DEFHOOK
6SHOOK_CTYPECLASS_SOURCE_DEFHOOK
7SHOOK_PREDEFCLASS_SOURCE_DEFHOOK
8SHOOK_VARIABLECLASS_SOURCE_DEFHOOK
9SHOOK_BODYCLASS_SOURCE_DEFHOOK

class description: The internal CLASS_SOURCE_DEFHOOK is the abstract syntax for DEFHOOK. Inherited SFORMAL_ARGS are the input formals, and SHOOK_OUT_FORMALS are the output formals, SHOOK_CTYPE is the result ctype, SHOOK_PREDEF is the optional predefined slot, SHOOK_VARIABLE is the optional module variable, and SHOOK_BODY is the body.


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

1.3.188 CLASS_SOURCE_DEFINE

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

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.189 CLASS_SOURCE_DEFINITION

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

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

15 sub-classes: CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCLASS, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFINE, CLASS_SOURCE_DEFINITION_FORMAL, CLASS_SOURCE_DEFINSTANCE, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, CLASS_SOURCE_DEFOBJCOMMON, CLASS_SOURCE_DEFPRIMITIVE, CLASS_SOURCE_DEFSELECTOR, CLASS_SOURCE_DEFUN, CLASS_SOURCE_DEFUNMATCHER, CLASS_SOURCE_DEFVAR.

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.190 CLASS_SOURCE_DEFINITION_FORMAL

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

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

8 sub-classes: CLASS_SOURCE_DEFCITERATOR, CLASS_SOURCE_DEFCMATCHER, CLASS_SOURCE_DEFHOOK, CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET, 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.191 CLASS_SOURCE_DEFINSTANCE

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

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.192 CLASS_SOURCE_DEFMACRO

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

7 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL CLASS_SOURCE_DEFUN.

7 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
6SMACRO_BINDINGCLASS_SOURCE_DEFMACRO

1 sub-classes: CLASS_SOURCE_DEFMACRO_IN_LET.

class description: The internal CLASS_SOURCE_DEFMACRO is the abstract syntax of DEFMACRO. SMACRO_BINDING is the binding.


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

1.3.193 CLASS_SOURCE_DEFMACRO_IN_LET

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

8 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION CLASS_SOURCE_DEFINITION_FORMAL CLASS_SOURCE_DEFUN CLASS_SOURCE_DEFMACRO.

8 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
6SMACRO_BINDINGCLASS_SOURCE_DEFMACRO
7SMACRO_SOURCELETBINDINGCLASS_SOURCE_DEFMACRO_IN_LET

class description: The internal CLASS_SOURCE_DEFMACRO_IN_LET is for delayed expansion of :macro let bindings.


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

1.3.194 CLASS_SOURCE_DEFOBJCOMMON

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

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.195 CLASS_SOURCE_DEFPRIMITIVE

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

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.196 CLASS_SOURCE_DEFSELECTOR

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

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.197 CLASS_SOURCE_DEFUN

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

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

2 sub-classes: CLASS_SOURCE_DEFMACRO, CLASS_SOURCE_DEFMACRO_IN_LET.

class description: The internal CLASS_SOURCE_DEFUN is the abstract syntax of DEFUN, and superclass of abstract syntax of DEFMACRO. SFUN_BODY is the body tuple.


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

1.3.198 CLASS_SOURCE_DEFUNMATCHER

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

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.199 CLASS_SOURCE_DEFVAR

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_DEFINITION.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SDEF_NAMECLASS_SOURCE_DEFINITION
3SDEF_DOCCLASS_SOURCE_DEFINITION

class description: The CLASS_SOURCE_DEFVAR defines a module variable, initialized to the nil value.


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

1.3.200 CLASS_SOURCE_EXIT

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

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.201 CLASS_SOURCE_EXPORTCOMMON

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

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.202 CLASS_SOURCE_EXPORT_ANY_MACRO

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_ANY_MACRO
3SEXPMAC_DOCCLASS_SOURCE_EXPORT_ANY_MACRO

3 sub-classes: CLASS_SOURCE_EXPORT_DEFMACRO, CLASS_SOURCE_EXPORT_MACRO, CLASS_SOURCE_EXPORT_PATMACRO.

class description: The internal CLASS_SOURCE_EXPORT_ANY_MACRO is for abstract syntax of EXPORT_MACRO directives. SEXPMAC_MNAME is the macro-name, and SEXPMAC_DOC is the documentation.


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

1.3.203 CLASS_SOURCE_EXPORT_CLASS

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

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.204 CLASS_SOURCE_EXPORT_DEFMACRO

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORT_ANY_MACRO.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_ANY_MACRO
3SEXPMAC_DOCCLASS_SOURCE_EXPORT_ANY_MACRO

class description: The internal CLASS_SOURCE_EXPORT_DEFMACRO is for abstract syntax of EXPORT_MACRO directives for macros defined with DEFMACRO.


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

1.3.205 CLASS_SOURCE_EXPORT_MACRO

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORT_ANY_MACRO.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_ANY_MACRO
3SEXPMAC_DOCCLASS_SOURCE_EXPORT_ANY_MACRO
4SEXPMAC_MVALCLASS_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 with an explicit expanser. SEXPMAC_MVAL is the expanser value.


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

1.3.206 CLASS_SOURCE_EXPORT_PATMACRO

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

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_EXPORT_ANY_MACRO CLASS_SOURCE_EXPORT_MACRO.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SEXPMAC_MNAMECLASS_SOURCE_EXPORT_ANY_MACRO
3SEXPMAC_DOCCLASS_SOURCE_EXPORT_ANY_MACRO
4SEXPMAC_MVALCLASS_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.207 CLASS_SOURCE_EXPORT_SYNONYM

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

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.208 CLASS_SOURCE_EXPORT_VALUES

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

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.209 CLASS_SOURCE_FIELDASSIGN

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

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.210 CLASS_SOURCE_FIELD_PATTERN

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

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.211 CLASS_SOURCE_FOREVER

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

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.212 CLASS_SOURCE_FUNMATCHEXPR

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

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.213 CLASS_SOURCE_GENERATOR_DEVICE

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

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.214 CLASS_SOURCE_GET_FIELD

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

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.215 CLASS_SOURCE_HOOK_CALL

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

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
3SHOOK_CALLEDCLASS_SOURCE_HOOK_CALL

class description: The internal CLASS_SOURCE_HOOK_CALL is for hook call abstract syntax. SHOOK_CALLED is the called hook or hook definition, SARGOP_ARGS is the tuple of arguments.


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

1.3.216 CLASS_SOURCE_IF

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

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.217 CLASS_SOURCE_IFELSE

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

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.218 CLASS_SOURCE_IFVARIADIC

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

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.219 CLASS_SOURCE_INSTANCE

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

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.220 CLASS_SOURCE_LABELLED

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

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.221 CLASS_SOURCE_LAMBDA

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

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

1 sub-classes: CLASS_SOURCE_LAMBDA_FOR_MACRO.

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.222 CLASS_SOURCE_LAMBDA_FOR_MACRO

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_LAMBDA.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLAM_ARGBINDCLASS_SOURCE_LAMBDA
3SLAM_BODYCLASS_SOURCE_LAMBDA
4SLAM_ORIGMACROCLASS_SOURCE_LAMBDA_FOR_MACRO

class description: The internal CLASS_SOURCE_LAMBDA_FOR_MACRO is for abstract syntax of macro lambdas. Field SLAM_ORIGMACRO gives the original macro or macrobinding


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

1.3.223 CLASS_SOURCE_LAZY_MACRO_EXPANSION

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

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.224 CLASS_SOURCE_LET

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

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.225 CLASS_SOURCE_LETREC

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

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.226 CLASS_SOURCE_LETREC_BINDING

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

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ANY_LET_BINDING CLASS_SOURCE_LET_BINDING.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_BINDERCLASS_SOURCE_ANY_LET_BINDING
3SLETB_TYPECLASS_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.227 CLASS_SOURCE_LET_BINDING

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ANY_LET_BINDING.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_BINDERCLASS_SOURCE_ANY_LET_BINDING
3SLETB_TYPECLASS_SOURCE_LET_BINDING
4SLETB_EXPRCLASS_SOURCE_LET_BINDING

2 sub-classes: CLASS_SOURCE_LETREC_BINDING, CLASS_SOURCE_LET_BINDING_FOR_MACRO.

class description: The internal CLASS_SOURCE_LET_BINDING is abstract syntax for LET bindings [of things] 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.228 CLASS_SOURCE_LET_BINDING_FOR_MACRO

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

6 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ANY_LET_BINDING CLASS_SOURCE_LET_BINDING.

6 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_BINDERCLASS_SOURCE_ANY_LET_BINDING
3SLETB_TYPECLASS_SOURCE_LET_BINDING
4SLETB_EXPRCLASS_SOURCE_LET_BINDING
5SLETFM_MACROLETBINDCLASS_SOURCE_LET_BINDING_FOR_MACRO

class description: The internal CLASS_SOURCE_LET_BINDING_FOR_MACRO is abstract syntax for LET bindings [of things] in the source. The SLETB_TYPE is CTYPE_VALUE, the SLETB_BINDER gives the binder, and the SLETB_EXPR gives the bound lambda-expression. Field SLETM_MACROLETBIND gives the instance of CLASS_SOURCE_MACRO_LET_BINDING.


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

1.3.229 CLASS_SOURCE_LIST

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

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.230 CLASS_SOURCE_MACRO_INSTALLATION

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SMACINST_DEFMACROCLASS_SOURCE_MACRO_INSTALLATION
3SMACINST_ENVCLASS_SOURCE_MACRO_INSTALLATION

class description: The CLASS_SOURCE_MACRO_INSTALLATION, for gurus, is an internal class used to install macros. SMACINST_DEFMACRO is the macro definition and SMACINST_ENV is the environment.


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

1.3.231 CLASS_SOURCE_MACRO_LET_BINDING

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_ANY_LET_BINDING.

5 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SLETB_BINDERCLASS_SOURCE_ANY_LET_BINDING
3SLETM_MACRO_FORMALSCLASS_SOURCE_MACRO_LET_BINDING
4SLETM_MACRO_BODYCLASS_SOURCE_MACRO_LET_BINDING

class description: The internal CLASS_SOURCE_MACRO_LET_BINDING is abstract syntax for macro LET binding in the source.


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

1.3.232 CLASS_SOURCE_MATCH

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

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

1 sub-classes: CLASS_SOURCE_MATCHALT.

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.233 CLASS_SOURCE_MATCHALT

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_MATCH.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SMAT_MATCHEDXCLASS_SOURCE_MATCH
3SMAT_CASESCLASS_SOURCE_MATCH

class description: the internal CLASS_SOURCE_MATCHALT is temporary, for MATCHALT expressions which should behave like MATCH. See CLASS_SOURCE_MATCH.


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

1.3.234 CLASS_SOURCE_MATCH_CASE

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

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.235 CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE

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

5 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE CLASS_SOURCE_CODE_STRING.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SC_CODESTRINGCLASS_SOURCE_CODE_STRING

class description: The internal CLASS_SOURCE_MODULE_IS_GPL_COMPATIBLE is for MODULE_IS_GPL_COMPATIBLE syntax.


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

1.3.236 CLASS_SOURCE_MSEND

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

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.237 CLASS_SOURCE_MULTICALL

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

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.238 CLASS_SOURCE_OR

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

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.239 CLASS_SOURCE_PATTERN

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

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.240 CLASS_SOURCE_PATTERN_AND

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

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.241 CLASS_SOURCE_PATTERN_COMPOSITE

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

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.242 CLASS_SOURCE_PATTERN_CONSTANT

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

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.243 CLASS_SOURCE_PATTERN_CONSTRUCT

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

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.244 CLASS_SOURCE_PATTERN_C_MATCH

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

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.245 CLASS_SOURCE_PATTERN_FUN_MATCH

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

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.246 CLASS_SOURCE_PATTERN_INSTANCE

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

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.247 CLASS_SOURCE_PATTERN_JOKER_VARIABLE

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

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.248 CLASS_SOURCE_PATTERN_LIST

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

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.249 CLASS_SOURCE_PATTERN_MATCHER

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

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.250 CLASS_SOURCE_PATTERN_OBJECT

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

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.251 CLASS_SOURCE_PATTERN_OR

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

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.252 CLASS_SOURCE_PATTERN_TUPLE

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

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.253 CLASS_SOURCE_PATTERN_VARIABLE

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

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.254 CLASS_SOURCE_PATTERN_WHEN

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

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.255 CLASS_SOURCE_PRIMITIVE

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

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.256 CLASS_SOURCE_PROGN

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

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.257 CLASS_SOURCE_PUT_FIELDS

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

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.258 CLASS_SOURCE_QUASI_BOX

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

3 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SBOXEDCLASS_SOURCE_QUASI_BOX

2 sub-classes: CLASS_SOURCE_BOX, CLASS_SOURCE_CONSTANT_BOX.

class description: The internal super-class SCLASS_SOURCE_QUASI_BOX is for BOX and CONSTANT_BOX abstract syntax. SBOXED is the boxed stuff.


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

1.3.259 CLASS_SOURCE_QUOTE

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

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.260 CLASS_SOURCE_RETURN

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

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.261 CLASS_SOURCE_SETQ

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

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.262 CLASS_SOURCE_TUPLE

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

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.263 CLASS_SOURCE_UNBOX

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

4 ancestors: CLASS_ROOT CLASS_PROPED CLASS_LOCATED CLASS_SOURCE.

4 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1LOCA_LOCATIONCLASS_LOCATED
2SUNBOX_CTYPECLASS_SOURCE_UNBOX
3SUNBOX_EXPRCLASS_SOURCE_UNBOX

class description: The CLASS_SOURCE_UNBOX is for UNBOX abstract syntax. SUNBOX_CTYPE gives the c-type, and SUNBOX_EXPR gives the expression to unbox.


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

1.3.264 CLASS_SOURCE_UNSAFE_GET_FIELD

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

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.265 CLASS_SOURCE_UNSAFE_PUT_FIELDS

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

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.266 CLASS_SOURCE_USE_PACKAGE_FROM_PKG_CONFIG

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

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.267 CLASS_SYMBOL

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

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.268 CLASS_SYSTEM_DATA

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

3 ancestors: CLASS_ROOT CLASS_PROPED CLASS_NAMED.

14 fields:

offsetnameclass
0PROP_TABLECLASS_PROPED
1NAMED_NAMECLASS_NAMED
2SYSDATA_MODE_DICTCLASS_SYSTEM_DATA
3SYSDATA_SYMBOLDICTCLASS_SYSTEM_DATA
4SYSDATA_KEYWDICTCLASS_SYSTEM_DATA
5SYSDATA_PASS_DICTCLASS_SYSTEM_DATA
6SYSDATA_STDOUTCLASS_SYSTEM_DATA
7SYSDATA_STDERRCLASS_SYSTEM_DATA
8SYSDATA_DUMPFILECLASS_SYSTEM_DATA
9SYSDATA_SRC_LOC_FILE_DICTCLASS_SYSTEM_DATA
10SYSDATA___SPARE1CLASS_SYSTEM_DATA
11SYSDATA___SPARE2CLASS_SYSTEM_DATA
12SYSDATA___SPARE3CLASS_SYSTEM_DATA
13SYSDATA___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.269 CLASS_VALUE_BINDING

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

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.270 CLASS_VALUE_DESCRIPTOR

Class defined at file ‘warmelt-base.melt’, line 2013.

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.271 CLASS_VARIABLE_BINDING

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

3 ancestors: CLASS_ROOT CLASS_ANY_BINDING CLASS_FIXED_BINDING.

2 fields:

offsetnameclass
0BINDERCLASS_ANY_BINDING
1FIXBIND_DATACLASS_FIXED_BINDING

1 sub-classes: CLASS_NORMAL_MODULE_VARIABLE_BINDING.

class description: The internal CLASS_VARIABLE_BINDING is for module variable bindings. See the DEFVAR macro.


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

1.3.272 CLASS_VARISIZED_VALUE_DESCRIPTOR

Class defined at file ‘warmelt-base.melt’, line 2041.

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 479 primitives.


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

1.4.1 !=

Primitive defined at file ‘warmelt-first.melt’, line 1105.

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 289.

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 438.

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 482.

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 1450.

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 !=S-CASE

Primitive defined at file ‘warmelt-first.melt’, line 1457.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that S1 and S2 are not both string equal values, ignoring case.


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

1.4.7 %I

Primitive defined at file ‘warmelt-first.melt’, line 1167.

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.8 %IRAW

Primitive defined at file ‘warmelt-first.melt’, line 1170.

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.9 %IVI

Primitive defined at file ‘warmelt-base.melt’, line 405.

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.10 *I

Primitive defined at file ‘warmelt-base.melt’, line 306.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary product of A and B.


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

1.4.11 *IVI

Primitive defined at file ‘warmelt-base.melt’, line 387.

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.12 +I

Primitive defined at file ‘warmelt-first.melt’, line 1162.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary addition of A and B.


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

1.4.13 +IVI

Primitive defined at file ‘warmelt-base.melt’, line 368.

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.14 -I

Primitive defined at file ‘warmelt-base.melt’, line 303.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary substraction of A and B.


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

1.4.15 -IVI

Primitive defined at file ‘warmelt-base.melt’, line 378.

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.16 /I

Primitive defined at file ‘warmelt-first.melt’, line 1165.

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.17 /IRAW

Primitive defined at file ‘warmelt-first.melt’, line 1169.

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.18 /IVI

Primitive defined at file ‘warmelt-base.melt’, line 396.

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.19 <=I

Primitive defined at file ‘warmelt-base.melt’, line 282.

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.20 <=IV

Primitive defined at file ‘warmelt-base.melt’, line 422.

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.21 <=IVI

Primitive defined at file ‘warmelt-base.melt’, line 466.

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.22 <I

Primitive defined at file ‘warmelt-first.melt’, line 1155.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A less than B.


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

1.4.23 <IV

Primitive defined at file ‘warmelt-base.melt’, line 414.

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.24 <IVI

Primitive defined at file ‘warmelt-base.melt’, line 462.

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.25 ==

Primitive defined at file ‘warmelt-first.melt’, line 1102.

result type: LONG

primitive formals:

indextypename
0VALUEA
1VALUEB

primitive description: Test identity of values A and B.


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

1.4.26 ==BB

Primitive defined at file ‘libmelt-ana-base.melt’, line 739.

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.27 ==E

Primitive defined at file ‘libmelt-ana-base.melt’, line 467.

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.28 ==G

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 70.

result type: LONG

primitive formals:

indextypename
0GIMPLEG1
1GIMPLEG2

primitive description: Equality of gimples G1 & G2


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

1.4.29 ==I

Primitive defined at file ‘warmelt-base.melt’, line 285.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A is equal to B.


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

1.4.30 ==S

Primitive defined at file ‘warmelt-first.melt’, line 1447.

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.31 ==S-CASE

Primitive defined at file ‘warmelt-first.melt’, line 1454.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that S1 and S2 are both string values and are equal, ignoring case.


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

1.4.32 ==T

Primitive defined at file ‘libmelt-ana-tree.melt’, line 127.

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.33 =IV

Primitive defined at file ‘warmelt-base.melt’, line 430.

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.34 =IVI

Primitive defined at file ‘warmelt-base.melt’, line 478.

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.35 >=I

Primitive defined at file ‘warmelt-first.melt’, line 1159.

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.36 >=IV

Primitive defined at file ‘warmelt-base.melt’, line 454.

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.37 >=IVI

Primitive defined at file ‘warmelt-base.melt’, line 474.

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.38 >I

Primitive defined at file ‘warmelt-first.melt’, line 1157.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer test that A greater than B.


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

1.4.39 >IV

Primitive defined at file ‘warmelt-base.melt’, line 446.

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.40 >IVI

Primitive defined at file ‘warmelt-base.melt’, line 470.

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.41 ADD2OUT_CCOMCONST

Primitive defined at file ‘warmelt-base.melt’, line 1519.

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.42 ADD2OUT_CCOMSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1513.

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.43 ADD2OUT_CCOMSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1507.

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.44 ADD2OUT_CENCONST

Primitive defined at file ‘warmelt-base.melt’, line 1498.

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.45 ADD2OUT_CENCSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1502.

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.46 ADD2OUT_CENCSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1485.

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.47 ADD2OUT_CENCSUBSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1491.

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.48 ADD2OUT_CIDENT

Primitive defined at file ‘warmelt-base.melt’, line 1525.

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.49 ADD2OUT_CIDENTPREFIX

Primitive defined at file ‘warmelt-base.melt’, line 1533.

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.50 ADD2OUT_DOUBLE

Primitive defined at file ‘warmelt-base.melt’, line 1450.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1DOUBLEX

primitive description: Add to output OUT the double X.


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

1.4.51 ADD2OUT_INDENT

Primitive defined at file ‘warmelt-base.melt’, line 1466.

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.52 ADD2OUT_INDENTNL

Primitive defined at file ‘warmelt-base.melt’, line 1473.

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.53 ADD2OUT_LONGDEC

Primitive defined at file ‘warmelt-base.melt’, line 1541.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGNUM

primitive description: Add to OUT the number NUM in decimal.


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

1.4.54 ADD2OUT_LONGHEX

Primitive defined at file ‘warmelt-base.melt’, line 1546.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LONGNUM

primitive description: Add to OUT the number NUM in hex.


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

1.4.55 ADD2OUT_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 1436.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEMIXL

primitive description: Add to output OUT the mixed location MIXL.


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

1.4.56 ADD2OUT_ROUTINEDESCR

Primitive defined at file ‘warmelt-base.melt’, line 1551.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEROUT

primitive description: Add to OUT the routine desscriptor ROUT.


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

1.4.57 ADD2OUT_SBUF

Primitive defined at file ‘warmelt-base.melt’, line 1480.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUEASBUF

primitive description: Add to output OUT the stringbuffer ASBUF.


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

1.4.58 ADD2OUT_STRCONST

Primitive defined at file ‘warmelt-base.melt’, line 1427.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1CSTRINGSTR

primitive description: Add to output OUT the cstring STR.


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

1.4.59 ADD2OUT_STRING

Primitive defined at file ‘warmelt-base.melt’, line 1431.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1VALUESTR

primitive description: Add to output OUT the string value STR.


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

1.4.60 ADD2OUT_UTF8JSON_ENCSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1338.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR

primitive description: Add into stringbuffer SBUF the content of string STR with JSONUTF8 encoding.


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

1.4.61 ADD2SBUF_CCOMCONST

Primitive defined at file ‘warmelt-base.melt’, line 1365.

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.62 ADD2SBUF_CCOMSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1359.

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 */.


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

1.4.63 ADD2SBUF_CCOMSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1353.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR

primitive description: Add into stringbuffer SBUF the content of string STR with C-comment encoding, i.e. avoiding */.


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

1.4.64 ADD2SBUF_CENCSTRBUF

Primitive defined at file ‘warmelt-base.melt’, line 1347.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEASBUF

primitive description: Add into stringbuffer SBUF the content of stringbuffer ASBUF with C encoding.


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

1.4.65 ADD2SBUF_CENCSTRING

Primitive defined at file ‘warmelt-base.melt’, line 1332.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR

primitive description: Add into stringbuffer SBUF the content of string STR with C encoding.


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

1.4.66 ADD2SBUF_CIDENT

Primitive defined at file ‘warmelt-base.melt’, line 1373.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR

primitive description: Add into stringbuffer SBUF the string STR as a C identifier so nonalphanum replaced by _.


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

1.4.67 ADD2SBUF_CIDENTPREFIX

Primitive defined at file ‘warmelt-base.melt’, line 1381.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR
2LONGPREFLEN

primitive description: Add into stringbuffer SBUF the prefix string STR as a C identifier so nonalphanum replaced by _ limited by PREFLEN.


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

1.4.68 ADD2SBUF_DYNLOADED_SUFFIX

Primitive defined at file ‘warmelt-base.melt’, line 1269.

result type: VOID

primitive formals:

indextypename
0VALUESBUF

primitive description: Add into stringbuffer SBUF the MELT_DYNLOADED_SUFFIX constant string.


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

1.4.69 ADD2SBUF_INDENT

Primitive defined at file ‘warmelt-base.melt’, line 1313.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGDEPTH

primitive description: Add into stringbuffer SBUF an indentation of given DEPTH or a space.


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

1.4.70 ADD2SBUF_INDENTNL

Primitive defined at file ‘warmelt-base.melt’, line 1319.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGDEPTH

primitive description: Add into stringbuffer SBUF an indented newline of given DEPTH.


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

1.4.71 ADD2SBUF_LONGDEC

Primitive defined at file ‘warmelt-base.melt’, line 1388.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGNUM

primitive description: Add into stringbuffer SBUF the number NUM in decimal.


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

1.4.72 ADD2SBUF_LONGHEX

Primitive defined at file ‘warmelt-base.melt’, line 1393.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGNUM

primitive description: Add into stringbuffer SBUF the number NUM in hexa.


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

1.4.73 ADD2SBUF_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 1282.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEMIXL

primitive description: Add into stringbuffer SBUF the mixed loc MIXL.


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

1.4.74 ADD2SBUF_ROUTINEDESCR

Primitive defined at file ‘warmelt-base.melt’, line 1398.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEROUT

primitive description: Add into stringbuffer SBUF the routine descriptor ROUT.


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

1.4.75 ADD2SBUF_SBUF

Primitive defined at file ‘warmelt-base.melt’, line 1325.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEASBUF

primitive description: Add into stringbuffer SBUF the content of stringbuffer ASBUF.


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

1.4.76 ADD2SBUF_SHORT_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 1294.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEMIXL

primitive description: Add into stringbuffer SBUF the mixed loc MIXL in short form.


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

1.4.77 ADD2SBUF_STRCONST

Primitive defined at file ‘warmelt-base.melt’, line 1264.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1CSTRINGSTR

primitive description: Add into stringbuffer SBUF the constant string STR.


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

1.4.78 ADD2SBUF_STRING

Primitive defined at file ‘warmelt-base.melt’, line 1275.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUESTR

primitive description: Add into stringbuffer SBUF the string value STR.


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

1.4.79 ADD2SBUF_TEXI_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 1303.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEMIXL

primitive description: Add into stringbuffer SBUF the mixed loc MIXL in texinfo form.


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

1.4.80 ANDI

Primitive defined at file ‘warmelt-base.melt’, line 308.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary bitwise and of A and B.


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

1.4.81 ARITY_TREE_CALL_EXPR

Primitive defined at file ‘libmelt-ana-tree.melt’, line 2935.

result type: LONG

primitive formals:

indextypename
0TREETR_CALL

primitive description: Gives the arity i.e. number of arguments of a CALL_EXPR tree or else -1. See also NTH_ARG_TREE_CALL_EXPR and ARITY_TREE_CALL_EXPR


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

1.4.82 ASSERT_FAILED

Primitive defined at file ‘warmelt-first.melt’, line 1261.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1CSTRINGFILENAME
2LONGLINENO

primitive description: Internally used by ASSERT_MSG macro. Runtime assert failed with message MSG in file FILENAME at line LINENO.


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

1.4.83 BASICBLOCK_CONTENT

Primitive defined at file ‘libmelt-ana-base.melt’, line 759.

result type: BASIC_BLOCK

primitive formals:

indextypename
0VALUEV

primitive description: Safely retrieve the raw basic_block inside value V


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

1.4.84 BASICBLOCK_GIMPLESEQ

Primitive defined at file ‘libmelt-ana-base.melt’, line 763.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0VALUEV

primitive description: Safely retrieve the sequence of statements inside a boxed basic block value V.


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

1.4.85 BASICBLOCK_INDEX

Primitive defined at file ‘libmelt-ana-base.melt’, line 751.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: Gives the index of a basic block.


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

1.4.86 BASICBLOCK_PHINODES

Primitive defined at file ‘libmelt-ana-base.melt’, line 768.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0VALUEV

primitive description: Safely retrieve the phinodes, if any, inside a boxed basic block value V.


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

1.4.87 BUCKETLONG_AUX

Primitive defined at file ‘warmelt-first.melt’, line 1929.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK

primitive description: Safely retrieve from bucket of longs BUCK the auxiliary data value, or else nil.


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

1.4.88 BUCKETLONG_COUNT

Primitive defined at file ‘warmelt-first.melt’, line 1952.

result type: LONG

primitive formals:

indextypename
0VALUEBUCK

primitive description: Safely retrieve from bucket of longs BUCK the used count of entries, or else 0.


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

1.4.89 BUCKETLONG_GET

Primitive defined at file ‘warmelt-first.melt’, line 1924.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK
1LONGKEY

primitive description: Safely retrieve from bucket of longs BUCK the value, if any, associated to KEY, or else nil.


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

1.4.90 BUCKETLONG_NTH_KEY

Primitive defined at file ‘warmelt-first.melt’, line 1963.

result type: LONG

primitive formals:

indextypename
0VALUEBUCK
1LONGN

primitive description: Safely retrieve from bucket of longs BUCK the N-th key or else 0


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

1.4.91 BUCKETLONG_NTH_VAL

Primitive defined at file ‘warmelt-first.melt’, line 1968.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK
1LONGN

primitive description: Safely retrieve from bucket of longs BUCK the N-th value or else 0


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

1.4.92 BUCKETLONG_PUT

Primitive defined at file ‘warmelt-first.melt’, line 1981.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK
1LONGKEY
2VALUEVAL

primitive description: Safely put in bucket of longs BUCK a given KEY associated to VAL. Return the bucket, or a grown one on successful put, nil otherwise.


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

1.4.93 BUCKETLONG_REMOVE

Primitive defined at file ‘warmelt-first.melt’, line 1989.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK
1LONGKEY

primitive description: Safely remove in bucket of longs BUCK a given KEY. Return the bucket, or a shrinked one on successful remove, nil otherwise.


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

1.4.94 BUCKETLONG_REPLACE

Primitive defined at file ‘warmelt-first.melt’, line 1973.

result type: VALUE

primitive formals:

indextypename
0VALUEBUCK
1LONGKEY
2VALUEVAL

primitive description: Safely replace in bucket of longs BUCK a given KEY associated to VAL. Don’t change BUCK if KEY wasn’t found. Return former value, or else nil.


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

1.4.95 BUCKETLONG_SETAUX

Primitive defined at file ‘warmelt-first.melt’, line 1946.

result type: VOID

primitive formals:

indextypename
0VALUEBUCK
1VALUEAUX

primitive description: Safely set in bucket of longs BUCK the auxiliary data to AUX.


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

1.4.96 BUCKETLONG_SETXNUM

Primitive defined at file ‘warmelt-first.melt’, line 1940.

result type: VOID

primitive formals:

indextypename
0VALUEBUCK
1LONGN

primitive description: Safely set in bucket of longs BUCK the extra number to N.


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

1.4.97 BUCKETLONG_SIZE

Primitive defined at file ‘warmelt-first.melt’, line 1957.

result type: LONG

primitive formals:

indextypename
0VALUEBUCK

primitive description: Safely retrieve from bucket of longs BUCK the allocated size for entries, or else 0.


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

1.4.98 BUCKETLONG_XNUM

Primitive defined at file ‘warmelt-first.melt’, line 1935.

result type: LONG

primitive formals:

indextypename
0VALUEBUCK

primitive description: Safely retrieve from bucket of longs BUCK the extra number, or else 0.


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

1.4.99 BUILD_CASE_LABEL

Primitive defined at file ‘libmelt-ana-tree.melt’, line 667.

result type: TREE

primitive formals:

indextypename
0TREETCLOW
1TREETCHIGH
2TREETLABEL

primitive description: Build a case label with its low TCLOW, high TCHIGH, and label TLABEL sub-trees.


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

1.4.100 BUILD_IDENTIFIER_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 300.

result type: TREE

primitive formals:

indextypename
0VALUENAME

primitive description: Create and returns a new IDENTIFIER_NODE tree whose name is NAME.


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

1.4.101 BUILD_INT_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 316.

result type: TREE

primitive formals:

indextypename
0VALUEINT_VALUE

primitive description: Create and returns a new INTEGER_CST tree whose value is INT_VALUE and type is the default language integer type.


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

1.4.102 BUILD_STRING_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 307.

result type: TREE

primitive formals:

indextypename
0VALUESTRING_VALUE

primitive description: Create and returns a new STRING_CST tree whose value is STRING_VALUE.


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

1.4.103 CALCULATE_DOMINANCE_INFO_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 829.

result type: VOID

primitive description: This primitive is internally called, user doesn’t need it. Build the struct containing dominance info. This struct is necessary to use others dominance related function. This function is unsafe because it does not register any future call to free_dominance_info.


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

1.4.104 CALCULATE_POST_DOMINANCE_INFO_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 838.

result type: VOID

primitive description: This primitive is internally called, user doesn’t need it. Build the struct containing post dominance info. This struct is necessary to use other dominance related function. This function is unsafe because it does not register any future call to free_dominance_info.


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

1.4.105 CBREAK_MSG

Primitive defined at file ‘warmelt-base.melt’, line 253.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG

primitive description: Low level primitive for GDB breakpoints. Use it temporarily, given a string MSG, with gdb when desperate.


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

1.4.106 CHECKCALLSTACK_MSG

Primitive defined at file ‘warmelt-base.melt’, line 121.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG

primitive description: Low level costly primitive to check the entire call stack to help hunt memory or GC bugs. Displays the given MSG if the check went wrong. Use it when desperate.


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

1.4.107 CHECKVAL_DBG

Primitive defined at file ‘warmelt-base.melt’, line 920.

result type: VOID

primitive formals:

indextypename
0VALUEVAL
1CSTRINGMSG

primitive description: Low-level costly check of value VAL with message MSG. Mostly useful for gurus.


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

1.4.108 CLONE_WITH_DISCRIMINANT

Primitive defined at file ‘warmelt-first.melt’, line 4605.

result type: VALUE

primitive formals:

indextypename
0VALUEVAL
1VALUEDISCR

primitive description: Clone value VAL with new discriminant DISCR. Gives the original VAL when cloning is not possible. For objects, make a new one copying the common fields. See the VALDESC_CLONECHUNK field in CLASS_VALUE_DESCRIPTOR. The primitive’s code is generated.


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

1.4.109 CLOSURE_NTH

Primitive defined at file ‘warmelt-first.melt’, line 1758.

result type: VALUE

primitive formals:

indextypename
0VALUECLO
1LONGIX

primitive description: Retrieve in closure value CLO its component of index IX.


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

1.4.110 CLOSURE_ROUTINE

Primitive defined at file ‘warmelt-first.melt’, line 1755.

result type: VALUE

primitive formals:

indextypename
0VALUECLO

primitive description: Give the routine value inside a closure value CLO or else null.


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

1.4.111 CLOSURE_SIZE

Primitive defined at file ‘warmelt-first.melt’, line 1752.

result type: LONG

primitive formals:

indextypename
0VALUECLO

primitive description: Give the size of a closure value CLO, i.e. the number of closed values.


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

1.4.112 CPU_TIME_MILLISEC

Primitive defined at file ‘warmelt-base.melt’, line 271.

result type: LONG

primitive description: Get the CPU time in milliseconds.


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

1.4.113 CREATE_KEYWORDSTR

Primitive defined at file ‘warmelt-first.melt’, line 1146.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV

primitive description: Retrieve an existing keyword of given string value STRV or create it if not found.


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

1.4.114 CREATE_SYMBOLSTR

Primitive defined at file ‘warmelt-first.melt’, line 1131.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV

primitive description: Retrieve an existing symbol of given string value STRV or create it if not found. Use HOOK_NAMED_SYMBOL.


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

1.4.115 CSTRING_IS_NULL

Primitive defined at file ‘warmelt-first.melt’, line 1418.

result type: LONG

primitive formals:

indextypename
0CSTRINGS

primitive description: Test ia the cstring S is NULL


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

1.4.116 CSTRING_LENGTH

Primitive defined at file ‘warmelt-base.melt’, line 1876.

result type: LONG

primitive formals:

indextypename
0CSTRINGCSTR

primitive description: Compute safely the length a C-string CSTR. Gives 0 if null argument.


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

1.4.117 CSTRING_NON_EMPTY

Primitive defined at file ‘warmelt-first.melt’, line 1423.

result type: LONG

primitive formals:

indextypename
0CSTRINGS

primitive description: Test ia the cstring S is not NULL and not empty


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

1.4.118 C_CLOCK

Primitive defined at file ‘warmelt-base.melt’, line 263.

result type: LONG

primitive description: Get the current cpu clock(3) in microseconds.


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

1.4.119 C_TIME

Primitive defined at file ‘warmelt-base.melt’, line 259.

result type: LONG

primitive description: Get the current time(2) since Unix epoch in seconds.


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

1.4.120 DEBUGCSTRING

Primitive defined at file ‘warmelt-base.melt’, line 926.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1CSTRINGSTR

primitive description: Debug cstring MSG STR.


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

1.4.121 DEBUGLONG

Primitive defined at file ‘warmelt-base.melt’, line 930.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1LONGNUM

primitive description: Debug long stuff with MSG and number NUM.


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

1.4.122 DEBUG_DEPTH

Primitive defined at file ‘warmelt-debug.melt’, line 64.

result type: LONG

primitive description: The default MELT debug depth, as passed by -fmelt-debug-depth or -fplugin-arg-melt-debug-depth program argument.


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

1.4.123 DEBUG_DOMINANCE_INFO

Primitive defined at file ‘libmelt-ana-base.melt’, line 874.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG

primitive description: Debug-print the dominance information.


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

1.4.124 DEBUG_POST_DOMINANCE_INFO

Primitive defined at file ‘libmelt-ana-base.melt’, line 889.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG

primitive description: Debug-print the post dominance information.


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

1.4.125 DISCRIM

Primitive defined at file ‘warmelt-first.melt’, line 1084.

result type: VALUE

primitive formals:

indextypename
0VALUEV

primitive description: Safely gives the discriminant of a value (even if it is null).


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

1.4.126 DOMINATED_BY_OTHER_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 938.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBBA
1BASIC_BLOCKBBB

primitive description: It doesn’t check that dominance info is built, use dominated_by_other instead.


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

1.4.127 EDGE_CONTENT

Primitive defined at file ‘libmelt-ana-base.melt’, line 459.

result type: EDGE

primitive formals:

indextypename
0VALUEVAL

primitive description: Retrieve the edge stuff from boxed edge value VAL.


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

1.4.128 ERRORMSG_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 708.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG

primitive description: Show a plain error with raw message string CMSG.


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

1.4.129 ERRORMSG_STRV

Primitive defined at file ‘warmelt-base.melt’, line 724.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG
1VALUESTRV

primitive description: Show a plain error with raw message string CMSG and string value STRV.


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

1.4.130 ERROR_AT_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3520.

result type: VOID

primitive formals:

indextypename
0GIMPLEG
1CSTRINGMSG

primitive description: ERROR_AT_GIMPLE issue a warning at location of gimple G with string MSG.


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

1.4.131 ERROR_AT_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 158.

result type: VOID

primitive formals:

indextypename
0TREETR
1CSTRINGMSG

primitive description: ERROR_AT_TREE give a warning at location of tree TR with message MSG


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

1.4.132 ERROR_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 686.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG

primitive description: Show a plain error at boxed location LOC with raw message string CMSG.


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

1.4.133 ERROR_STRV

Primitive defined at file ‘warmelt-base.melt’, line 680.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG
2VALUESTRV

primitive description: Show an error at boxed location LOC with raw message string CMSG and string value STRV.


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

1.4.134 FULL_GARBCOLL

Primitive defined at file ‘warmelt-base.melt’, line 114.

result type: VOID

primitive formals:

indextypename
0LONGSIZ

primitive description: Force a full MELT garbage collection. The SIZ is the amount of memory to reserve.


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

1.4.135 GENERATE_FLAVORED_MELT_MODULE

Primitive defined at file ‘warmelt-base.melt’, line 1137.

result type: VOID

primitive formals:

indextypename
0VALUESRC
1VALUEOUTNAM
2VALUEFLAVOR

primitive description: Generate and load a module of given FLAVOR whose source is named after SRC and whose binary is named after OUTNAM without any MELT_DYNLOADED_SUFFIX.


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

1.4.136 GET_GLOBPREDEF

Primitive defined at file ‘warmelt-base.melt’, line 77.

result type: VALUE

primitive formals:

indextypename
0LONGIX

primitive description: Safely gives the predefined of index IX or null.


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

1.4.137 GET_IMMEDIATE_DOMINATOR_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 905.

result type: BASIC_BLOCK

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: It doesn’t check that dominance info are build, use get_immediate_dominator instead.


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

1.4.138 GET_IMMEDIATE_POST_DOMINATOR_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 921.

result type: BASIC_BLOCK

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: It doesn’t check that post_dominance info are build, use get_immediate_post_dominator instead.


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

1.4.139 GET_INT

Primitive defined at file ‘warmelt-first.melt’, line 1089.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Safely gets the integer number inside V, a boxed or mixed integer, or an object.


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

1.4.140 GET_KEYWORDSTR

Primitive defined at file ‘warmelt-first.melt’, line 1142.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV

primitive description: Get an existing keyword of given string value STRV or null if not found. Use HOOK_NAMED_KEYWORD


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

1.4.141 GET_RAW_SYMBOL

Primitive defined at file ‘warmelt-first.melt’, line 1136.

result type: VALUE

primitive formals:

indextypename
0CSTRINGCSTR

primitive description: Get an existing symbol of given cstring CSTR or else null. Use HOOK_NAMED_SYMBOL.


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

1.4.142 GET_SYMBOLSTR

Primitive defined at file ‘warmelt-first.melt’, line 1127.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV

primitive description: Get an existing symbol of given string value STRV or null if not found. Use HOOK_NAMED_SYMBOL.


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

1.4.143 GIMPLESEQ_CONTENT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3534.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0VALUEV

primitive description: GIMPLESEQ_CONTENT safely retrieve the gimpleseq inside boxed value V


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

1.4.144 GIMPLE_BUILD_ASSIGN_CONVERT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 270.

result type: GIMPLE

primitive formals:

indextypename
0TREETLHS
1TREETRHS

primitive description: Build a gimple to assign and convert to TLHS the tree TRHS, if both are non-null.


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

1.4.145 GIMPLE_BUILD_ASSIGN_FIX_TRUNC

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 298.

result type: GIMPLE

primitive formals:

indextypename
0TREETLHS
1TREETRHS

primitive description: Build a gimple to assign and fixed truncation to TLHS the tree TRHS, if both are non-null.


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

1.4.146 GIMPLE_BUILD_ASSIGN_FLOAT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 313.

result type: GIMPLE

primitive formals:

indextypename
0TREETLHS
1TREETRHS

primitive description: Build a gimple to assign the conversion to float TLHS the tree TRHS, if both are non-null.


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

1.4.147 GIMPLE_BUILD_ASSIGN_VIEW_CONVERT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 284.

result type: GIMPLE

primitive formals:

indextypename
0TREETLHS
1TREETRHS

primitive description: Build a gimple to assign and view convert to TLHS the tree TRHS, if both are non-null.


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

1.4.148 GIMPLE_BUILD_RETURN

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3713.

result type: GIMPLE

primitive formals:

indextypename
0TREETR

primitive description: Build a gimple to return TR, if non-null.


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

1.4.149 GIMPLE_CALL_NTH_ARG

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 2796.

result type: TREE

primitive formals:

indextypename
0GIMPLEGC
1LONGN

primitive description: Safely retrieve in gimple call GC its N-th argument.


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

1.4.150 GIMPLE_CONTENT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 66.

result type: GIMPLE

primitive formals:

indextypename
0VALUEV

primitive description: Retrieve the gimple stuff inside boxed gimple V or else NULL


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

1.4.151 GIMPLE_COPY

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 92.

result type: GIMPLE

primitive formals:

indextypename
0GIMPLEG

primitive description: Copy gimple stuff G.


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

1.4.152 GIMPLE_PHI_NTH_ARG_DEF

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3462.

result type: TREE

primitive formals:

indextypename
0GIMPLEG
1LONGN

primitive description: GIMPLE_PHI_NTH_ARG_DEF safely retrieve from gimple G the N-th argdef of a gimple phinode.


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

1.4.153 GIMPLE_PHI_NTH_ARG_EDGE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3470.

result type: EDGE

primitive formals:

indextypename
0GIMPLEG
1LONGN

primitive description: GIMPLE_PHI_NTH_ARG_EDGE safely retrieve from gimple G the N-th edge of a gimple phinode.


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

1.4.154 GIMPLE_SEQ_ADD_SEQ

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3635.

result type: VOID

primitive formals:

indextypename
0GIMPLE_SEQGSDST
1GIMPLE_SEQGSSRC

primitive description: Append to gimple seq GSDST the elements of gimple seq GSSRC. May change and allocate GSDST if it was null.


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

1.4.155 GIMPLE_SEQ_ADD_STMT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3630.

result type: VOID

primitive formals:

indextypename
0GIMPLE_SEQGS
1GIMPLEG

primitive description: Add to gimple seq GS the gimple G. May change and allocate GS if it was NULL.


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

1.4.156 GIMPLE_SEQ_ALLOC_WITH_STMT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3646.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0GIMPLEG

primitive description: Allocate a new raw gimple sequence containing the gimple statement G. GCC may use cached free gimple sequences.


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

1.4.157 GIMPLE_SEQ_BOXED_ADD_SEQ

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3661.

result type: VOID

primitive formals:

indextypename
0VALUEBGS
1GIMPLE_SEQGS

primitive description: Add to end of boxed gimple_seq BGS the gimple_seq GS. May fill BGS if it contained a null gimple_seq.


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

1.4.158 GIMPLE_SEQ_BOXED_ADD_STMT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3652.

result type: VOID

primitive formals:

indextypename
0VALUEBGS
1GIMPLEG

primitive description: Add to end of boxed gimple_seq BGS the gimple G. May fill BGS if it contained a null gimple_seq.


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

1.4.159 GIMPLE_SEQ_COPY

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3641.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0GIMPLE_SEQGS

primitive description: Return a deep copy of gimple_seq GS.


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

1.4.160 GIMPLE_SEQ_FIRST_STMT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 83.

result type: GIMPLE

primitive formals:

indextypename
0GIMPLE_SEQGS

primitive description: Retrieve the first gimple inside basic block BB or null.


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

1.4.161 GIMPLE_SEQ_LAST_STMT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 87.

result type: GIMPLE

primitive formals:

indextypename
0GIMPLE_SEQGS

primitive description: Retrieve the last gimple inside basic block BB or null.


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

1.4.162 GIMPLE_SEQ_OF_BASIC_BLOCK

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 79.

result type: GIMPLE_SEQ

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: Retrieve the gimple seq inside basic block BB or null.


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

1.4.163 GIMPLE_SWITCH_INDEX

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3270.

result type: TREE

primitive formals:

indextypename
0GIMPLEGS

primitive description: Retrieve the index of gimple switch GS.


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

1.4.164 GIMPLE_SWITCH_LABEL

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3292.

result type: TREE

primitive formals:

indextypename
0GIMPLEGS
1LONGN

primitive description: Safely retrieve in gimple switch GS the N-th label -with N positive or zero-.


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

1.4.165 GIMPLE_SWITCH_SET_INDEX

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3280.

result type: VOID

primitive formals:

indextypename
0GIMPLEGS
1TREETRIX

primitive description: In gimple switch GS set the index to TRIX.


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

1.4.166 GIMPLE_SWITCH_SET_LABEL

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3309.

result type: VOID

primitive formals:

indextypename
0GIMPLEGS
1LONGN
2TREETLAB

primitive description: Safely set in gimple switch GS the N-th label -with N positive or zero- to tree case label TLAB.


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

1.4.167 HOOK_DATA

Primitive defined at file ‘warmelt-first.melt’, line 1783.

result type: VALUE

primitive formals:

indextypename
0VALUEHK

primitive description: Return the data inside some hook HK or else nil.


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

1.4.168 HOOK_NAME

Primitive defined at file ‘warmelt-first.melt’, line 1789.

result type: VALUE

primitive formals:

indextypename
0VALUEHK

primitive description: Return the value string for the name of some hook HK or else nil.


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

1.4.169 HOOK_NTH

Primitive defined at file ‘warmelt-first.melt’, line 1780.

result type: VALUE

primitive formals:

indextypename
0VALUEHK
1LONGN

primitive description: Return from inside the hook HK its N-th value or else nil.


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

1.4.170 HOOK_PUT_DATA

Primitive defined at file ‘warmelt-first.melt’, line 1786.

result type: VOID

primitive formals:

indextypename
0VALUEHK
1VALUEDATA

primitive description: Safely put in hook HK the given DATA.


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

1.4.171 HOOK_SIZE

Primitive defined at file ‘warmelt-first.melt’, line 1777.

result type: LONG

primitive formals:

indextypename
0VALUEHK

primitive description: Return the checked size of a hook HK or else 0


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

1.4.172 IGNORE

Primitive defined at file ‘warmelt-first.melt’, line 4413.

result type: VOID

primitive formals:

indextypename
0VALUEV

primitive description: Ignore the value passed as argument. Useful to avoid translation warnings, or to force the type of a conditional. See CTYPE_VOID.


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

1.4.173 INCREMENT

Primitive defined at file ‘warmelt-base.melt’, line 3694.

result type: VOID

primitive formals:

indextypename
0LONGLEFT
1LONGINCR

primitive description: Increment LEFT (when variable) with INCR.


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

1.4.174 INFORMSG_LONG

Primitive defined at file ‘warmelt-first.melt’, line 1904.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1LONGN

primitive description: Show a plain notice with raw message string CMSG and number N.


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

1.4.175 INFORMSG_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 740.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG

primitive description: Show a plain notice with raw message string CMSG.


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

1.4.176 INFORMSG_STRV

Primitive defined at file ‘warmelt-first.melt’, line 1341.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG
1VALUESTRV

primitive description: Show a plain notice with raw message string CMSG and string value STRV.


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

1.4.177 INFORM_AT_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3504.

result type: VOID

primitive formals:

indextypename
0GIMPLEG
1CSTRINGMSG

primitive description: INFORM_AT_GIMPLE issue a notice at location of gimple G with string MSG.


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

1.4.178 INFORM_AT_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 135.

result type: VOID

primitive formals:

indextypename
0TREETR
1CSTRINGMSG

primitive description: INFORM_AT_TREE give a notice at location of tree TR with message MSG


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

1.4.179 INFORM_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 735.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG

primitive description: Show a plain warning at boxed location LOC with raw message string CMSG.


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

1.4.180 INFORM_STRV

Primitive defined at file ‘warmelt-base.melt’, line 731.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG
2VALUESTRV

primitive description: Show a notice at boxed location LOC with raw message string CMSG and string value STRV.


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

1.4.181 INSIDE_C_FRONTEND

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3513.

result type: LONG

primitive description: utility boolean primitive testing if we are indeed within a C or C++ compiler, outside of lto1 but inside cc1 or cc1plus.


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

1.4.182 ISNULL_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 735.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: Test if BB is the null raw basic block.


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

1.4.183 ISNULL_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 114.

result type: LONG

primitive formals:

indextypename
0TREETR

primitive description: ISNULL_TREE test if raw tree TR is null


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

1.4.184 IS_A

Primitive defined at file ‘warmelt-first.melt’, line 1065.

result type: LONG

primitive formals:

indextypename
0VALUEOBJ
1VALUECLA

primitive description: Test if OBJ is an instance of the CLA class [or a subclass]. Return 0 otherwise, e.g. when OBJ is not an object. See also IS_NOT_A.


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

1.4.185 IS_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 731.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test if V is a boxed basic block value.


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

1.4.186 IS_BUCKETLONG

Primitive defined at file ‘warmelt-first.melt’, line 1914.

result type: LONG

primitive formals:

indextypename
0VALUEBUCK

primitive description: Safely test if BUCK is a bucket associating sorted longs to values.


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

1.4.187 IS_CLOSURE

Primitive defined at file ‘warmelt-first.melt’, line 1749.

result type: LONG

primitive formals:

indextypename
0VALUECLO

primitive description: Test if value CLO is a closure, i.e. a functional value.


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

1.4.188 IS_DOMINANCE_INFO_AVAILABLE

Primitive defined at file ‘libmelt-ana-base.melt’, line 815.

result type: LONG

primitive description: Check if dominance info are already calculated. User normally doesn’t have to call this primitive, as MELT functions check if there is a need to use this.


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

1.4.189 IS_EDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 463.

result type: LONG

primitive formals:

indextypename
0VALUEVAL

primitive description: Test that VAL is indeed a boxed edge value.


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

1.4.190 IS_FILE

Primitive defined at file ‘warmelt-base.melt’, line 1259.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test if value V is a file.


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

1.4.191 IS_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 58.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test if value V is a boxed gimple.


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

1.4.192 IS_GIMPLESEQ

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3526.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: IS_GIMPLESEQ test if value V is a boxed gimpleseq


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

1.4.193 IS_HOOK

Primitive defined at file ‘warmelt-first.melt’, line 1774.

result type: LONG

primitive formals:

indextypename
0VALUEHK

primitive description: Test if value HK is a hook - a C/C++ callable closed c-function


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

1.4.194 IS_INTEGERBOX

Primitive defined at file ‘warmelt-first.melt’, line 1796.

result type: LONG

primitive formals:

indextypename
0VALUEIB

primitive description: Test if a value IB is a boxed integer.


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

1.4.195 IS_JSONOBJECT

Primitive defined at file ‘warmelt-first.melt’, line 1874.

result type: LONG

primitive formals:

indextypename
0VALUEVJ

primitive description: Test if value VJ is a JSONobject value.


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

1.4.196 IS_LIST

Primitive defined at file ‘warmelt-first.melt’, line 1824.

result type: LONG

primitive formals:

indextypename
0VALUELI

primitive description: Test if value LI is a list.


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

1.4.197 IS_LIST_OR_NULL

Primitive defined at file ‘warmelt-first.melt’, line 1827.

result type: LONG

primitive formals:

indextypename
0VALUELI

primitive description: Test iv value LI is null or a list.


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

1.4.198 IS_MAPBASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 1096.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if MAP is a map keyed by basicblocks.


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

1.4.199 IS_MAPEDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 477.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if MAP is a map keyed by edges.


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

1.4.200 IS_MAPGIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 97.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if MAP is a map of gimples.


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

1.4.201 IS_MAPLOOP

Primitive defined at file ‘libmelt-ana-base.melt’, line 548.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if MAP is a map of loops.


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

1.4.202 IS_MAPOBJECT

Primitive defined at file ‘warmelt-first.melt’, line 1526.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if given MAP is an object map.


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

1.4.203 IS_MAPSTRING

Primitive defined at file ‘warmelt-first.melt’, line 1625.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely test if MAP is a string-map.


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

1.4.204 IS_MAPTREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3334.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Test if MAP is a map of trees.


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

1.4.205 IS_MIXBIGINT

Primitive defined at file ‘warmelt-base.melt’, line 598.

result type: LONG

primitive formals:

indextypename
0VALUEMB

primitive description: Test if value MB is a mixed bigint.


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

1.4.206 IS_MIXINT

Primitive defined at file ‘warmelt-base.melt’, line 539.

result type: LONG

primitive formals:

indextypename
0VALUEMI

primitive description: Test if value MI is a mixedint value.


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

1.4.207 IS_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 563.

result type: LONG

primitive formals:

indextypename
0VALUEMI

primitive description: Test if value MI is a mixed location value.


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

1.4.208 IS_MULTIPLE

Primitive defined at file ‘warmelt-first.melt’, line 1500.

result type: LONG

primitive formals:

indextypename
0VALUEMUL

primitive description: Safely test if MUL is a tuple.


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

1.4.209 IS_MULTIPLE_OR_NULL

Primitive defined at file ‘warmelt-base.melt’, line 1180.

result type: LONG

primitive formals:

indextypename
0VALUEMUL

primitive description: Safely test if MUL is a tuple or null.


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

1.4.210 IS_NON_EMPTY_LIST

Primitive defined at file ‘warmelt-first.melt’, line 1832.

result type: LONG

primitive formals:

indextypename
0VALUELI

primitive description: Test if value LI is a non-empty list.


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

1.4.211 IS_NOT_A

Primitive defined at file ‘warmelt-first.melt’, line 1072.

result type: LONG

primitive formals:

indextypename
0VALUEOBJ
1VALUECLA

primitive description: Test if OBJ is not an instance of the CLA class [or a subclass]. Negation of IS_A.


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

1.4.212 IS_NOT_OBJECT

Primitive defined at file ‘warmelt-base.melt’, line 71.

result type: LONG

primitive formals:

indextypename
0VALUEOBJ

primitive description: Test if OBJ is not an object. Negation of IS_OBJECT.


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

1.4.213 IS_OBJECT

Primitive defined at file ‘warmelt-first.melt’, line 1078.

result type: LONG

primitive formals:

indextypename
0VALUEOBJ

primitive description: Test if OBJ is indeed an object. See also IS_NOT_OBJECT.


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

1.4.214 IS_OUT

Primitive defined at file ‘warmelt-base.melt’, line 1255.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test if value V is a output value (a stringbuffer or a file).


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

1.4.215 IS_PAIR

Primitive defined at file ‘warmelt-first.melt’, line 1881.

result type: LONG

primitive formals:

indextypename
0VALUEPA

primitive description: Test if a value PA is a pair.


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

1.4.216 IS_POST_DOMINANCE_INFO_AVAILABLE

Primitive defined at file ‘libmelt-ana-base.melt’, line 822.

result type: LONG

primitive description: Check if post dominance info are already calculated. User normally doesn’t have to call this primitive, as MELT functions check if there is a need to use this.


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

1.4.217 IS_ROUTINE

Primitive defined at file ‘warmelt-first.melt’, line 1728.

result type: LONG

primitive formals:

indextypename
0VALUEROU

primitive description: Test if value ROU is a routine.


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

1.4.218 IS_STRBUF

Primitive defined at file ‘warmelt-base.melt’, line 962.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test if value V is a stringbuffer.


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

1.4.219 IS_STRING

Primitive defined at file ‘warmelt-first.melt’, line 1435.

result type: LONG

primitive formals:

indextypename
0VALUESTR

primitive description: Test that STR is a string values.


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

1.4.220 IS_STRINGCONST

Primitive defined at file ‘warmelt-base.melt’, line 972.

result type: LONG

primitive formals:

indextypename
0VALUESTR
1CSTRINGCS

primitive description: Test that value string STR is the raw string constant CS.


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

1.4.221 IS_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 110.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: IS_TREE test if value V is a boxed tree


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

1.4.222 JSONOBJECT_AUX

Primitive defined at file ‘warmelt-base.melt’, line 4168.

result type: VALUE

primitive formals:

indextypename
0VALUEVJ

primitive description: retrieve the auxiliary value in a JSONobject VJ or else null.


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

1.4.223 JSONOBJECT_AUXPUT

Primitive defined at file ‘warmelt-base.melt’, line 4172.

result type: VOID

primitive formals:

indextypename
0VALUEVJ
1VALUEAUX

primitive description: In JSONobject VJ safely put the auxiliary data AUX.


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

1.4.224 JSONOBJECT_NTH_NAME

Primitive defined at file ‘warmelt-base.melt’, line 4181.

result type: VALUE

primitive formals:

indextypename
0VALUEVJ
1LONGRK

primitive description: in JSONobject VJ retrieve the name of rank RK - starting from end if RK is negative - or else nil.


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

1.4.225 JSONOBJECT_NTH_VALUE

Primitive defined at file ‘warmelt-base.melt’, line 4185.

result type: VALUE

primitive formals:

indextypename
0VALUEVJ
1LONGRK

primitive description: in JSONobject VJ retrieve the value of rank RK - starting from end if RK is negative - or else nil.


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

1.4.226 JSONOBJECT_SIZE

Primitive defined at file ‘warmelt-base.melt’, line 4177.

result type: LONG

primitive formals:

indextypename
0VALUEVJ

primitive description: size of JSONobject VJ or else 0.


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

1.4.227 LIST_APPEND

Primitive defined at file ‘warmelt-first.melt’, line 1855.

result type: VOID

primitive formals:

indextypename
0VALUELI
1VALUEEL

primitive description: Safely append to list value LI an element EL thru a new pair.


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

1.4.228 LIST_FIRST

Primitive defined at file ‘warmelt-first.melt’, line 1836.

result type: VALUE

primitive formals:

indextypename
0VALUELI

primitive description: Safely retrieve the first pair of list value LI, or null.


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

1.4.229 LIST_FIRST_ELEMENT

Primitive defined at file ‘warmelt-first.melt’, line 1844.

result type: VALUE

primitive formals:

indextypename
0VALUELI

primitive description: Safely retrieve the first element of list value LI, or null.


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

1.4.230 LIST_LAST

Primitive defined at file ‘warmelt-first.melt’, line 1840.

result type: VALUE

primitive formals:

indextypename
0VALUELI

primitive description: Safely retrieve the last pair of list value LI, or null.


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

1.4.231 LIST_LAST_ELEMENT

Primitive defined at file ‘warmelt-first.melt’, line 1848.

result type: VALUE

primitive formals:

indextypename
0VALUELI

primitive description: Safely retrieve the last element of list value LI, or null.


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

1.4.232 LIST_LENGTH

Primitive defined at file ‘warmelt-first.melt’, line 1851.

result type: LONG

primitive formals:

indextypename
0VALUELI

primitive description: Safely compute the length of list value LI, or else 0.


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

1.4.233 LIST_POP_FIRST

Primitive defined at file ‘warmelt-first.melt’, line 1863.

result type: VALUE

primitive formals:

indextypename
0VALUELI

primitive description: Pop the first element from a list LI and give it, or else null.


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

1.4.234 LIST_PREPEND

Primitive defined at file ‘warmelt-first.melt’, line 1859.

result type: VOID

primitive formals:

indextypename
0VALUELI
1VALUEEL

primitive description: Safely prepend to list value LI an element EL thru a new pair.


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

1.4.235 LONGBACKTRACE_DBG

Primitive defined at file ‘warmelt-base.melt’, line 915.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1LONGMAXDEPTH

primitive description: Detailed debug backtrace with message MSG up to MAXDEPTH.


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

1.4.236 LOOP_CAN_BE_PARALLEL

Primitive defined at file ‘libmelt-ana-base.melt’, line 668.

result type: LONG

primitive formals:

indextypename
0LOOPLO

primitive description: Test if loop LO can be parallel, as detected by Graphite analysis.


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

1.4.237 LOOP_DEPTH

Primitive defined at file ‘libmelt-ana-base.melt’, line 688.

result type: LONG

primitive formals:

indextypename
0LOOPLO

primitive description: The depth of loop LO


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

1.4.238 LOOP_HEADER

Primitive defined at file ‘libmelt-ana-base.melt’, line 672.

result type: BASIC_BLOCK

primitive formals:

indextypename
0LOOPLO

primitive description: The header if any of loop LO


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

1.4.239 LOOP_INDEX_NUMBER

Primitive defined at file ‘libmelt-ana-base.melt’, line 684.

result type: LONG

primitive formals:

indextypename
0LOOPLO

primitive description: The index number if any of loop LO


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

1.4.240 LOOP_INNER

Primitive defined at file ‘libmelt-ana-base.melt’, line 680.

result type: LOOP

primitive formals:

indextypename
0LOOPLO

primitive description: The inner if any of loop LO


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

1.4.241 LOOP_LATCH

Primitive defined at file ‘libmelt-ana-base.melt’, line 676.

result type: BASIC_BLOCK

primitive formals:

indextypename
0LOOPLO

primitive description: The latch if any of loop LO


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

1.4.242 MAIN_INPUT_FILENAME

Primitive defined at file ‘libmelt-ana-base.melt’, line 43.

result type: CSTRING

primitive description: The main input file name given to GCC thru MAIN_INPUT_FILENAME


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

1.4.243 MAKE_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 755.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1BASIC_BLOCKBB

primitive description: Box with given DISCR the raw basic_block BB into a value.


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

1.4.244 MAKE_BUCKETLONG

Primitive defined at file ‘warmelt-first.melt’, line 1919.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a new bucket of discriminant DISCR and length LEN - or else nil.


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

1.4.245 MAKE_EDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 455.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1EDGEEDG

primitive description: Box the edge stuff EDG with discriminant DISCR as a boxed edge value.


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

1.4.246 MAKE_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 62.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1GIMPLEG

primitive description: Make a boxed gimple of given DISCR and gimple G.


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

1.4.247 MAKE_GIMPLESEQ

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3530.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1GIMPLE_SEQGS

primitive description: MAKE_GIMPLESEQ build a boxed gimpleseq of given DISCR and gimpleseq GS


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

1.4.248 MAKE_GIMPLE_MIXLOC

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3621.

result type: VALUE

primitive formals:

indextypename
0GIMPLEG
1LONGNUM
2VALUEVAL
3VALUEDIS

primitive description: Make a mixed location for the location of gimple G with value VAL and discriminant DIS, usually DISCR_MIXED_LOCATION.


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

1.4.249 MAKE_INTEGERBOX

Primitive defined at file ‘warmelt-first.melt’, line 1801.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGN

primitive description: Make a boxed integer of given discrimant DISCR and integer N.


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

1.4.250 MAKE_LIST

Primitive defined at file ‘warmelt-first.melt’, line 1867.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR

primitive description: Make a new list value of given discriminant DISCR.


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

1.4.251 MAKE_LIST_FROM_PAIR

Primitive defined at file ‘warmelt-base.melt’, line 103.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1VALUEPAIR

primitive description: Make a new list value of given discriminant DISCR from some given PAIR, hence scan all the pairs to find the last one.


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

1.4.252 MAKE_MAPBASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 1111.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a map keyed by basic blocks, of given DISCR and allocated LEN.


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

1.4.253 MAKE_MAPEDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 492.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a new map of edges with DISCR and initial LEN.


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

1.4.254 MAKE_MAPGIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 112.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a map of gimple keys of given DISCR and LEN.


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

1.4.255 MAKE_MAPLOOP

Primitive defined at file ‘libmelt-ana-base.melt’, line 567.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a map of loops with given DISCR and estimated LEN.


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

1.4.256 MAKE_MAPOBJECT

Primitive defined at file ‘warmelt-first.melt’, line 1558.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make an object-map of discriminant DISCR and initial size LEN or null.


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

1.4.257 MAKE_MAPSTRING

Primitive defined at file ‘warmelt-first.melt’, line 1629.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a new string-map of discriminant DISCR and initial length LEN - or null if failed.


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

1.4.258 MAKE_MAPTREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3349.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLEN

primitive description: Make a map of trees with discriminant DISCR and initial size LEN.


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

1.4.259 MAKE_MIXINT

Primitive defined at file ‘warmelt-base.melt’, line 547.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUEVAL
2LONGNUM

primitive description: Make a mixint value of given discriminant DIS value VAL and number NUM or else null.


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

1.4.260 MAKE_MIXLOC

Primitive defined at file ‘warmelt-base.melt’, line 589.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUEVAL
2LONGNUM
3LONGLOC

primitive description: Make a mixed location value of given discriminant DIS value VAL number NUM opaque location number LOC.


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

1.4.261 MAKE_MULTIPLE

Primitive defined at file ‘warmelt-first.melt’, line 1504.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1LONGLN

primitive description: Make a tuple of given discriminant DISCR and length LN - gives null otherwise.


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

1.4.262 MAKE_PAIR

Primitive defined at file ‘warmelt-base.melt’, line 533.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1VALUEHD
2VALUETL

primitive description: Create a new pair of given discrimiant DISCR head HD and tail TL or else null.


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

1.4.263 MAKE_STRBUF

Primitive defined at file ‘warmelt-base.melt’, line 936.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR

primitive description: Make a new stringbuffer value of given DISCR - or null if bad DISCR.


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

1.4.264 MAKE_STRING

Primitive defined at file ‘warmelt-base.melt’, line 967.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESTR

primitive description: Make a new string of discriminant DIS from string value STR.


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

1.4.265 MAKE_STRINGCONST

Primitive defined at file ‘warmelt-first.melt’, line 1471.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1CSTRINGCSTR

primitive description: Make a new string of distriminant DIS from raw string constant CSTR.


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

1.4.266 MAKE_STRING_GENERATED_CC_FILENAME

Primitive defined at file ‘warmelt-base.melt’, line 1110.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUEBASESTR
2VALUEDIRSTR

primitive description: make a generated C++ file path of discriminant DIS with base BASESTR and directory DIRSTR adding a .c suffix.


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

1.4.267 MAKE_STRING_MIXLOC_FILE

Primitive defined at file ‘warmelt-base.melt’, line 583.

result type: VALUE

primitive formals:

indextypename
0VALUEMI
1VALUEDIS

primitive description: Retrieve the filename as a boxed string of a mixed location value MI.


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

1.4.268 MAKE_STRING_NAKEDBASENAME

Primitive defined at file ‘warmelt-base.melt’, line 1075.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESTR

primitive description: make a string value of discriminant DIS from the naked basename from file path STR.


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

1.4.269 MAKE_STRING_REAL_ACCESS_PATH

Primitive defined at file ‘warmelt-base.melt’, line 1119.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1CSTRINGFILEPATH

primitive description: Make a string value of discriminant DIS for the canonical real file path of FILEPATH if it is accessible, or else NULL.


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

1.4.270 MAKE_STRING_REAL_ACCESS_PATH_VALUE

Primitive defined at file ‘warmelt-base.melt’, line 1127.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUEFILEV

primitive description: Make a string value of discriminant DIS for the canonical real file path of string value FILEV if it is accessible, or else NULL.


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

1.4.271 MAKE_STRING_TEMPNAME_SUFFIXED

Primitive defined at file ‘warmelt-base.melt’, line 1081.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESTR
2CSTRINGSUFF

primitive description: make a naked temporary path of discriminant DIS for a basename STR with suffix SUFF.


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

1.4.272 MAKE_STRING_WITHOUT_DYNLOADED_SUFFIX

Primitive defined at file ‘warmelt-base.melt’, line 1100.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESTR

primitive description: Make a fresh copy with discriminant DIS of string STR removing the MELT_DYNLOADED_SUFFIX if it ends with it, or else a copy of STR.


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

1.4.273 MAKE_STRING_WITHOUT_SUFFIX

Primitive defined at file ‘warmelt-base.melt’, line 1090.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESTR
2CSTRINGSUFFIX

primitive description: Make a fresh copy with discriminant DIS of string STR removing the given SUFFIX if it ends with it, or else a copy of STR.


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

1.4.274 MAKE_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 119.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1TREETR

primitive description: MAKE_TREE build a boxed tree of given DISCR and tree TR


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

1.4.275 MAPBASICBLOCK_AUX

Primitive defined at file ‘libmelt-ana-base.melt’, line 1127.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve the auxiliary data of map of basic blocks MAP.


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

1.4.276 MAPBASICBLOCK_AUXPUT

Primitive defined at file ‘libmelt-ana-base.melt’, line 1132.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEAUX

primitive description: Safely put the auxiliary data of map of basic blocks MAP to AUX.


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

1.4.277 MAPBASICBLOCK_COUNT

Primitive defined at file ‘libmelt-ana-base.melt’, line 1103.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Retrieve the used count of a map of basicblocks.


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

1.4.278 MAPBASICBLOCK_GET

Primitive defined at file ‘libmelt-ana-base.melt’, line 1107.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1BASIC_BLOCKBB

primitive description: Safely get in a a basic block map MAP the value associated to basic block BB.


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

1.4.279 MAPBASICBLOCK_PUT

Primitive defined at file ‘libmelt-ana-base.melt’, line 1117.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1BASIC_BLOCKKEY
2VALUEVAL

primitive description: Put into map MAP the basic_block KEY associated to VAL.


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

1.4.280 MAPBASICBLOCK_REMOVE

Primitive defined at file ‘libmelt-ana-base.melt’, line 1122.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1BASIC_BLOCKKEY

primitive description: Remove from map MAP the entry for basic_block KEY.


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

1.4.281 MAPBASICBLOCK_SIZE

Primitive defined at file ‘libmelt-ana-base.melt’, line 1099.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Retrieve the allocated size of a basicblock map.


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

1.4.282 MAPEDGE_AUX

Primitive defined at file ‘libmelt-ana-base.melt’, line 505.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Retrieve the auxiliary data of edge map MAP.


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

1.4.283 MAPEDGE_AUXPUT

Primitive defined at file ‘libmelt-ana-base.melt’, line 509.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEAUX

primitive description: Put the auxiliary data of edge map MAP as AUX.


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

1.4.284 MAPEDGE_COUNT

Primitive defined at file ‘libmelt-ana-base.melt’, line 484.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Get the counted length of an edge map MAP.


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

1.4.285 MAPEDGE_GET

Primitive defined at file ‘libmelt-ana-base.melt’, line 488.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1EDGEED

primitive description: Get the value in edge map MAP associted to edge ED.


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

1.4.286 MAPEDGE_PUT

Primitive defined at file ‘libmelt-ana-base.melt’, line 496.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1EDGEEKEY
2VALUEVAL

primitive description: Safely put into map MAP the edge EKEY associated to value VAL.


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

1.4.287 MAPEDGE_REMOVE

Primitive defined at file ‘libmelt-ana-base.melt’, line 501.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1EDGEKEY

primitive description: Safely remove in map MAP the entry for edge EKEY.


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

1.4.288 MAPEDGE_SIZE

Primitive defined at file ‘libmelt-ana-base.melt’, line 480.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Get the allocated size of an edge map MAP.


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

1.4.289 MAPGIMPLE_AUX

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 127.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve the auxiliary data of map of gimples MAP.


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

1.4.290 MAPGIMPLE_AUXPUT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 132.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEAUX

primitive description: Safely put the auxiliary data of map of gimples MAP as AUX.


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

1.4.291 MAPGIMPLE_COUNT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 104.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Give the used count of a map of gimples MAP.


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

1.4.292 MAPGIMPLE_GET

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 108.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1GIMPLEG

primitive description: Safely get the value associated to gimple G in map of gimples MAP.


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

1.4.293 MAPGIMPLE_PUT

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 116.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1GIMPLEGKEY
2VALUEVAL

primitive description: Safely put in map of gimple MAP the gimple key GKEY associated to VAL.


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

1.4.294 MAPGIMPLE_REMOVE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 122.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1GIMPLEGKEY

primitive description: Safely remove in map of gimple MAP the entry for gimple key GKEY.


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

1.4.295 MAPGIMPLE_SIZE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 100.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Give the allocated size of a map of gimples MAP.


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

1.4.296 MAPLOOP_COUNT

Primitive defined at file ‘libmelt-ana-base.melt’, line 557.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Return used count of loop map MAP.


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

1.4.297 MAPLOOP_GET

Primitive defined at file ‘libmelt-ana-base.melt’, line 562.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1LOOPLO

primitive description: Safely get in MAP value associated to loop LO.


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

1.4.298 MAPLOOP_NTH_ATTR

Primitive defined at file ‘libmelt-ana-base.melt’, line 583.

result type: LOOP

primitive formals:

indextypename
0VALUEMAP
1LONGN

primitive description: Safely retrieve the in map of loops MAP the N loop key


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

1.4.299 MAPLOOP_NTH_VAL

Primitive defined at file ‘libmelt-ana-base.melt’, line 588.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1LONGN

primitive description: Safely retrieve the in map of loops MAP the N value


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

1.4.300 MAPLOOP_PUT

Primitive defined at file ‘libmelt-ana-base.melt’, line 572.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1LOOPKEYLO
2VALUEVAL

primitive description: Safely put in MAP loop KEYLO associated to VAL.


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

1.4.301 MAPLOOP_REMOVE

Primitive defined at file ‘libmelt-ana-base.melt’, line 578.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1LOOPKEYLO

primitive description: Safely remove in MAP entry for loop KEYLO


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

1.4.302 MAPLOOP_SIZE

Primitive defined at file ‘libmelt-ana-base.melt’, line 552.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Return allocated size of loop map MAP.


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

1.4.303 MAPOBJECT_AUX

Primitive defined at file ‘warmelt-first.melt’, line 1576.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely access the auxiliary data of object-map MAP.


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

1.4.304 MAPOBJECT_AUXPUT

Primitive defined at file ‘warmelt-first.melt’, line 1581.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEVAL

primitive description: Safely access the auxiliary data of object-map MAP.


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

1.4.305 MAPOBJECT_COUNT

Primitive defined at file ‘warmelt-first.melt’, line 1536.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve the count of given object-map MAP or else 0.


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

1.4.306 MAPOBJECT_GET

Primitive defined at file ‘warmelt-first.melt’, line 1552.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1VALUEATTR

primitive description: Safely get from given object-map MAP the value associated to ATTR or else null.


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

1.4.307 MAPOBJECT_HASH

Primitive defined at file ‘warmelt-first.melt’, line 1586.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely access the hash of object-map MAP.


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

1.4.308 MAPOBJECT_NTH_ATTR

Primitive defined at file ‘warmelt-first.melt’, line 1541.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1LONGN

primitive description: Safely retrieve from given object-map MAP its N-th attribute or else null.


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

1.4.309 MAPOBJECT_NTH_VAL

Primitive defined at file ‘warmelt-first.melt’, line 1547.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1LONGN

primitive description: Safely retrieve from given object-map MAP its N-th value or else null.


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

1.4.310 MAPOBJECT_PUT

Primitive defined at file ‘warmelt-first.melt’, line 1563.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEKEY
2VALUEVAL

primitive description: Safely put into object-map MAP the given KEY with VAL.


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

1.4.311 MAPOBJECT_REMOVE

Primitive defined at file ‘warmelt-first.melt’, line 1570.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEKEY

primitive description: Safely remove from object-map MAP the given KEY.


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

1.4.312 MAPOBJECT_SIZE

Primitive defined at file ‘warmelt-first.melt’, line 1531.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve the allocated size of given object-map MAP or else 0.


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

1.4.313 MAPSTRING_AUX

Primitive defined at file ‘warmelt-first.melt’, line 1657.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve auxiliary data from string-map MAP.


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

1.4.314 MAPSTRING_AUXPUT

Primitive defined at file ‘warmelt-first.melt’, line 1667.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEVAL

primitive description: Safely set auxiliary data of string-map MAP to VAL.


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

1.4.315 MAPSTRING_COUNT

Primitive defined at file ‘warmelt-base.melt’, line 1925.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely return the current count of a string-map MAP or else 0.


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

1.4.316 MAPSTRING_GETSTR

Primitive defined at file ‘warmelt-first.melt’, line 1637.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1VALUEKEYSTR

primitive description: Safely get in a string-map MAP the value associated with a value string KEYSTR or else null.


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

1.4.317 MAPSTRING_HASH

Primitive defined at file ‘warmelt-first.melt’, line 1662.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve hash from string-map MAP.


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

1.4.318 MAPSTRING_NTH_ATTRSTR

Primitive defined at file ‘warmelt-first.melt’, line 1646.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1VALUESDICR
2LONGN

primitive description: Safely get from string-map MAP the N-th string and make a string value of discriminant SDICR from it.


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

1.4.319 MAPSTRING_NTH_VAL

Primitive defined at file ‘warmelt-first.melt’, line 1652.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1LONGN

primitive description: Safely retrieve from string-map MAP its N-th value or null.


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

1.4.320 MAPSTRING_PUTSTR

Primitive defined at file ‘warmelt-first.melt’, line 1632.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEKEYSTR
2VALUEVAL

primitive description: Safely put into a string-map MAP the string value KEYSTR associated to value VAL.


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

1.4.321 MAPSTRING_RAWGET

Primitive defined at file ‘warmelt-base.melt’, line 1931.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1CSTRINGCSTR

primitive description: Safely get in a string-map MAP the value associated with raw c-string CSTR or else null.


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

1.4.322 MAPSTRING_RAWPUT

Primitive defined at file ‘warmelt-base.melt’, line 1936.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1CSTRINGKEY
2VALUEVAL

primitive description: Safely put into a string-map MAP the raw c-string KEY associated to value VAL.


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

1.4.323 MAPSTRING_RAWREMOVE

Primitive defined at file ‘warmelt-base.melt’, line 1941.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1CSTRINGKEY

primitive description: Safely remove from a string-map MAP the value associated with raw c-string KEY.


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

1.4.324 MAPSTRING_REMOVESTR

Primitive defined at file ‘warmelt-first.melt’, line 1641.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEKEYSTR

primitive description: Safely remove from a string-map MAP the value associated with string value KEYSTR.


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

1.4.325 MAPSTRING_SIZE

Primitive defined at file ‘warmelt-base.melt’, line 1920.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely return the current allocated size of a string-map MAP or else 0.


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

1.4.326 MAPTREE_AUX

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3362.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve in map of trees MAP the auxiliary data.


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

1.4.327 MAPTREE_AUXPUT

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3366.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1VALUEAUX

primitive description: Safely put in map of trees MAP the auxiliary data to AUX.


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

1.4.328 MAPTREE_COUNT

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3341.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve used count of map of trees MAP.


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

1.4.329 MAPTREE_GET

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3345.

result type: VALUE

primitive formals:

indextypename
0VALUEMAP
1TREETR

primitive description: Safely get in map of trees MAP value associated to tree TR.


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

1.4.330 MAPTREE_PUT

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3353.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1TREETRKEY
2VALUEVAL

primitive description: Safely put in map of trees MAP associated to tree TRKEY the non-nil value VAL.


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

1.4.331 MAPTREE_REMOVE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3358.

result type: VOID

primitive formals:

indextypename
0VALUEMAP
1TREETRKEY

primitive description: Safely remove in map of trees MAP entry for tree TRKEY.


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

1.4.332 MAPTREE_SIZE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 3337.

result type: LONG

primitive formals:

indextypename
0VALUEMAP

primitive description: Safely retrieve allocated size of map of trees MAP.


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

1.4.333 MAXI

Primitive defined at file ‘warmelt-base.melt’, line 293.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: MAXI gives the maximum of two integers A and B


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

1.4.334 MELT_APPLICATION_COUNT

Primitive defined at file ‘warmelt-base.melt’, line 1997.

result type: LONG

primitive description: Count of MELT closures application - significant iff ENABLE_CHECKING.


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

1.4.335 MELT_APPLICATION_DEPTH

Primitive defined at file ‘warmelt-base.melt’, line 1988.

result type: LONG

primitive description: Depth of MELT closures application - significant iff ENABLE_CHECKING.


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

1.4.336 MELT_APPLICATION_SHALLOWER

Primitive defined at file ‘warmelt-base.melt’, line 1992.

result type: LONG

primitive formals:

indextypename
0LONGMAXDEPTH

primitive description: Test that the MELT application depth is less that MAXDEPTH - significant iff ENABLE_CHECKING.


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

1.4.337 MELT_ARGUMENT

Primitive defined at file ‘warmelt-base.melt’, line 3701.

result type: CSTRING

primitive formals:

indextypename
0CSTRINGNAM

primitive description: Retrieve a MELT program argument as a raw :cstring


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

1.4.338 MELT_CALL_DEEPER_THAN

Primitive defined at file ‘warmelt-base.melt’, line 66.

result type: LONG

primitive formals:

indextypename
0LONGD

primitive description: The primitive MELT_CALL_DEEPER_THAN returns non-zero if the current MELT frame stack is deeper than D.


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

1.4.339 MELT_CALL_DEPTH

Primitive defined at file ‘warmelt-base.melt’, line 62.

result type: LONG

primitive description: The primitive MELT_CALL_DEPTH returns the call depth of the current MELT frame stack.


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

1.4.340 MELT_ERROR_COUNTER

Primitive defined at file ‘warmelt-first.melt’, line 3272.

result type: LONG

primitive description: The MELT error counter.


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

1.4.341 MELT_ERROR_COUNTER

Primitive defined at file ‘warmelt-base.melt’, line 3705.

result type: LONG

primitive description: Count the number of MELT errors.


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

1.4.342 MELT_IS_BOOTSTRAPPING

Primitive defined at file ‘warmelt-base.melt’, line 1248.

result type: LONG

primitive description: Test if MELT is bootstrapping. Only for MELT implementation gurus.


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

1.4.343 MELT_LOW_DEBUG

Primitive defined at file ‘warmelt-first.melt’, line 53.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1VALUEVAL

primitive description: Low level primitive for debugging, only useful in file warmelt-first.melt only. Use DEBUG instead.


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

1.4.344 MELT_MAKE_FRESH_ENVIRONMENT_REFERENCE

Primitive defined at file ‘warmelt-base.melt’, line 54.

result type: VALUE

primitive formals:

indextypename
0VALUEPREVENV
1CSTRINGMODULNAME

primitive description: Internal primitive MELT_MAKE_FRESH_ENVIRONMENT to call the HOOK_FRESH_ENVIRONMENT_REFERENCE_MAKER, used to create new environments in modules. Only for gurus and MELT itself.


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

1.4.345 MELT_NEED_DBG

Primitive defined at file ‘warmelt-first.melt’, line 1383.

result type: LONG

primitive formals:

indextypename
0LONGDEPTH

primitive description: Test if debug messages are needed for the given DEPTH. Trivially false in optimized flavor.


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

1.4.346 MELT_NEED_DBGLIM

Primitive defined at file ‘warmelt-first.melt’, line 1393.

result type: LONG

primitive formals:

indextypename
0LONGDEPTH
1LONGLIMIT

primitive description: Test if debug messages are needed for the given DEPTH and LIMIT. Trivially false in optimized flavor.


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

1.4.347 MELT_PREDEFINED_BY_NAME

Primitive defined at file ‘warmelt-base.melt’, line 3710.

result type: VALUE

primitive formals:

indextypename
0CSTRINGNAM

primitive description: Retrieve the predefined by a constant name string NAM


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

1.4.348 MELT_REALLY_NEED_DBGLIM

Primitive defined at file ‘warmelt-debug.melt’, line 80.

result type: LONG

primitive formals:

indextypename
0LONGDEPTH
1LONGLIMIT

primitive description: Test if debug is needed with limits, even in optimized flavor. See MELT_NEED_DBGLIM.


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

1.4.349 MELT_REALLY_NEED_DEBUG

Primitive defined at file ‘warmelt-debug.melt’, line 72.

result type: LONG

primitive formals:

indextypename
0LONGDEPTH

primitive description: Test if debug is needed, even in optimized flavor. See MELT_NEED_DBG


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

1.4.350 MELT_VERSION_STR

Primitive defined at file ‘warmelt-base.melt’, line 1158.

result type: CSTRING

primitive description: Gives the MELT version string.


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

1.4.351 MESSAGENUM_DBG

Primitive defined at file ‘warmelt-base.melt’, line 910.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1LONGI

primitive description: Debug output with message MSG number I


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

1.4.352 MESSAGE_DBG

Primitive defined at file ‘warmelt-base.melt’, line 908.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG

primitive description: Debug message MSG


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

1.4.353 MINI

Primitive defined at file ‘warmelt-base.melt’, line 297.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: MINI gives the maximum of two integers A and B


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

1.4.354 MINOR_GARBCOLL

Primitive defined at file ‘warmelt-base.melt’, line 109.

result type: VOID

primitive formals:

indextypename
0LONGSIZ

primitive description: Force a minor MELT garbage collection. The SIZ is the amount of memory to reserve.


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

1.4.355 MIXBIGINT_VAL

Primitive defined at file ‘warmelt-base.melt’, line 601.

result type: VALUE

primitive formals:

indextypename
0VALUEMB

primitive description: Retrieve the value inside a mixed bigint MB.


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

1.4.356 MIXINT_VAL

Primitive defined at file ‘warmelt-base.melt’, line 543.

result type: VALUE

primitive formals:

indextypename
0VALUEMI

primitive description: Get the value inside a mixedint value MI. The integer can be retrieved using GET_INT.


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

1.4.357 MIXLOC_LOCATION

Primitive defined at file ‘warmelt-base.melt’, line 570.

result type: LONG

primitive formals:

indextypename
0VALUEMI

primitive description: Safely retrieve as an opaque long the location of a mixed location value MI.


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

1.4.358 MIXLOC_LOCBASEFILE

Primitive defined at file ‘warmelt-base.melt’, line 579.

result type: CSTRING

primitive formals:

indextypename
0VALUEMI

primitive description: Retrieve the base filename as a raw cstring of a mixed location value MI.


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

1.4.359 MIXLOC_LOCFILE

Primitive defined at file ‘warmelt-base.melt’, line 576.

result type: CSTRING

primitive formals:

indextypename
0VALUEMI

primitive description: Retrieve the filename as a raw cstring of a mixed location value MI.


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

1.4.360 MIXLOC_LOCLINE

Primitive defined at file ‘warmelt-base.melt’, line 573.

result type: LONG

primitive formals:

indextypename
0VALUEMI

primitive description: Retrieve the line of the location of a mixed location value MI.


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

1.4.361 MIXLOC_VAL

Primitive defined at file ‘warmelt-base.melt’, line 567.

result type: VALUE

primitive formals:

indextypename
0VALUEMI

primitive description: Safely retrieve the value inside a mixed location value MI.


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

1.4.362 MULTIPLE_LENGTH

Primitive defined at file ‘warmelt-first.melt’, line 1514.

result type: LONG

primitive formals:

indextypename
0VALUEMUL

primitive description: Gives the length of tuple MUL.


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

1.4.363 MULTIPLE_NTH

Primitive defined at file ‘warmelt-first.melt’, line 1510.

result type: VALUE

primitive formals:

indextypename
0VALUEMUL
1LONGN

primitive description: Safely retrieve from tuple MUL its N-th component or else null.


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

1.4.364 MULTIPLE_PUT_NTH

Primitive defined at file ‘warmelt-first.melt’, line 1518.

result type: VOID

primitive formals:

indextypename
0VALUEMUL
1LONGN
2VALUEV

primitive description: Put into tuple MUL at rank N the component V. Avoid circularities!


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

1.4.365 NEGI

Primitive defined at file ‘warmelt-base.melt’, line 315.

result type: LONG

primitive formals:

indextypename
0LONGI

primitive description: Integer unary negation of I.


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

1.4.366 NON-NULL

Primitive defined at file ‘warmelt-first.melt’, line 1368.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test that V is not the null value. See also NULL.


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

1.4.367 NONZERO_HASH

Primitive defined at file ‘warmelt-base.melt’, line 98.

result type: LONG

primitive description: Gives a pseudo-random non-zero number suitable as an hash code.


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

1.4.368 NOT

Primitive defined at file ‘warmelt-first.melt’, line 1172.

result type: LONG

primitive formals:

indextypename
0LONGI

primitive description: Integer unary logical negation of I.


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

1.4.369 NOTI

Primitive defined at file ‘warmelt-base.melt’, line 317.

result type: LONG

primitive formals:

indextypename
0LONGI

primitive description: Integer unary bitwise complement of I.


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

1.4.370 NOTNULL

Primitive defined at file ‘warmelt-base.melt’, line 488.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test that V is not the null value.


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

1.4.371 NOTNULL_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 743.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBB

primitive description: Test if BB is a real not null raw basic_block.


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

1.4.372 NTH_ARG_TREE_CALL_EXPR

Primitive defined at file ‘libmelt-ana-tree.melt’, line 2943.

result type: TREE

primitive formals:

indextypename
0TREETR_CALL
1LONGN

primitive description: Gives in a CALL_EXPR tree TR_CALL the N-th call argument (when N >= 0 and small enough) or else the null tree. See also ARITY_TREE_CALL_EXPR.


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

1.4.373 NULL

Primitive defined at file ‘warmelt-first.melt’, line 1365.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Test that V is the null value. Negated as NON-NULL.


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

1.4.374 NULL_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 747.

result type: BASIC_BLOCK

primitive description: Gives the null raw basic_block pointer


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

1.4.375 NULL_EDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 471.

result type: EDGE

primitive description: The null edge stuff.


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

1.4.376 NULL_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 74.

result type: GIMPLE

primitive description: The null gimple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.377 NULL_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 131.

result type: TREE

primitive description: NULL_TREE gives the null tree


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.378 NUMBER_OF_LOOPS

Primitive defined at file ‘libmelt-ana-base.melt’, line 692.

result type: LONG

primitive description: Return the number of loops in current_loops.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.379 OBJECT_LENGTH

Primitive defined at file ‘warmelt-base.melt’, line 1165.

result type: LONG

primitive formals:

indextypename
0VALUEOB

primitive description: Gives the length of object OB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.380 OBJECT_NTH_FIELD

Primitive defined at file ‘warmelt-base.melt’, line 1169.

result type: VALUE

primitive formals:

indextypename
0VALUEOB
1LONGN

primitive description: Safely retrieve from object OB its N-th field or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.381 OBJ_HASH

Primitive defined at file ‘warmelt-base.melt’, line 82.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Safely gives the hashcode of object V or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.382 OBJ_LEN

Primitive defined at file ‘warmelt-base.melt’, line 87.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Safely gives the length of object V or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.383 OBJ_NUM

Primitive defined at file ‘warmelt-base.melt’, line 93.

result type: LONG

primitive formals:

indextypename
0VALUEV

primitive description: Safely gives the number of object V or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.384 ORI

Primitive defined at file ‘warmelt-base.melt’, line 310.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary bitwise or of A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.385 OUTCSTRING_DBG

Primitive defined at file ‘warmelt-base.melt’, line 496.

result type: VOID

primitive formals:

indextypename
0CSTRINGS

primitive description: output a debug string S.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.386 OUTCSTRING_ERR

Primitive defined at file ‘warmelt-base.melt’, line 512.

result type: VOID

primitive formals:

indextypename
0CSTRINGS

primitive description: Output on stderr the string S.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.387 OUTNEWLINE_DBG

Primitive defined at file ‘warmelt-base.melt’, line 506.

result type: VOID

primitive description: output a debug newline.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.388 OUTNEWLINE_ERR

Primitive defined at file ‘warmelt-base.melt’, line 899.

result type: VOID

primitive description: Output on stderr a newline and flush.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.389 OUTNUM_DBG

Primitive defined at file ‘warmelt-base.melt’, line 498.

result type: VOID

primitive formals:

indextypename
0CSTRINGPREF
1LONGL
2CSTRINGSUF

primitive description: debug output an integer L with prefix PREF and suffix SUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.390 OUTNUM_ERR

Primitive defined at file ‘warmelt-base.melt’, line 509.

result type: VOID

primitive formals:

indextypename
0CSTRINGPREF
1LONGL
2CSTRINGSUF

primitive description: output on stderr the number L with prefix PREF and suffix SUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.391 OUTPUT_EDGE

Primitive defined at file ‘libmelt-ana-base.melt’, line 793.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1EDGEEDG

primitive description: Output to OUT the edge EDG


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.392 OUTPUT_LENGTH

Primitive defined at file ‘warmelt-base.melt’, line 958.

result type: LONG

primitive formals:

indextypename
0VALUEOUT

primitive description: Return the length of a given output OUT (i.e. the used length if it is a string buffer, the file position if it is a file) or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.393 OUTPUT_LOOP

Primitive defined at file ‘libmelt-ana-base.melt’, line 1668.

result type: VOID

primitive formals:

indextypename
0VALUEOUT
1LOOPLO

primitive description: Output to OUT the loop LO


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.394 OUTPUT_SBUF_NO_OVERWRITE_STRCONST

Primitive defined at file ‘warmelt-base.melt’, line 1413.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1CSTRINGNAM

primitive description: Output into file named NAM the content of strinbuffer SBUF, take care to not overwrite an file named VNAM if it was the same.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.395 OUTPUT_SBUF_NO_OVERWRITE_STRVAL

Primitive defined at file ‘warmelt-base.melt’, line 1417.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEVNAM

primitive description: Output into file named by string value VNAM the content of strinbuffer SBUF, take care to not overwrite an old file named VNAM if it was the same.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.396 OUTPUT_SBUF_STRCONST

Primitive defined at file ‘warmelt-base.melt’, line 1404.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1CSTRINGNAM

primitive description: Output into file named NAM the content of strinbuffer SBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.397 OUTPUT_SBUF_STRVAL

Primitive defined at file ‘warmelt-base.melt’, line 1408.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1VALUEVNAM

primitive description: Output into file named by string value VNAM the content of strinbuffer SBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.398 OUTSTRBUF_DBG

Primitive defined at file ‘warmelt-base.melt’, line 504.

result type: VOID

primitive formals:

indextypename
0VALUESBUF

primitive description: output a debug stringbuffer value SBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.399 OUTSTRBUF_ERR

Primitive defined at file ‘warmelt-base.melt’, line 515.

result type: VOID

primitive formals:

indextypename
0VALUESBUF

primitive description: Output on stderr the stringbuffer value SBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.400 OUTSTR_DBG

Primitive defined at file ‘warmelt-base.melt’, line 501.

result type: VOID

primitive formals:

indextypename
0VALUESTR

primitive description: output a debug string value STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.401 OUTSTR_ERR

Primitive defined at file ‘warmelt-base.melt’, line 903.

result type: VOID

primitive formals:

indextypename
0VALUESTR

primitive description: Output on stderr a MELT string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.402 PAIR_HEAD

Primitive defined at file ‘warmelt-first.melt’, line 1885.

result type: VALUE

primitive formals:

indextypename
0VALUEPA

primitive description: Safely retrieve the head of pair value PA or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.403 PAIR_LISTLENGTH

Primitive defined at file ‘warmelt-base.melt’, line 528.

result type: LONG

primitive formals:

indextypename
0VALUEPA

primitive description: Compute the linked length of given pair value PA or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.404 PAIR_SET_HEAD

Primitive defined at file ‘warmelt-base.melt’, line 523.

result type: VOID

primitive formals:

indextypename
0VALUEPA
1VALUEHD

primitive description: Safely set in pair PA its head to HD. Please avoid using that to introduce circularities in lists.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.405 PAIR_TAIL

Primitive defined at file ‘warmelt-first.melt’, line 1889.

result type: VALUE

primitive formals:

indextypename
0VALUEPA

primitive description: Safely retrieve the tail pair of pair value PA or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.406 POST_DOMINATED_BY_OTHER_UNSAFE

Primitive defined at file ‘libmelt-ana-base.melt’, line 955.

result type: LONG

primitive formals:

indextypename
0BASIC_BLOCKBBA
1BASIC_BLOCKBBB

primitive description: It doesn’t check that post_dominance info are build, use post_dominated_by_other instead.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.407 PPSTRBUF_BASICBLOCK

Primitive defined at file ‘libmelt-ana-base.melt’, line 788.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGINDENT
2BASIC_BLOCKBB

primitive description: Pretty-print inside strbuf SBUF with indentation INDENT the raw basic_block BB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.408 PPSTRBUF_GIMPLE

Primitive defined at file ‘libmelt-ana-base.melt’, line 773.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGINDENT
2GIMPLEG

primitive description: Pretty-print inside strbuf SBUF with indentation INDENT the raw gimple G.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.409 PPSTRBUF_GIMPLE_SEQ

Primitive defined at file ‘libmelt-ana-base.melt’, line 778.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGINDENT
2GIMPLE_SEQGSEQ

primitive description: Pretty-print inside strbuf SBUF with indentation INDENT the raw gimple_seq GSEQ.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.410 PPSTRBUF_MIXBIGINT

Primitive defined at file ‘warmelt-base.melt’, line 605.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGINDENT
2VALUEMB

primitive description: Pretty prints into string buffer or output SBUF at indentation INDENT the mixed bigint MB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.411 PPSTRBUF_TREE

Primitive defined at file ‘libmelt-ana-base.melt’, line 783.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGINDENT
2TREET

primitive description: Pretty-print inside strbuf SBUF with indentation INDENT the raw tree T.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.412 PUT_INT

Primitive defined at file ‘warmelt-first.melt’, line 1094.

result type: VOID

primitive formals:

indextypename
0VALUEV
1LONGI

primitive description: Safely puts the integer number I inside V, a boxed or mixed integer, or an object.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.413 READ_FILE

Primitive defined at file ‘warmelt-base.melt’, line 612.

result type: VALUE

primitive formals:

indextypename
0VALUEFILNAM

primitive description: Read from file named by the FILNAM string balue a list of MELT s-expressions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.414 READ_STRV

Primitive defined at file ‘warmelt-base.melt’, line 616.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV

primitive description: Return the list of s-exprs contained in in parsed string STRV. STRV can be a boxed string or a strbuf value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.415 READ_STRV_LOC

Primitive defined at file ‘warmelt-base.melt’, line 621.

result type: VALUE

primitive formals:

indextypename
0VALUESTRV
1VALUELOCV

primitive description: Return the list of s-exprs contained in in parsed string STRV. STRV can be a boxed string or a strbuf value. LOCV is the string value used as the location file name.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.416 RELATIVE_TIME_MILLISEC

Primitive defined at file ‘warmelt-base.melt’, line 267.

result type: LONG

primitive description: Get the real time, relative to MELT start, in milliseconds.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.417 ROUTINE_DESCR

Primitive defined at file ‘warmelt-first.melt’, line 1733.

result type: VALUE

primitive formals:

indextypename
0VALUEROU

primitive description: Retrieve the descriptive value string of a routine ROU or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.418 ROUTINE_NTH

Primitive defined at file ‘warmelt-first.melt’, line 1742.

result type: VALUE

primitive formals:

indextypename
0VALUEROU
1LONGIX

primitive description: Retrieve in routine value ROU its component of index IX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.419 ROUTINE_SIZE

Primitive defined at file ‘warmelt-first.melt’, line 1738.

result type: LONG

primitive formals:

indextypename
0VALUEROU

primitive description: Gives the size of a routine value ROU, i.e. its number of constants.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.420 SET_REAL_TIMER_MILLISEC

Primitive defined at file ‘warmelt-base.melt’, line 275.

result type: VOID

primitive formals:

indextypename
0LONGMILLISEC

primitive description: Set the real time alarm in millisecond (or clear alarm if MILLISEC is non-positive)


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.421 SHORTBACKTRACE_DBG

Primitive defined at file ‘warmelt-first.melt’, line 1403.

result type: VOID

primitive formals:

indextypename
0CSTRINGMSG
1LONGMAXDEPTH

primitive description: Short debug backtrace with message MSG up to MAXDEPTH.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.422 SPLIT_STRING_COLON

Primitive defined at file ‘warmelt-base.melt’, line 1032.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUES

primitive description: Split a string value S into a list of colon separated strings of discriminant DIS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.423 SPLIT_STRING_COMMA

Primitive defined at file ‘warmelt-base.melt’, line 1027.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUES

primitive description: Split a string value S into a list of comma separated strings of discriminant DIS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.424 SPLIT_STRING_EQUAL

Primitive defined at file ‘warmelt-base.melt’, line 1037.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUES

primitive description: Split a string value S into a list of equal separated strings of discriminant DIS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.425 SPLIT_STRING_SPACE

Primitive defined at file ‘warmelt-base.melt’, line 1022.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUES

primitive description: Split a string value S into a list of space separated strings of discriminant DIS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.426 START_MELT_MODULE_OF_FLAVOR

Primitive defined at file ‘warmelt-base.melt’, line 1149.

result type: VALUE

primitive formals:

indextypename
0VALUEENV
1VALUEMODNAME
2VALUEFLAVOR

primitive description: start in environment ENV and load module of basename MODNAME and FLAVOR. Gives the new environment.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.427 STRBUF2STRING

Primitive defined at file ‘warmelt-base.melt’, line 1070.

result type: VALUE

primitive formals:

indextypename
0VALUEDIS
1VALUESBUF

primitive description: make a string value of discriminant DIS from the stringbuffer SBUF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.428 STRBUF_CONSUME

Primitive defined at file ‘warmelt-base.melt’, line 954.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGCOUNT

primitive description: Consume in stringbuffer SBUF uto to COUNT bytes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.429 STRBUF_PEEK

Primitive defined at file ‘warmelt-base.melt’, line 950.

result type: LONG

primitive formals:

indextypename
0VALUESBUF
1LONGOFF

primitive description: Peek without consuming it in stringbuffer SBUF the character at offset OFF or else -1


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.430 STRBUF_RESERVE

Primitive defined at file ‘warmelt-base.melt’, line 941.

result type: VOID

primitive formals:

indextypename
0VALUESBUF
1LONGSIZ

primitive description: Reserve extra space in stringbuffer SBUF for SIZ bytes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.431 STRBUF_USEDLENGTH

Primitive defined at file ‘warmelt-base.melt’, line 946.

result type: LONG

primitive formals:

indextypename
0VALUESBUF

primitive description: Give the used length of given SBUF string buffer or else 0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.432 STRING<

Primitive defined at file ‘warmelt-first.melt’, line 1475.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that value string S1 is less than S2, compared alphanumerically as strings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.433 STRING<CASE

Primitive defined at file ‘warmelt-first.melt’, line 1482.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that value string S1 is less than S2, compared alphanumerically as strings without case.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.434 STRING>

Primitive defined at file ‘warmelt-first.melt’, line 1478.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that value string S1 is greater than S2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.435 STRING>CASE

Primitive defined at file ‘warmelt-first.melt’, line 1485.

result type: LONG

primitive formals:

indextypename
0VALUES1
1VALUES2

primitive description: Test that value string S1 is greater than S2 without case.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.436 STRINGCONST2VAL

Primitive defined at file ‘warmelt-first.melt’, line 1059.

result type: VALUE

primitive formals:

indextypename
0VALUEDISCR
1CSTRINGSTRC

primitive description: Convert a C-string constant STRC into a string value of discriminant DISCR. See also QUOTE macro applied to a string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.437 STRING_DYNLOADED_SUFFIXED

Primitive defined at file ‘warmelt-base.melt’, line 990.

result type: LONG

primitive formals:

indextypename
0VALUESV

primitive description: Test that the string value SV ends with the MELT_DYNLOADED_SUFFIX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.438 STRING_ENDS

Primitive defined at file ‘warmelt-base.melt’, line 1004.

result type: LONG

primitive formals:

indextypename
0VALUESV1
1VALUESV2

primitive description: Test that the string value SV1 ends with the string value SV2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.439 STRING_HEX_MD5SUM_CONSTPATH

Primitive defined at file ‘warmelt-base.melt’, line 1008.

result type: VALUE

primitive formals:

indextypename
0CSTRINGPATH

primitive description: Return a boxed string contained the hexadecimal md5sum of raw PATH, or null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.440 STRING_HEX_MD5SUM_PATHSTRV

Primitive defined at file ‘warmelt-base.melt’, line 1012.

result type: VALUE

primitive formals:

indextypename
0VALUEPATHV

primitive description: Return a boxed string contained the hexadecimal md5sum of the string value PATHV, or null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.441 STRING_HEX_MD5SUM_PATH_SEQUENCE

Primitive defined at file ‘warmelt-base.melt’, line 1016.

result type: VALUE

primitive formals:

indextypename
0VALUEPATHSEQ

primitive description: Return a boxed string contained the cumulated hexadecimal md5sum on paths inside tuple PATHSEQ, or null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.442 STRING_LENGTH

Primitive defined at file ‘warmelt-base.melt’, line 976.

result type: LONG

primitive formals:

indextypename
0VALUESTR

primitive description: Give the length of string value STR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.443 STRING_NTH

Primitive defined at file ‘warmelt-base.melt’, line 980.

result type: LONG

primitive formals:

indextypename
0VALUESTR
1LONGRK

primitive description: Give the bytecode in string STR of byte at rank RK or else 0. If RK is negative, consider it as an offset from the end, so -1 is the last byte.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.444 STRING_PREFIXED

Primitive defined at file ‘warmelt-base.melt’, line 996.

result type: LONG

primitive formals:

indextypename
0VALUESV
1CSTRINGCS

primitive description: Test that the string value SV starts with the suffix CS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.445 STRING_STARTS

Primitive defined at file ‘warmelt-base.melt’, line 1000.

result type: LONG

primitive formals:

indextypename
0VALUESV1
1VALUESV2

primitive description: Test that the string value SV1 starts with the string value SV2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.446 STRING_SUFFIXED

Primitive defined at file ‘warmelt-base.melt’, line 986.

result type: LONG

primitive formals:

indextypename
0VALUESV
1CSTRINGCS

primitive description: Test that the string value SV ends with the suffix CS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.447 STRING_TO_LONG

Primitive defined at file ‘warmelt-first.melt’, line 1489.

result type: LONG

primitive formals:

indextypename
0VALUESTRING

primitive description: Read a string value and returns the corresponding long stuff. 0 is returned if an error occurs while reading.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.448 SUBCLASS_OF

Primitive defined at file ‘warmelt-base.melt’, line 1173.

result type: LONG

primitive formals:

indextypename
0VALUECL1
1VALUECL2

primitive description: Safely test if class CL1 is a sub-class of class CL2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.449 SUBCLASS_OR_EQ

Primitive defined at file ‘warmelt-base.melt’, line 1176.

result type: LONG

primitive formals:

indextypename
0VALUECL1
1VALUECL2

primitive description: Safely test if class CL1 is the same or a sub-class of class CL2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.450 SUBSEQ_MULTIPLE

Primitive defined at file ‘warmelt-base.melt’, line 1184.

result type: VALUE

primitive formals:

indextypename
0VALUEMUL
1LONGSTARTIX
2LONGENDIX

primitive description: Make a tuple from as subsequence of MUL from indexes STARTIX to ENDIX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.451 SUPERLOOP_AT_DEPTH

Primitive defined at file ‘libmelt-ana-base.melt’, line 702.

result type: LOOP

primitive formals:

indextypename
0LOOPLO
1LONGDEPTH

primitive description: Return the containing superloop of loop LO at given DEPTH or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.452 THE_NULL_CSTRING

Primitive defined at file ‘warmelt-first.melt’, line 1413.

result type: CSTRING

primitive description: The null const cstring.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.453 TREE_CHAIN_APPEND

Primitive defined at file ‘libmelt-ana-tree.melt’, line 205.

result type: TREE

primitive formals:

indextypename
0TREEPURPOSE
1TREEVALUE
2TREECHAIN

primitive description: Create a new TREE_LIST node with PURPOSE and VALUE trees and chain it at the end of CHAIN. Returns the newly created chain (different from CHAIN if CHAIN is NULL_TREE).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.454 TREE_CHAIN_JOIN

Primitive defined at file ‘libmelt-ana-tree.melt’, line 213.

result type: TREE

primitive formals:

indextypename
0TREECHAIN1
1TREECHAIN2

primitive description: Append CHAIN2 to CHAIN1 and returns the newly created chain (different from CHAIN1 if CHAIN1 is NULL_TREE).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.455 TREE_CHAIN_PREPEND

Primitive defined at file ‘libmelt-ana-tree.melt’, line 197.

result type: TREE

primitive formals:

indextypename
0TREEPURPOSE
1TREEVALUE
2TREECHAIN

primitive description: Create a new TREE_LIST node with PURPOSE and VALUE trees and chain it at the begining of CHAIN. Returns the newly created chain.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.456 TREE_CONTENT

Primitive defined at file ‘libmelt-ana-tree.melt’, line 123.

result type: TREE

primitive formals:

indextypename
0VALUEV

primitive description: TREE_CONTENT safely retrieve the tree inside boxed value V


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.457 TREE_CREATE_ARTIFICIAL_LABEL

Primitive defined at file ‘libmelt-ana-tree.melt’, line 641.

result type: TREE

primitive description: Create an artifical label tree, without source location.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.458 TREE_TYPE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 175.

result type: TREE

primitive formals:

indextypename
0TREETR

primitive description: TREE_TYPE gives the type of tree TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.459 TREE_TYPES_COMPATIBLE_P

Primitive defined at file ‘libmelt-ana-tree.melt’, line 192.

result type: LONG

primitive formals:

indextypename
0TREETR1
1TREETR2

primitive description: TREE_TYPES_COMPATIBLE_P checks that TR1 and TR2 are non-null and are type convertible using the types_compatible_p function of GCC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.460 TREE_TYPE_ADDR_SPACE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 179.

result type: LONG

primitive formals:

indextypename
0TREETR

primitive description: TREE_TYPE_ADDR_SPACE gives the address space of type tree TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.461 TREE_UID

Primitive defined at file ‘libmelt-ana-tree.melt’, line 183.

result type: LONG

primitive formals:

indextypename
0TREETR

primitive description: TREE_UID gives the uid of tree TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.462 TREE_USELESS_TYPE_CONVERSION_P

Primitive defined at file ‘libmelt-ana-tree.melt’, line 187.

result type: LONG

primitive formals:

indextypename
0TREETR1
1TREETR2

primitive description: TREE_USELESS_TYPE_CONVERSION_P checks that TR1 and TR2 are non-null and are type convertible using the useless_type_conversion_p function of GCC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.463 VARIADIC_CTYPE

Primitive defined at file ‘warmelt-first.melt’, line 1244.

result type: VALUE

primitive formals:

indextypename
0LONGDELTA

primitive description: Return the ctype of the variadic argument at offset DELTA, or else Nil. See also VARIADIC_TYPE_CODE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.464 VARIADIC_INDEX

Primitive defined at file ‘warmelt-first.melt’, line 1181.

result type: LONG

primitive description: Returns the current index of variadic argument, or -1 outside of variadic functions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.465 VARIADIC_LENGTH

Primitive defined at file ‘warmelt-first.melt’, line 1195.

result type: LONG

primitive description: Returns the length of variadic arguments, or -1 outside of variadic functions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.466 VARIADIC_SKIP

Primitive defined at file ‘warmelt-first.melt’, line 1210.

result type: VOID

primitive formals:

indextypename
0LONGDELTA

primitive description: Skip some variadic arguments, by incrementing appropriately the variadic index.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.467 VARIADIC_TYPE_CODE

Primitive defined at file ‘warmelt-first.melt’, line 1228.

result type: LONG

primitive formals:

indextypename
0LONGDELTA

primitive description: Return the type code, i.e. an integer from the MELTBPAR_* enumeration, of the variadic argument at offset DELTA, or else [outside of variadic functions, or index out of bounds] 0, that is MELTBPAR__NONE. See also VARIADIC_CTYPE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.468 VOID

Primitive defined at file ‘warmelt-first.melt’, line 4421.

result type: VOID

primitive description: Return a void value. See IGNORE and CTYPE_VOID.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.469 WARNINGMSG_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 703.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG

primitive description: Show a plain warning with raw message string CMSG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.470 WARNINGMSG_STRV

Primitive defined at file ‘warmelt-first.melt’, line 1897.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG
1VALUESTRV

primitive description: Show a plain warning with raw message string CMSG and string value STRV.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.471 WARNINGMSG_STRV

Primitive defined at file ‘warmelt-base.melt’, line 717.

result type: VOID

primitive formals:

indextypename
0CSTRINGCMSG
1VALUESTRV

primitive description: Show a plain warning with raw message string CMSG and string value STRV.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.472 WARNING_AT_GIMPLE

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3509.

result type: VOID

primitive formals:

indextypename
0GIMPLEG
1CSTRINGMSG

primitive description: WARNING_AT_GIMPLE issue a warning at location of gimple G with string MSG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.473 WARNING_AT_GIMPLE_STRBUF

Primitive defined at file ‘libmelt-ana-gimple.melt’, line 3514.

result type: VOID

primitive formals:

indextypename
0GIMPLEG
1VALUEMSG

primitive description: WARNING_AT_GIMPLE_STRBUF issue a warning at location of gimple G with strbuf MSG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.474 WARNING_AT_TREE

Primitive defined at file ‘libmelt-ana-tree.melt’, line 145.

result type: VOID

primitive formals:

indextypename
0TREETR
1CSTRINGMSG

primitive description: WARNING_AT_TREE give a warning at location of tree TR with message MSG


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.475 WARNING_AT_TREE_DECL_WITH_NUMBER

Primitive defined at file ‘libmelt-ana-tree.melt’, line 169.

result type: VOID

primitive formals:

indextypename
0TREETRDECL
1CSTRINGMSG
2LONGNUM

primitive description: WARNING_AT_TREE_DECL_WITH_NUMBER give a warning with declaration of tree TRDECL message MSG number NUM


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.476 WARNING_PLAIN

Primitive defined at file ‘warmelt-base.melt’, line 698.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG

primitive description: Show a plain warning at boxed location LOC with raw message string CMSG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.477 WARNING_STRV

Primitive defined at file ‘warmelt-base.melt’, line 693.

result type: VOID

primitive formals:

indextypename
0VALUELOC
1CSTRINGCMSG
2VALUESTRV

primitive description: Show a warning at boxed location LOC with raw message string CMSG and string value STRV.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.478 XORI

Primitive defined at file ‘warmelt-base.melt’, line 312.

result type: LONG

primitive formals:

indextypename
0LONGA
1LONGB

primitive description: Integer binary bitwise exclusive-or of A and B.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4.479 ZEROP

Primitive defined at file ‘warmelt-base.melt’, line 492.

result type: LONG

primitive formals:

indextypename
0LONGI

primitive description: Test that I is zero.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5 MELT functions

There are 172 functions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.1 %IV

Function defined at file ‘warmelt-base.melt’, line 357.

Function formals:

indextypename
0VALUEA
1VALUEB

Function description: Boxed integer remainder of two boxed integers. It is slow, since it is boxing. Return null when undefined.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.2 *IV

Function defined at file ‘warmelt-base.melt’, line 339.

Function formals:

indextypename
0VALUEA
1VALUEB

Function description: Boxed integer multiplication of two boxed integers. It is slow, since it is boxing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.3 +IV

Function defined at file ‘warmelt-base.melt’, line 322.

Function formals:

indextypename
0VALUEA
1VALUEB

Function description: Boxed integer addition of two boxed integers. It is slow, since it is boxing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.4 -IV

Function defined at file ‘warmelt-base.melt’, line 330.

Function formals:

indextypename
0VALUEA
1VALUEB

Function description: Boxed integer substraction of two boxed integers. It is slow, since it is boxing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.5 /IV

Function defined at file ‘warmelt-base.melt’, line 347.

Function formals:

indextypename
0VALUEA
1VALUEB

Function description: Boxed integer division of two boxed integers. It is slow, since it is boxing. Return null when undefined.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.6 ADD2LIST

Function defined at file ‘warmelt-base.melt’, line 1624.

Function formals:

indextypename
0VALUELIS

Function description: Variadic function to add to a list LIS. Convert :cstring, :tree, :gimple, :edge, :long to boxed values. Append any value arguments. Returns the updated LIS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.7 ADD2OUT

Function defined at file ‘warmelt-base.melt’, line 1563.

Function formals:

indextypename
0VALUEOUT

Function description: Variadic function to add to an output OUT (a file, a string buffer) various things. Return the given OUT. Use ADD_TO_OUT selector for values. Closure values are handled as manipulators for next thing.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.8 ADD_PRAGMA_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 2755.

Function formals:

indextypename
0VALUEPH

Function description: Internal utility to add a pragma handler PH which should be a CLASS_GCC_PRAGMA. See also REGISTER_EXPANDED_PRAGMA and REGISTER_PLAIN_PRAGMA from ‘libmelt-ana-tree.melt’.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.9 AT_END_OF_THIS_MELT_PASS_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1545.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_END_OF_THIS_MELT_PASS_FIRST to register a function to be called at the end of the current MELT provided GCC pass, in first place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.10 AT_END_OF_THIS_MELT_PASS_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1556.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_END_OF_THIS_MELT_PASS_LAST to register a function to be called at the end of the current MELT provided GCC pass, in last place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.11 AT_EXIT_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 2689.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_EXIT_FIRST to register a function to be run at MELT exit, in first place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.12 AT_EXIT_LAST

Function defined at file ‘warmelt-hooks.melt’, line 2697.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_EXIT_LAST to register a function to be run at MELT exit, in last place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.13 AT_FINISH_UNIT_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 484.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_FINISH_UNIT_FIRST to register a function to be run at end of compilation unit in first place


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.14 AT_FINISH_UNIT_LAST

Function defined at file ‘warmelt-hooks.melt’, line 494.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_FINISH_UNIT_LAST to register a function to be run at end of compilation unit in last place


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.15 AT_START_UNIT_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 379.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_START_UNIT_FIRST to register a function to be run at start of translation unit, in first place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.16 AT_START_UNIT_LAST

Function defined at file ‘warmelt-hooks.melt’, line 388.

Function formals:

indextypename
0VALUEFUN

Function description: Use AT_START_UNIT_LAST to register a function to be run at start of translation unit, in first place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.17 BB_DOMINATOR_ITERATOR

Function defined at file ‘libmelt-ana-base.melt’, line 1044.

Function formals:

indextypename
0VALUEBB
1VALUEF
2VALUEDATA

Function description: apply function F on each dominator of BB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.18 BB_POST_DOMINATOR_ITERATOR

Function defined at file ‘libmelt-ana-base.melt’, line 1057.

Function formals:

indextypename
0VALUEBB
1VALUEF
2VALUEDATA

Function description: apply function F on each dominator of BB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.19 CHECK_C_FRONTEND

Function defined at file ‘libmelt-ana-tree.melt’, line 3528.

Function formals:

indextypename
0VALUENAM
1CSTRINGMSG

Function description: utility function to check that we are indeed within a C or C++ compiler, outside of lto1 but inside cc1 or cc1plus.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.20 CLONE_SYMBOL

Function defined at file ‘warmelt-first.melt’, line 3184.

Function formals:

indextypename
0VALUESYMB

Function description: Function to clone a given symbol or string SYMB, producing a new instance of class_cloned_symbol


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.21 CLOSURE_EVERY

Function defined at file ‘warmelt-first.melt’, line 3590.

Function formals:

indextypename
0VALUECLO
1VALUEF

Function description: Apply to every value inside closure CLO the function F


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.22 COMPARE_NAMED_ALPHA

Function defined at file ‘warmelt-base.melt’, line 1223.

Function formals:

indextypename
0VALUEN1
1VALUEN2

Function description: Alphanumerical compare of named instances N1 and N2. Returns a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.23 COMPLETE_SEQUENCE_AS_LIST

Function defined at file ‘warmelt-base.melt’, line 3655.

Function formals:

indextypename
0VALUESRC

Function description: If SRC is a list, complete it with the rest of arguments and return a fresh list, If SRC is a tuple, make a bigger list with its components and the rest of arguments. Otherwise, make a list of all the arguments, including the first SRC


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.24 COMPLETE_SEQUENCE_AS_TUPLE

Function defined at file ‘warmelt-base.melt’, line 3615.

Function formals:

indextypename
0VALUESRC

Function description: If SRC is a list, complete it with the rest of arguments and return a fresh tuple, If SRC is a tuple, make a bigger tuple with the rest of arguments. Otherwise, make a tuple of all the arguments, including the first SRC


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.25 CONNECT_TO_SERVER

Function defined at file ‘warmelt-hooks.melt’, line 3338.

Function formals:

indextypename
0VALUESERVICE
1LONGQUIET

Function description: the CONNECT_TO_SERVER function connect thru a socket to a given SERVICE. If SERVICE is a boxed integer, it is an already connected socket file descriptor. If SERVICE is a string containing a / it is understood as AF_UNIX socket name. Otherwise it should be a hostname:portnumber for TCP/IPv4 or IPv6, with :1234 understood as localhost:1234. Returns a boxed integer to a connected socket file descriptor, or NIL on system error. Gives GCC warnings on system errors. If QUIET is zero, gives GCC notice inform on success. Notice that for IP connections, the IP address is cached so would be requested once.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.26 CREATE_NORMAL_EXTENDING_CONTEXT

Function defined at file ‘warmelt-normal.melt’, line 1154.

Function formals:

indextypename
0VALUEMODCTX
1VALUEMODENV

Function description: Internal routine to create a normalization context for module context MODCTX, used to compile, e.g. for running, the extension of a module environment MODENV.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.27 CREATE_NORMCONTEXT

Function defined at file ‘warmelt-normal.melt’, line 1102.

Function formals:

indextypename
0VALUEMODCTX

Function description: Internal routine to reate a normalization context for module context MODCTX, used to compile modules.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.28 DBGOUTAGAIN_FIELDS

Function defined at file ‘warmelt-debug.melt’, line 510.

Function formals:

indextypename
0VALUEOBJ
1VALUEDBGI
2LONGDEPTH
3LONGFROMRANK
4LONGTORANK

Function description: Utility to output again for debugging value in OBJ using debug information DBGI at given DEPTH the fields from FROMRANK to TORANK


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.29 DBGOUT_FIELDS

Function defined at file ‘warmelt-debug.melt’, line 457.

Function formals:

indextypename
0VALUEOBJ
1VALUEDBGI
2LONGDEPTH
3LONGFROMRANK
4LONGTORANK

Function description: Utility to output for debugging value in OBJ using debug information DBGI at given DEPTH the fields from FROMRANK to TORANK


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.30 DBG_OUT

Function defined at file ‘warmelt-debug.melt’, line 429.

Function formals:

indextypename
0VALUEOBJ
1VALUEDBGI
2LONGDEPTH

Function description: Output for debugging value OBJ using debug information DBGI at given DEPTH


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.31 DBG_OUTOBJECT

Function defined at file ‘warmelt-debug.melt’, line 409.

Function formals:

indextypename
0VALUEOBJ
1VALUEDBGI
2LONGDEPTH

Function description: Output for debugging object OBJ using debug information DBGI at given DEPTH


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.32 DISPLAY_DEBUG_MESSAGE

Function defined at file ‘warmelt-debug.melt’, line 1627.

Function formals:

indextypename
0VALUEVAL
1CSTRINGMSGSTR
2LONGCOUNT

Function description: Display in a debug-style the value VAL with message raw string MSGSTR and counter COUNT. Rarely useful.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.33 DOMINATED_BY_BB_ITERATOR

Function defined at file ‘libmelt-ana-base.melt’, line 1005.

Function formals:

indextypename
0VALUEF
1VALUEDATA
2VALUEBB

Function description: run function F on every basicblocks dominated by boxed basic_block BB with DATA as first parameters and ending with the dominated basicblock as last parameters.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.34 DOMINATED_BY_OTHER

Function defined at file ‘libmelt-ana-base.melt’, line 944.

Function formals:

indextypename
0VALUEBBA
1VALUEBBB

Function description: true if boxed basic_block BBA is dominated by boxed basic_block BBB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.35 DO_BLOCKING_JSONRPC2_CALL

Function defined at file ‘warmelt-hooks.melt’, line 4186.

Function formals:

indextypename
0VALUESERVER
1VALUEMETHODNAME
2VALUEJPARAMS
3LONGTIMEOUTMS

Function description: DO_BLOCKING_JSONRPC2_CALL makes a single JSONRPC2 remote procedure call with TCP transport to given SERVER with given METHODNAME and given JSON parameters JPARAMS with a timeout of TIMEOUTMS milliseconds, at least 50 milliseconds, then close the connection. On success the JSON result is given, and secondarily the strictly positive time, in milliseconds, needed to make the JSONRPC request. On failure, a warning is given, and nil is returned without any secondary result.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.36 ERROR_AT

Function defined at file ‘warmelt-macro.melt’, line 354.

Function formals:

indextypename
0VALUELOC
1CSTRINGFMT

Function description: Variadic ERROR_AT function to emit an error message for source location LOC. The FMT format string may contain $1 ... $9 to refer to the first, ... nineth argument (after FMT).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.37 EVAL

Function defined at file ‘warmelt-outobj.melt’, line 8030.

Function formals:

indextypename
0VALUEEXP
1VALUEENV

Function description: EVAL is evaluating EXP -an s-expression or a list or tuple of s-expressions- inside environment ENV or else the (PARENT_MODULE_ENVIRONMENT). It works using TRANSLATE_RUN_MELT_EXPRESSIONS so generate some C/C++ code then compiles and dynamically loads it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.38 EVERY_POLLING_INPUT

Function defined at file ‘warmelt-hooks.melt’, line 3124.

Function formals:

indextypename
0VALUEF

Function description: EVERY_POLLING_INPUTS applies the given closure F to every input channel. Iteration is stopped if that application returns nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.39 EXPAND_PAIRLIST_AS_LIST

Function defined at file ‘warmelt-macro.melt’, line 1615.

Function formals:

indextypename
0VALUEPAIR
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: EXPAND_PAIRLIST_AS_TUPLE macro-expands a pair-list as a list.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.40 EXPAND_PAIRLIST_AS_TUPLE

Function defined at file ‘warmelt-macro.melt’, line 1670.

Function formals:

indextypename
0VALUEPAIR
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: EXPAND_PAIRLIST_AS_TUPLE macroexpands a pair-list as a tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.41 EXPAND_RESTLIST_AS_LIST

Function defined at file ‘warmelt-macro.melt’, line 1548.

Function formals:

indextypename
0VALUEARGLIST
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: Expand all but the first in an argument list ARGLIST in environment ENV using expander MEXPANDER as a list of macro expansions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.42 EXPAND_RESTLIST_AS_TUPLE

Function defined at file ‘warmelt-macro.melt’, line 1602.

Function formals:

indextypename
0VALUEARGLIST
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: EXPAND_RESTLIST_AS_TUPLE macro-expands all but the first element of a list as a tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.43 EXPAND_TUPLE_SLICE_AS_TUPLE

Function defined at file ‘warmelt-macro.melt’, line 1681.

Function formals:

indextypename
0VALUETUPLE
1LONGSTARTIX
2LONGENDIX
3VALUEENV
4VALUEMEXPANDER
5VALUEMODCTX

Function description: EXPAND_TUPLE_SLICE_AS_TUPLE macro-expands in given TUPLE the slice from STARTIX to ENDIX


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.44 FATAL_ERROR_AT

Function defined at file ‘warmelt-macro.melt’, line 376.

Function formals:

indextypename
0VALUELOC
1CSTRINGFMT

Function description: Variadic FATAL_ERROR_AT function to emit a fatal error message for source location LOC. The FMT format string may contain $1 ... $9 to refer to the first, ... nineth argument (after FMT).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.45 FIND_ENCLOSING_ENV

Function defined at file ‘warmelt-first.melt’, line 3870.

Function formals:

indextypename
0VALUEENV
1VALUEBINDER

Function description: Find the binding in environment ENV for given BINDER symbol and secondarily return the reversed list of enclosing procedures.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.46 FIND_ENV

Function defined at file ‘warmelt-first.melt’, line 3825.

Function formals:

indextypename
0VALUEENV
1VALUEBINDER

Function description: Find a binding inside environement ENV for binder symbol BINDER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.47 FRESH_ENV

Function defined at file ‘warmelt-first.melt’, line 3803.

Function formals:

indextypename
0VALUEPARENV
1VALUEDESCR

Function description: Make a fresh environment of parent PARENV and optional description DESCR. See also CLASS_ENVIRONMENT and CLASS_DESCRIBED_ENVIRONMENT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.48 GENERATE_GPLV3PLUS_COPYRIGHT_NOTICE_C_COMMENT

Function defined at file ‘warmelt-outobj.melt’, line 8062.

Function formals:

indextypename
0VALUESBUF
1VALUENAME

Function description: Generate into stringbuffer SBUF a C comment with GPLv3+ notice for file named NAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.49 GET_CODE_BUFFER_LIMIT

Function defined at file ‘warmelt-outobj.melt’, line 78.

Function description: Function to retrieve the generated code buffer limit. See also PUT_CODE_BUFFER_LIMIT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.50 GET_IMMEDIATE_DOMINATOR

Function defined at file ‘libmelt-ana-base.melt’, line 911.

Function formals:

indextypename
0VALUEBB

Function description: Return the next immediate dominator of the boxed basic_block BB as a MELT value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.51 GET_IMMEDIATE_POST_DOMINATOR

Function defined at file ‘libmelt-ana-base.melt’, line 928.

Function formals:

indextypename
0VALUEBB

Function description: Return the next immediate post dominator of the boxed basic_block BB as a MELT value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.52 GET_POLLING_INPUT

Function defined at file ‘warmelt-hooks.melt’, line 3148.

Function formals:

indextypename
0VALUEBI

Function description: The function GET_POLLING_INPUT gets the polling input associated to integer in BI.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.53 GIMPLE_SEQ_BOXED_MAKE_FILL

Function defined at file ‘libmelt-ana-gimple.melt’, line 3670.

Function formals:

indextypename
0VALUEDISCR

Function description: Variadic function to make a boxed gimple seq of given DISCR -or DISCR_GIMPLE_SEQ if null- and fill it with the given raw gimples or gimpleseqs or boxed gimple values or boxed gimpleseq values. A closure variadic argument is applied to the boxed gimple_seq so may change it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.54 HOOK_EVERY

Function defined at file ‘warmelt-first.melt’, line 3617.

Function formals:

indextypename
0VALUEHK
1VALUEF

Function description: Apply to every value inside hook HK the function F


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.55 INFORM_AT

Function defined at file ‘warmelt-macro.melt’, line 423.

Function formals:

indextypename
0VALUELOC
1CSTRINGFMT

Function description: Variadic INFORM function to emit an inform notice. The FMT format string may contain $1 ... $9 to refer to the first, ... nineth argument (after FMT).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.56 INSTALL_CTYPE_DESCR

Function defined at file ‘warmelt-first.melt’, line 2633.

Function formals:

indextypename
0VALUECTYP
1CSTRINGDESCR

Function description: Install a new ctype CTYP with descriptive string DESCR. Also add the ctype as symbol data in the keyword and the alternate keyword if provided.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.57 INSTALL_GLOBAL_DEFINITION_BINDING

Function defined at file ‘warmelt-macro.melt’, line 1511.

Function formals:

indextypename
0VALUEBIND
1VALUEENV
2VALUEMODCTX
3VALUESLOC

Function description: For global definitions like DEFINSTANCE, DEFMACRO, DEFCMATCHER, etc. install the binding BIND with an anvironment END in the base environment of module context MODCTX at location LOC.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.58 INSTALL_MELT_GCC_PASS

Function defined at file ‘libmelt-ana-base.melt’, line 421.

Function formals:

indextypename
0VALUEPASS
1CSTRINGPOSITIONING
2CSTRINGREFPASSNAME
3LONGREFPASSNUM

Function description: Obsolete function to install a GCC pass coded in MELT, replaced with INSTALL_MELT_PASS_IN_GCC. The PASS should be an object, instance of a sub-class of CLASS_GCC_PASS, e.g. of CLASS_GCC_GIMPLE_PASS. The POSITIONNING is "before" or "after" or "replace". The reference pass is given thru REFPASSNAME and REFPASSNUM. Usually INSTALL_MELT_GCC_PASS is called from a mode initializer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.59 INSTALL_MELT_MODE

Function defined at file ‘warmelt-modes.melt’, line 40.

Function formals:

indextypename
0VALUEMODE
1CSTRINGMODENAME

Function description: INSTALL_MELT_MODE installs a new MELT mode, ie an instance of CLASS_MELT_MODE. If MODE has no :named_name use MODENAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.60 INSTALL_MELT_PASS_IN_GCC

Function defined at file ‘libmelt-ana-base.melt’, line 160.

Function formals:

indextypename
0VALUEPASS
1VALUEPOSITIONING
2VALUEREFPASSNAME
3LONGREFPASSNUM

Function description: INSTALL_MELT_PASS_IN_GCC is installing your GCC pass coded in MELT. The PASS should be an object, instance of a sub-class of CLASS_GCC_PASS, e.g. of CLASS_GCC_GIMPLE_PASS. The POSITIONNING is :before or :after or :replace. The reference pass is given thru REFPASSNAME -a boxed string- and REFPASSNUM. Usually INSTALL_MELT_PASS_IN_GCC is called from a mode initializer, see also INSTALL_MELT_MODE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.61 INSTALL_METHOD

Function defined at file ‘warmelt-first.melt’, line 3631.

Function formals:

indextypename
0VALUEDIS
1VALUESEL
2VALUEFUN

Function description: Install in class or discriminant DIS for selector SEL the function FUN as method body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.62 IS_EMPTY_STRING

Function defined at file ‘warmelt-first.melt’, line 1461.

Function formals:

indextypename
0VALUESTRING

Function description: Test that value string is empty


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.63 IS_NON_EMPTY_STRING

Function defined at file ‘warmelt-first.melt’, line 1466.

Function formals:

indextypename
0VALUESTRING

Function description: Test that value string is not empty


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.64 IS_POLLING_INPUTS

Function defined at file ‘warmelt-hooks.melt’, line 3114.

Function description: IS_POLLING_INPUTS return :TRUE with secondarily the number of input channels if some channels are polling, or nil otherwise


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.65 JSONOBJECT_GET_NAMED

Function defined at file ‘warmelt-base.melt’, line 4191.

Function formals:

indextypename
0VALUEVJOB
1VALUEATNAME

Function description: Dichotomically get in JSONobject VJ the value associated to name NAME which should be a string or an instance of CLASS_NAMED, or else nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.66 JSON_CANONICAL_NAME

Function defined at file ‘warmelt-base.melt’, line 3985.

Function formals:

indextypename
0VALUEN

Function description: Gives the JSON canonical name N. If N is a all-lower-cases string of some existing symbol or keyword, gives that symbol or string, otherwise if N is a string gives just that N


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.67 JSON_NAME_EQUAL

Function defined at file ‘warmelt-base.melt’, line 3964.

Function formals:

indextypename
0VALUELV
1VALUERV

Function description: Compare two JSON names LV and RV for equality.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.68 JSON_NAME_LESS

Function defined at file ‘warmelt-base.melt’, line 3945.

Function formals:

indextypename
0VALUELV
1VALUERV

Function description: Compare two JSON names LV and RV for less.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.69 LIST_APPEND2LIST

Function defined at file ‘warmelt-first.melt’, line 3391.

Function formals:

indextypename
0VALUEDLIST
1VALUESLIST

Function description: Add to the destination list DLIST the source list SLIST: add every element of the source list at end of the destination. Return the DLIST.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.70 LIST_CLONE

Function defined at file ‘warmelt-base.melt’, line 664.

Function formals:

indextypename
0VALUELIS
1VALUEDISC

Function description: The function LIST_CLONE is cloning the given LIS into a fresh list of given DISC or else DISCR_LIST


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.71 LIST_EVERY

Function defined at file ‘warmelt-first.melt’, line 3364.

Function formals:

indextypename
0VALUELIS
1VALUEF

Function description: Given a list LIS and a function F, apply F to every element of the list. Return nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.72 LIST_FIND

Function defined at file ‘warmelt-first.melt’, line 3423.

Function formals:

indextypename
0VALUELIS
1VALUEX
2VALUEF

Function description: LIST_FIND find in list LIS the first element E such that (F E X), if F is null use the identity test.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.73 LIST_ITERATE_TEST

Function defined at file ‘warmelt-first.melt’, line 3375.

Function formals:

indextypename
0VALUELIS
1VALUEF

Function description: Given a list LIS and a function F, apply F to every element and its pair in the list. If it returns nil with an other secondary value, return the element and the other.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.74 LIST_MAP

Function defined at file ‘warmelt-first.melt’, line 3406.

Function formals:

indextypename
0VALUELIS
1VALUEF

Function description: LIST_MAP LIS F maps F to each element of list LIS, so returns the list (LIST (F E_1) ...(F E_n)) if LIS is the (LIST E_1 ... E_n).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.75 LIST_NTH_ELEMENT

Function defined at file ‘warmelt-base.melt’, line 630.

Function formals:

indextypename
0VALUELIS
1LONGRK

Function description: The LIST_NTH_ELEMENT function finds in list LIS the component of rank RK, counting from last element if RK is negative. This function scans linearly the list till the component is found.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.76 LIST_REMOVE_LAST_ELEMENT

Function defined at file ‘warmelt-base.melt’, line 3580.

Function formals:

indextypename
0VALUELIS

Function description: LIST_REMOVE_LAST_ELEMENT is a costly function to remove and return the last element of a list LIS. It runs in a time proportional to the length of the list LIS and truncates it.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.77 MACROEXPAND_1

Function defined at file ‘warmelt-macro.melt’, line 2032.

Function formals:

indextypename
0VALUESEXPR
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: Function to macro-expand a single s-expr SEXPR in environment ENV using the macroexpander MEXPAND in module context MODCTX. Return the expanded form, subclass of CLASS_SOURCE, and perhaps other such source expansions in a list or tuple secondary result.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.78 MACROEXPAND_TOPLEVEL_LIST

Function defined at file ‘warmelt-macro.melt’, line 2633.

Function formals:

indextypename
0VALUESLIST
1VALUEENV
2VALUEMEXPANDER
3VALUEMODCTX

Function description: The MACRO_EXPAND_TOPLEVEL_LIST is macro-expanding a list SLIST of top-level S-expressions, in environment ENV, using the macro-expanded MEXPANDER, in module context MODCTX. Any such top-level S-expressions macroexpanded to nil is silently skipped, like SKIP_NIL does.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.79 MAKE_GIMPLE_CALL

Function defined at file ‘libmelt-ana-gimple.melt’, line 2126.

Function formals:

indextypename
0VALUETLHS
1VALUETFUNV
2VALUEARGS

Function description: The function MAKE_GIMPLE_CALL build a boxed gimple_call with lefthandside TLHS for function tree boxed in TFUNV and arguments boxed in list or multiple ARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.80 MAKE_GIMPLE_SWITCH

Function defined at file ‘libmelt-ana-gimple.melt’, line 3326.

Function formals:

indextypename
0VALUEINDEXV
1VALUEDEFCASEV
2VALUECASES

Function description: the MAKE_GIMPLE_SWITCH function make a boxed gimple switch with index in boxed tree INDEXV, default case in boxed tree DEFCASEV, and cases in CASES which is a list or tuple of boxed case label trees.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.81 MAKE_JSONOBJECT

Function defined at file ‘warmelt-base.melt’, line 4041.

Function formals:

indextypename
0VALUEDIS

Function description: Dynamically build a JSON object of discriminant DIS. Variadic arguments are alternatively name and value entries; a name entry is a named object or a string value or a list or tuple of named objects or strings; a value entry is a named object, a string, null, or a list or tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.82 MAKE_JSON_PARSER

Function defined at file ‘warmelt-hooks.melt’, line 3866.

Function formals:

indextypename
0VALUERESCLOS
1VALUEERRCLOS
2VALUEDATA

Function description: MAKE_JSON_PARSER create an initialized instance of CLASS_JSON_PARSER with the given RESCLOS closure getting the parsed JSON, the given ERRCLOS handling errors, and some additional DATA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.83 MAKE_TREE_CALL_EXPR

Function defined at file ‘libmelt-ana-tree.melt’, line 2465.

Function formals:

indextypename
0VALUEFNV
1VALUEARGV

Function description: The function MAKE_TREE_CALL_EXPR takes a boxed tree function declaration FNV and a tuple or a list of boxes tree arguments ARGV and build a boxed CALL_EXPR tree, or else nil. See alo TREE_CALL_EXPR quasiprimitive.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.84 MAPOBJECT_EVERY

Function defined at file ‘warmelt-first.melt’, line 3302.

Function formals:

indextypename
0VALUEMAP
1VALUEF

Function description: For a given hash-map of objects MAP and a function F, apply F to every attribute object and value in the map. Returns nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.85 MAPOBJECT_ITERATE_TEST

Function defined at file ‘warmelt-first.melt’, line 3317.

Function formals:

indextypename
0VALUEMAP
1VALUEF

Function description: With a given object hash-map MAP and function F which returns a boolean [=nil or not] test value and perhaps a secundary other value, iterate on the map and apply F to every attribute and value in the MAP. If F returns a nil primary result, stop the iteration, and return the failed attribute, associated value, and an eventual other secundary results value returned by F.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.86 MAPOBJECT_SORTED_ATTRIBUTE_TUPLE

Function defined at file ‘warmelt-base.melt’, line 3898.

Function formals:

indextypename
0VALUEMAPO

Function description: Give the alphabetically sorted tuple of attributes in a given object map MAPO


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.87 MAPSTRING_EVERY

Function defined at file ‘warmelt-base.melt’, line 1886.

Function formals:

indextypename
0VALUEMAP
1VALUEF

Function description: For a given hash-map of strings MAP and a function F, apply F to every attribute object and [perhaps allocated] string value. Returns nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.88 MAPSTRING_ITERATE_TEST

Function defined at file ‘warmelt-base.melt’, line 1899.

Function formals:

indextypename
0VALUEMAP
1VALUEF

Function description: For a given hash-map of strings MAP and a function F, apply F to every attribute object and string value. If it returns a null value, with an other secundary value, gives the failing attribute, its value, and the other.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.89 MELT_INVOKE_INPUT_CALLBACKS

Function defined at file ‘warmelt-hooks.melt’, line 2892.

Function formals:

indextypename
0VALUETUPINCH
1VALUETUPSTATE
2LONGNBINS

Function description: MELT_INVOKE_INPUT_CALLBACKS is an internal utility, useful for REGISTER_RAW_INPUT_CHANNEL_HANDLER and REGISTER_PARAGRAPH_INPUT_CHANNEL_HANDLER...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.90 MELT_MAKE_SEXPR

Function defined at file ‘warmelt-base.melt’, line 142.

Function formals:

indextypename
0VALUELOC

Function description: Dynamically build an s-expression of CLASS_SEXPR with location LOC and other arguments. Also used by BACKQUOTE and QUOTE macros.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.91 MELT_PREDEFINED_GET

Function defined at file ‘warmelt-base.melt’, line 3716.

Function formals:

indextypename
0VALUENAMV

Function description: Retrieve the predefined by a name value NAMV. Use with caution, because some predefined are really internal.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.92 MELT_REGISTER_GCC_ATTRIBUTE_AT

Function defined at file ‘warmelt-hooks.melt’, line 2432.

Function formals:

indextypename
0VALUELOC
1VALUEATTR

Function description: The MELT_REGISTER_GCC_ATTRIBUTE_AT is an internal variadic function, used by REGISTER_GCC_ATTRIBUTE macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.93 MELT_REGISTER_TRANSLATOR_RUNNER_MACROEXPANSIONS

Function defined at file ‘warmelt-macro.melt’, line 3033.

Function formals:

indextypename
0VALUECLOS

Function description: MELT_REGISTER_TRANSLATOR_RUNNER_MACROEXPANSIONS is an internal utility to enable forward reference to melt_translate_run_macroexpansions_list defined in ‘warmelt-outobj.melt’.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.94 MELT_TRANSLATE_RUN_MACROEXPANSIONS_LIST

Function defined at file ‘warmelt-outobj.melt’, line 7777.

Function formals:

indextypename
0VALUELISMEXP
1VALUEENV
2VALUEPARMODCTX

Function description: The utility function MELT_TRANSLATE_RUN_MACROEXPANSIONS_LIST translates and runs a list of macroexpansions. It is used for expansion of DEFMACRO-ed macronames, or :macro LET bindings.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.95 MELT_WALK_USE_DEF_CHAINS

Function defined at file ‘libmelt-ana-gimple.melt’, line 3980.

Function formals:

indextypename
0VALUECLOS
1VALUEVAL
2TREETRVAR

Function description: Walk in an unspecified order the use-def chain of SSA variable TRVAR; apply the CLOS closure to the VAL value and to the current :tree and :gimple. Stop walking if the closure gives null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.96 MULTIPLE_BACKWARD_EVERY

Function defined at file ‘warmelt-base.melt’, line 1959.

Function formals:

indextypename
0VALUETUP
1VALUEF

Function description: Apply to every component (from last to first) of tuple TUP backwards, and its index the given function F. Return nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.97 MULTIPLE_EVERY

Function defined at file ‘warmelt-base.melt’, line 1948.

Function formals:

indextypename
0VALUETUP
1VALUEF

Function description: Apply to every component of tuple TUP and its index the given function F. Return nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.98 MULTIPLE_EVERY_BOTH

Function defined at file ‘warmelt-base.melt’, line 1971.

Function formals:

indextypename
0VALUETUP1
1VALUETUP2
2VALUEF

Function description: Given two tuples TUP1 and TUP2, apply function F to every component of TUP1 with component of TUP2 and index. Stop when either end is reached. Return nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.99 MULTIPLE_ITERATE_TEST

Function defined at file ‘warmelt-first.melt’, line 3538.

Function formals:

indextypename
0VALUETUP
1VALUEF

Function description: Given a multiple TUP and a function F, find the first component on which F returns nil and some other value. Return the component, its index, and that other value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.100 MULTIPLE_MAP

Function defined at file ‘warmelt-first.melt’, line 3555.

Function formals:

indextypename
0VALUETUP
1VALUEF

Function description: Given a multiple TUP and a function F, make a multiple made of the application of F to every component and its index.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.101 MULTIPLE_SORT

Function defined at file ‘warmelt-base.melt’, line 3823.

Function formals:

indextypename
0VALUEMUL
1VALUECMP
2VALUEDIS

Function description: Returns a sorted tuple from the tuple MUL, the compare function CMP, see HOOK_SORT_COMPARE_LESS for details about it, using the optional tuple discriminant DIS (using DISCR_MULTIPLE if null). If MUL is not a tuple, or CMP is not a closure or DIS is not a tuple discriminant or null, then a null value is returned. If the closure CMP does not define an order the behavior is undefined. The CMP function can be simple or complex, perhaps even [recursively] calling MULTIPLE_SORT itself (but that is probably unusual). The sorting is stable.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.102 MULTIPLE_TO_LIST

Function defined at file ‘warmelt-first.melt’, line 3572.

Function formals:

indextypename
0VALUETUP
1VALUEDISC
2VALUETRANSF

Function description: Given a multiple TUP, a list discriminant DISC [by default DISCR_LIST], a function TRANSF [by default the identity], make a list of every element of the tuple transformed by TRANSF.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.103 OUTPUT_JSON

Function defined at file ‘warmelt-base.melt’, line 1753.

Function formals:

indextypename
0VALUEOUT
1VALUEV

Function description: Output in JSON format to output channel OUT the value V


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.104 OVERWRITE_ENV

Function defined at file ‘warmelt-first.melt’, line 3908.

Function formals:

indextypename
0VALUEENV
1VALUEBINDING

Function description: Overwrite in environment ENV or its ancestor the given BINDING, in the environment where it has already been bound. See also CLASS_ANY_BINDING and CLASS_ENVIRONMENT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.105 PAIRLIST_TO_MULTIPLE

Function defined at file ‘warmelt-first.melt’, line 3473.

Function formals:

indextypename
0VALUEPAIR
1VALUEDISC
2VALUEF

Function description: Make a multiple from a list of pairs: given a pair list starting with PAIR and a multiple discriminant DISC and an optional function F [by default the identity], return a multiple of discriminant DISC made of the result of applying F to every head of pairs.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.106 PATMACEXPAND_FOR_MATCHER

Function defined at file ‘warmelt-macro.melt’, line 2302.

Function formals:

indextypename
0VALUEPAIRS
1VALUEMATCHER
2VALUEENV
3VALUEPSLOC
4VALUEPCTX

Function description: PATMACEXPAND_FOR_MATCHER is an utility function to expand a pairlist PAIRS for a pattern matcher PATCHER with both input & output arguments in environment ENV, parent location PSLOC, and pattern expansion context PCTX. See also PATTERN_WEIGHT_TUPLE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.107 PATTERN_WEIGHT_TUPLE

Function defined at file ‘warmelt-macro.melt’, line 2355.

Function formals:

indextypename
0VALUESPATS

Function description: The function PATTERN_WEIGHT_TUPLE compute the tuple, and their maximum, their minimum, and their sum, of the pattern weights of the SPATS tuple argument made of instances of CLASS_SOURCE_PATTERN.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.108 POST_DOMINATED_BY_OTHER

Function defined at file ‘libmelt-ana-base.melt’, line 964.

Function formals:

indextypename
0VALUEBBA
1VALUEBBB

Function description: true if boxed basic_block BBA is post dominated by boxed basic_block BBB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.109 PRAGMA_LEX

Function defined at file ‘libmelt-ana-tree.melt’, line 3603.

Function description: Thin wrapper around pragma_lex from c-family/c-pragma.h, to be called from pragma handling to get some lexemes inside pragmas. Returns the type, as a symbol, and secondarily the tree. See also REGISTER_PLAIN_PRAGMA and REGISTER_EXPANDED_PRAGMA, since you should call this PRAGMA_LEX only within your functions registered that way.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.110 PUT_CODE_BUFFER_LIMIT

Function defined at file ‘warmelt-outobj.melt’, line 83.

Function formals:

indextypename
0VALUELIM

Function description: Function to verbosely change the generated code buffer limit between 2Mb and 64Mb. See also GET_CODE_BUFFER_LIMIT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.111 PUT_ENV

Function defined at file ‘warmelt-first.melt’, line 3889.

Function formals:

indextypename
0VALUEENV
1VALUEBINDING

Function description: Put into environment ENV the given BINDING. See also CLASS_ANY_BINDING and CLASS_ENVIRONMENT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.112 READ_ARG_LIST

Function defined at file ‘libmelt-ana-base.melt’, line 2058.

Function formals:

indextypename
0VALUELOCS
1CSTRINGARGNAME

Function description: If plugin argument ARGNAME is provided, read it into a list located thru LOCS, or else nil.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.113 REGISTER_ALARM_TIMER

Function defined at file ‘warmelt-hooks.melt’, line 4439.

Function formals:

indextypename
0VALUECLOS
1LONGPERIODMS
2VALUEDATA

Function description: REGISTER_ALARM_TIMER is the low level function to register the closure CLOS to be called periodically with a period of PERIODMS -at least 50- milliseconds and some client DATA. The closure should return non-nil for the alarm to be repeated. REGISTER_ALARM_TIMER returns a timer object, usable for UNREGISTER_ALARM_TIMER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.114 REGISTER_ALL_IPA_PASSES_END_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 957.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_IPA_PASSES_END_FIRST to register a function FUN to be run at PLUGIN_ALL_IPA_PASSES_END, in first place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.115 REGISTER_ALL_IPA_PASSES_END_LAST

Function defined at file ‘warmelt-hooks.melt’, line 980.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_IPA_PASSES_END_LAST to register a function FUN to be run at PLUGIN_ALL_IPA_PASSES_END, in last place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.116 REGISTER_ALL_IPA_PASSES_START_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 834.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_IPA_PASSES_START_FIRST to register a function FUN to be run at PLUGIN_ALL_IPA_PASSES_START, in first place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.117 REGISTER_ALL_IPA_PASSES_START_LAST

Function defined at file ‘warmelt-hooks.melt’, line 857.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_IPA_PASSES_START_LAST to register a function FUN to be run at PLUGIN_ALL_IPA_PASSES_START, in last place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.118 REGISTER_ALL_PASSES_END_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 712.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_PASSES_END_FIRST to register a function FUN to be run at PLUGIN_ALL_PASSES_END, in first place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.119 REGISTER_ALL_PASSES_END_LAST

Function defined at file ‘warmelt-hooks.melt’, line 735.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_PASSES_END_LAST to register a function FUN to be run at PLUGIN_ALL_PASSES_END, in last place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.120 REGISTER_ALL_PASSES_START_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 583.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_PASSES_START_FIRST to register a function FUN to be run at PLUGIN_ALL_PASSES_START, in first place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.121 REGISTER_ALL_PASSES_START_LAST

Function defined at file ‘warmelt-hooks.melt’, line 606.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_ALL_PASSES_START_LAST to register a function FUN to be run at PLUGIN_ALL_PASSES_START, in last place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.122 REGISTER_BASICBLOCK_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 163.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :basic_block-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :basic_block stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.123 REGISTER_CHILD_PROCESS_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 4614.

Function formals:

indextypename
0VALUECLOS
1LONGPID
2VALUEDATA

Function description: REGISTER_CHILD_PROCESS_HANDLER is the low level function to register a handler of closure CLOS for termination of process PID with extra DATA. The CLOS would be applied to the returned child


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.124 REGISTER_DIAG_BASIC_BLOCK

Function defined at file ‘warmelt-macro.melt’, line 67.

Function formals:

indextypename
0VALUEC

Function description: Register a closure to handle :basic_block stuff in diagnostic messages.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.125 REGISTER_DIAG_EDGE

Function defined at file ‘warmelt-macro.melt’, line 72.

Function formals:

indextypename
0VALUEC

Function description: Register a closure to handle :edge stuff in diagnostic messages.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.126 REGISTER_DIAG_GIMPLE

Function defined at file ‘warmelt-macro.melt’, line 52.

Function formals:

indextypename
0VALUEC

Function description: Register a closure to handle :gimple stuff in diagnostic messages.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.127 REGISTER_DIAG_GIMPLE_SEQ

Function defined at file ‘warmelt-macro.melt’, line 57.

Function formals:

indextypename
0VALUEC

Function description: Register a closure to handle :gimple_seq stuff in diagnostic messages.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.128 REGISTER_DIAG_TREE

Function defined at file ‘warmelt-macro.melt’, line 62.

Function formals:

indextypename
0VALUEC

Function description: Register a closure to handle :tree stuff in diagnostic messages.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.129 REGISTER_EARLY_GIMPLE_PASSES_END_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1203.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_EARLY_GIMPLE_PASSES_END_FIRST to register a function FUN to be run at PLUGIN_EARLY_GIMPLE_PASSES_END, in first place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.130 REGISTER_EARLY_GIMPLE_PASSES_END_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1226.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_EARLY_GIMPLE_PASSES_END_LAST to register a function FUN to be run at PLUGIN_EARLY_GIMPLE_PASSES_END, in last place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.131 REGISTER_EARLY_GIMPLE_PASSES_START_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1080.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_EARLY_GIMPLE_PASSES_START_FIRST to register a function FUN to be run at PLUGIN_EARLY_GIMPLE_PASSES_START, in first place. FUN must be a closure which takes no arguments and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.132 REGISTER_EARLY_GIMPLE_PASSES_START_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1103.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_EARLY_GIMPLE_PASSES_START_LAST to register a function FUN to be run at PLUGIN_EARLY_GIMPLE_PASSES_START, in last place. FUN must be a closure which takes no argument and whose result is ignored.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.133 REGISTER_EDGE_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 150.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :edge-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :edge stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.134 REGISTER_EXPANDED_PRAGMA

Function defined at file ‘libmelt-ana-tree.melt’, line 3649.

Function formals:

indextypename
0VALUESPACE
1VALUENAME
2VALUEFUN
3VALUEDATA

Function description: Register an expanded pragma using c_register_pragma_with_expansion_and_data in given SPACE (default is :melt) with a given NAME and closure FUN and DATA. Return a newly added instance of CLASS_GCC_EXPANDED_PRAGMA. See also REGISTER_PLAIN_PRAGMA and use PRAGMA_LEX to get lexemes inside the pragma from FUN. Use with parcimony, some versions of GCC accept only two dozens of plugin pragmas.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.135 REGISTER_FINISH_DECL_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1650.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_FINISH_DECL_FIRST to register a function FUN to be run at PLUGIN_FINISH_DECL hook, in first place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.136 REGISTER_FINISH_DECL_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1673.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_FINISH_DECL_LAST to register a function FUN to be run at PLUGIN_FINISH_DECL hook, in last place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.137 REGISTER_FINISH_TYPE_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1458.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_FINISH_TYPE_FIRST to register a function FUN to be run at PLUGIN_FINISH_TYPE hook, in first place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.138 REGISTER_FINISH_TYPE_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1481.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_FINISH_TYPE_LAST to register a function FUN to be run at PLUGIN_FINISH_TYPE hook, in last place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.139 REGISTER_GENERATOR_DEVICE

Function defined at file ‘warmelt-macro.melt’, line 1734.

Function formals:

indextypename
0VALUEDEFIN
1VALUEREPR
2VALUEMODCTX

Function description: Function to register some C generating device in the module context, to be able to generate for syntax correctness a dummy syntax-testing C function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.140 REGISTER_GIMPLESEQ_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 137.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :gimple_seq-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :gimple_seq stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.141 REGISTER_GIMPLE_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 124.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :gimple-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :gimple stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.142 REGISTER_LOOP_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 176.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :loop-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :loop stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.143 REGISTER_OVERRIDE_GATE_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 233.

Function formals:

indextypename
0VALUECLO

Function description: Register a function CLO for PLUGIN_OVERRIDE_GATE at first place. See also UNREGISTER_OVERRIDE_GATE_FIRST, REGISTER_OVERRIDE_GATE_LAST, etc..


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.144 REGISTER_OVERRIDE_GATE_LAST

Function defined at file ‘warmelt-hooks.melt’, line 241.

Function formals:

indextypename
0VALUECLO

Function description: Register a function CLO for PLUGIN_OVERRIDE_GATE at last place. See also UNREGISTER_OVERRIDE_GATE_LAST, REGISTER_OVERRIDE_GATE_FIRST, etc...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.145 REGISTER_PARAGRAPH_INPUT_CHANNEL_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 3165.

Function formals:

indextypename
0VALUECLOS
1VALUEDATA
2LONGINCHFD

Function description: REGISTER_PARAGRAPH_INPUT_CHANNEL_HANDLER registers an asynchronous paragraph input channel handler, such as for the graphical user interface probe. CLOS is the registered closure, DATA is some client data, INCHFD is the input Unix file descriptor. When an entire message (double-newline ended sequence of MELT values in MELT syntax) is recieved from the INCHFD, the CLOS is applied to the input channel handler -containing the data as its INCH_DATA field-, a read-only instance of CLASS_INPUT_CHANNEL_HANDLER, and to the read list. When end-of-file is obtained on INCHFD, the closure is similarily applied with a null value instead of the read list. Returns an opaque channel of CLASS_PARAGRAPH_INPUT_CHANNEL_HANDLER that should not be mutated by application code. See also UNREGISTER_INPUT_CHANNEL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.146 REGISTER_PASS_EXECUTION_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1805.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_PASS_EXECUTION_FIRST to register a function FUN to be run at PLUGIN_PASS_EXECUTION hook, in first place. FUN must be a closure which take as arguments boxed-pass-name raw-pass-number pass-type-keyword.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.147 REGISTER_PASS_EXECUTION_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1826.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_PASS_EXECUTION_LAST to register a function FUN to be run at PLUGIN_PASS_EXECUTION hook, in last place. FUN must be a closure which take as arguments boxed-pass-name raw-pass-number pass-type-keyword.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.148 REGISTER_PLAIN_PRAGMA

Function defined at file ‘libmelt-ana-tree.melt’, line 3693.

Function formals:

indextypename
0VALUESPACE
1VALUENAME
2VALUEFUN
3VALUEDATA

Function description: Register a plain (unexpanded) pragma using c_register_pragma_with_expansion_and_data in given SPACE (default is :melt) with a given NAME and closure FUN and DATA. Return a newly added instance of CLASS_GCC_PLAIN_PRAGMA. See also REGISTER_EXPANDED_PRAGMA and use PRAGMA_LEX to get lexemes inside the pragma from FUN. Use with parcimony, some versions of GCC accept only two dozens of plugin pragmas.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.149 REGISTER_PRE_GENERICIZE_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 1329.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_PRE_GENERICIZE_FIRST to register a function FUN to be run at PLUGIN_PRE_GENERICIZE hook, in first place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.150 REGISTER_PRE_GENERICIZE_LAST

Function defined at file ‘warmelt-hooks.melt’, line 1352.

Function formals:

indextypename
0VALUEFUN

Function description: Use REGISTER_PRE_GENERICIZE_LAST to register a function FUN to be run at PLUGIN_PRE_GENERICIZE hook, in last place. FUN must be a closure which take 1 argument (the boxed tree of function declaration being parsed).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.151 REGISTER_RAW_INPUT_CHANNEL_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 3224.

Function formals:

indextypename
0VALUECLOS
1VALUEDATA
2LONGINCHFD

Function description: REGISTER_RAW_INPUT_CHANNEL_HANDLER registers an asynchronous raw input channel handler, such as for some JSONRPC server (e.g. by DO_BLOCKING_JSONRPC2_CALL). CLOS is the registered closure, DATA is some client data, INCHFD is the input Unix file descriptor. When some bytes are recieved from the INCHFD, the CLOS is applied - by MELT_INVOKE_INPUT_CALLBACKS utility - to the input channel handler -containing the data as its INCH_DATA field-, a read-only instance of CLASS_INPUT_CHANNEL_HANDLER and to the contained string buffer. When end-of-file is obtained on INCHFD, the closure is similarily applied to the channel and a null value. Returns an opaque channel of CLASS_RAW_INPUT_CHANNEL_HANDLER that should not be mutated by application code. See also UNREGISTER_INPUT_CHANNEL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.152 REGISTER_TREE_DEBUG_FUN

Function defined at file ‘warmelt-debug.melt’, line 111.

Function formals:

indextypename
0VALUEF

Function description: Register a function for DEBUG output of :tree-s. The first argument to the registered function is an instance of CLASS_DEBUG_INFORMATION. The second argument is the raw :tree stuff. Returns the previously registered function.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.153 REMOVE_PRAGMA_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 2796.

Function formals:

indextypename
0VALUEPH

Function description: Utility to remove a pragma handler PH which should be a CLASS_GCC_PRAGMA or a boxed integer.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.154 RETRIEVE_DICTIONNARY_CTYPE

Function defined at file ‘warmelt-first.melt’, line 4019.

Function description: Retrieve the dictionnary of all ctypes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.155 RETRIEVE_DICTIONNARY_CTYPE_GTY

Function defined at file ‘warmelt-first.melt’, line 4014.

Function description: Retrieve the dictionnary of GTY-ed ctypes.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.156 ROUTINE_EVERY

Function defined at file ‘warmelt-first.melt’, line 3603.

Function formals:

indextypename
0VALUEROU
1VALUEF

Function description: Apply to every value inside routine ROU the function F


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.157 SET_REFERENCE

Function defined at file ‘warmelt-base.melt’, line 2053.

Function formals:

indextypename
0VALUER
1VALUEV

Function description: Safely put in a reference R instance of CLASS_REFERENCE the field :REFERENCED_VALUE to V. Obsolete function, use SET_REF macro.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.158 STRING4OUT

Function defined at file ‘warmelt-base.melt’, line 1658.

Function formals:

indextypename
0VALUEDIS

Function description: Variadic function to make a string for output, using DIS as the string discriminant and the rest for filling it. See also ADD2OUT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.159 SUBSTITUTE_SEXPR

Function defined at file ‘warmelt-moremacro.melt’, line 453.

Function formals:

indextypename
0VALUESEXPR
1VALUESYMBREPF
2VALUEINSIDEF

Function description: The SUBSTITUTE_SEXPR is substituting some symbols inside the given SEXPR. Each symbol inside SEXPR is passed to the SYMBREPF function which can return a list or a tuple to be replaced by several -or none- elements. When a component of SEXPR is itself an s-expression, the function INSIDEF, if given, decides -by returning non-nil- if the substitution goes inside recursively. By default the substitution does not recurse inside inner sub-s-expressions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.160 SUPERLOOP_TUPLE

Function defined at file ‘libmelt-ana-base.melt’, line 1780.

Function formals:

indextypename
0VALUELOOPV

Function description: Given a boxed loop LOOPV, return the tuple of its boxed superloops.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.161 SYMBOL_CNAME

Function defined at file ‘warmelt-base.melt’, line 3736.

Function formals:

indextypename
0VALUESY

Function description: Give the cname of a symbol, keyword or else NULL


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.162 S_EXPR_WEIGHT

Function defined at file ‘warmelt-macro.melt’, line 1476.

Function formals:

indextypename
0VALUETOPSEXPR

Function description: Return some weight of the given sexpr TOPSEXPR or null if too big


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.163 TRANSLATE_RUN_MELT_EXPRESSIONS

Function defined at file ‘warmelt-outobj.melt’, line 7468.

Function formals:

indextypename
0VALUEEXPRS
1VALUEENV

Function description: Translate and run the MELT s-expressions from EXPRS in the ENV environment, which can be modified, e.g. by definitions inside the EXPRS. The last expression should preferably gives a value, which is returned...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.164 TREE_CHAIN_TO_TUPLE

Function defined at file ‘libmelt-ana-tree.melt’, line 222.

Function formals:

indextypename
0VALUEDISCR
1TREETR
2VALUEFUN

Function description: Make a boxed tree tuple of given DISCR - default to DISCR_MULTIPLE from the chain starting at tree TR, i.e. unfold a tree chain into a tuple of boxed trees, if a closure FUN is given, it is applied to every boxed component and its index before building the tuple.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.165 UNREGISTER_ALARM_TIMER

Function defined at file ‘warmelt-hooks.melt’, line 4471.

Function formals:

indextypename
0VALUETIM

Function description: Unregister a timer obtained by REGISTER_ALARM_TIMER.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.166 UNREGISTER_CHILD_PROCESS_HANDLER

Function defined at file ‘warmelt-hooks.melt’, line 4653.

Function formals:

indextypename
0VALUECHD

Function description: Unregister a child process handler obtained by REGISTER_CHILD_PROCESS_HANDLER **unimplemented**


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.167 UNREGISTER_INPUT_CHANNEL

Function defined at file ‘warmelt-hooks.melt’, line 3282.

Function formals:

indextypename
0VALUECHANV

Function description: UNREGISTER_INPUT_CHANNEL forcibly unregisters a channel obtained by REGISTER_PARAGRAPH_INPUT_CHANNEL_HANDLER or REGISTER_RAW_INPUT_CHANNEL_HANDLER. For gurus only.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.168 UNREGISTER_OVERRIDE_GATE_FIRST

Function defined at file ‘warmelt-hooks.melt’, line 249.

Function formals:

indextypename
0VALUECLO

Function description: Unregister a function CLO previously registered with REGISTER_OVERRIDE_GATE_FIRST for PLUGIN_OVERRIDE_GATE, return the boxed count of removed closures or null on failure.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.169 UNREGISTER_OVERRIDE_GATE_LAST

Function defined at file ‘warmelt-hooks.melt’, line 272.

Function formals:

indextypename
0VALUECLO

Function description: Unregister a function CLO previously registered with REGISTER_OVERRIDE_GATE_LAST for PLUGIN_OVERRIDE_GATE, return the boxed count of removed closures or null on failure.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.170 VARIADIC_INDEX_IDSTR

Function defined at file ‘warmelt-genobj.melt’, line 1147.

Function formals:

indextypename
0VALUEVARIADSYM

Function description: Gives the verbatim string representing the index for variadic VARIADSYM or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.171 VARIADIC_LENGTH_IDSTR

Function defined at file ‘warmelt-genobj.melt’, line 1151.

Function formals:

indextypename
0VALUEVARIADSYM

Function description: Gives the verbatim string representing the length for variadic VARIADSYM or else null.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.5.172 WARNING_AT

Function defined at file ‘warmelt-macro.melt’, line 401.

Function formals:

indextypename
0VALUELOC
1CSTRINGFMT

Function description: Variadic WARNING_AT function to emit an warning message for source location LOC. The FMT format string may contain $1 ... $9 to refer to the first, ... nineth argument (after FMT).


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6 MELT c-iterators

There are 31 c-iterators.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.1 BLOCK_SIGNALS

C-iterator defined at file ‘warmelt-first.melt’, line 4396.

C-iterator description: The BLOCK_SIGNALS C-iterator provides a sequence inside which signals are not handled. It could be dynamically nested.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.2 EACH_BB_CFUN

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1482.

c-iterator body formals:

indextypename
0BASIC_BLOCKCFUNBB
1TREECFUNDECL

C-iterator description: EACH_BB_CFUN iterates on every basic block CFUNBB of the current function and gives its declaration in CFUNDECL


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.3 EACH_CGRAPH_FUN_BODY

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1202.

c-iterator body formals:

indextypename
0TREEFUNTREE
1GIMPLE_SEQFUNBODY

C-iterator description: EACH_CGRAPH_FUN_BODY iterates on every cgraph_node which is a function declared as FUNTREE with a body FUNBODY.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.4 EACH_CGRAPH_FUN_CALL_FLOW_GRAPH

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1289.

c-iterator body formals:

indextypename
0TREEFUNTREE
1BASIC_BLOCKFUNENTRYBB
2BASIC_BLOCKFUNEXITBB
3VALUEBBTUP
4VALUETMPV

C-iterator description: EACH_CGRAPH_FUN_CALL_FLOW_GRAPH iterates on every callgraph function with a body and a control flow graph, giving the declaration FUNTREE, the entry and exit basic blocks FUNENTRYBB and FUNEXITBB, the tuple of boxed basic blocks BBTUP, and needs an internal temporary value TMPV


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.5 EACH_CGRAPH_PUSHED_CFUN

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1389.

c-iterator body formals:

indextypename
0TREEFUNTREE
1BASIC_BLOCKFUNENTRYBB
2BASIC_BLOCKFUNEXITBB

C-iterator description: EACH_CGRAPH_PUSHED_CFUN iterates on every callgraph function with a body and a control flow graph, giving the declaration FUNTREE, the entry and exit basic blocks FUNENTRYBB and FUNEXITBB, and pushing then popping at end of loop that function as the current cfun.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.6 EACH_LOCAL_DECL_CFUN

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1519.

c-iterator body formals:

indextypename
0TREETLOCDECL
1LONGIX

C-iterator description: EACH_LOCAL_DECL_CFUN iterates on every local declaration TLOCDECK of index IX in the current cfun using FOR_EACH_LOCAL_DECL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.7 EACH_LOOP

C-iterator defined at file ‘libmelt-ana-base.melt’, line 648.

c-iterator body formals:

indextypename
0LOOPCURLOOP
1LONGLOOPIX

C-iterator description: Iterate on all loops CURLOOP of index LOOPIX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.8 FOREACH_ARGUMENT_IN_CALL_EXPR_TREE

C-iterator defined at file ‘libmelt-ana-tree.melt’, line 2906.

c-iterator start formals:

indextypename
0TREETR_CALL
1LONGFIRSTIX

c-iterator body formals:

indextypename
0TREETR_ARG
1LONGARGIX

C-iterator description: Iterates within a CALL_EXPR tree TR_CALL from index FIRSTIX on each argument tree TR_ARG at index ARGIX. See also ARITY_TREE_CALL_EXPR and NTH_ARG_TREE_CALL_EXPR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.9 FOREACH_ARGUMENT_IN_FUNCTION_TREE

C-iterator defined at file ‘libmelt-ana-tree.melt’, line 2950.

c-iterator start formals:

indextypename
0TREETR_FUN

c-iterator body formals:

indextypename
0TREETRARG

C-iterator description: The FOREACH_ARGUMENT_IN_FUNCTION_TREE iterator iterates, using FOREACH_FUNCTION_ARGS on the argument of the tree TR_FUN of FUNCTION_TYPE, binding TRARG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.10 FOREACH_ARGUMENT_OF_GIMPLE_CALL

C-iterator defined at file ‘libmelt-ana-gimple.melt’, line 1807.

c-iterator start formals:

indextypename
0GIMPLEGCALL

c-iterator body formals:

indextypename
0TREEARGUMENT

C-iterator description: FOREACH_ARGUMENT_OF_GIMPLE_CALL iterates on each ARGUMENT of gimple call GCALL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.11 FOREACH_CASE_OF_GIMPLE_SWITCH

C-iterator defined at file ‘libmelt-ana-gimple.melt’, line 3404.

c-iterator start formals:

indextypename
0GIMPLEGS

c-iterator body formals:

indextypename
0TREETCASE
1LONGCASEIX

C-iterator description: FOREACH_CASE_OF_GIMPLE_SWITCH iterate on each tree case TCASE and index CASEIX of gimple switch GS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.12 FOREACH_CHAIN_VALUE_PURPOSE_IN_TREE_LIST

C-iterator defined at file ‘libmelt-ana-tree.melt’, line 1140.

c-iterator start formals:

indextypename
0TREETR

c-iterator body formals:

indextypename
0TREETRCHAIN
1TREETRVAL
2TREETRPURP

C-iterator description: FOREACH_CHAIN_VALUE_PURPOSE_IN_TREE_LIST iterates in a TREE_LIST tree TR binding TRVAL and TRPURP to each value and purpose and TRCHAIN to the current element.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.13 FOREACH_EDGE_BB_SUCCS

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1019.

c-iterator start formals:

indextypename
0BASIC_BLOCKBB

c-iterator body formals:

indextypename
0EDGEEDG

C-iterator description: FOREACH_EDGE_BB_SUCC iterates on the basic block BB edges succeeding it EDG


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.14 FOREACH_ELEMENT_IN_TREE_CONSTRUCTOR

C-iterator defined at file ‘libmelt-ana-tree.melt’, line 1971.

c-iterator start formals:

indextypename
0TREETRCONS

c-iterator body formals:

indextypename
0TREETINDEX
1TREETVALUE
2LONGNUM

C-iterator description: FOREACH_ELEMENT_IN_TREE_CONSTRUCTOR iterates using FOR_EACH_CONSTRUCTOR_ELT over the CONSTRUCTOR tree TRCONS, binding the "index" or "field" to TINDEX, the corresponding "value" to TVALUE, and the current rank to NUM.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.15 FOREACH_ENTRY_IN_JSONOBJECT

C-iterator defined at file ‘warmelt-base.melt’, line 4236.

c-iterator start formals:

indextypename
0VALUEVJ

c-iterator body formals:

indextypename
0VALUECURNAME
1VALUECURVAL
2LONGIX

C-iterator description: Iterate inside JSONobject VJ with current name CURNAME value CURVAL and index IX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.16 FOREACH_IN_BUCKETLONG

C-iterator defined at file ‘warmelt-first.melt’, line 1996.

c-iterator start formals:

indextypename
0VALUEBUCK

c-iterator body formals:

indextypename
0LONGKEY
1VALUEVAL

C-iterator description: The FOREACH_IN_BUCKETLONG c-iterator safely iterates inside given bucket of longs BUCK, retrieving each key KEY in ascending order and value VAL. The bucket should not change inside the iterator’s body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.17 FOREACH_IN_BUCKETLONG_BACKWARD

C-iterator defined at file ‘warmelt-first.melt’, line 2036.

c-iterator start formals:

indextypename
0VALUEBUCK

c-iterator body formals:

indextypename
0LONGKEY
1VALUEVAL

C-iterator description: The FOREAC_IN_BUCKETLONG_BACKWARD c-iterator safely reverse-iterates inside given bucket of longs BUCK, retrieving each key KEY in descending order and value VAL. The bucket should not change inside the iterator’s body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.18 FOREACH_IN_MAPOBJECT

C-iterator defined at file ‘warmelt-first.melt’, line 1591.

c-iterator start formals:

indextypename
0VALUEOBJMAP

c-iterator body formals:

indextypename
0VALUECURAT
1VALUECURVA

C-iterator description: The FOREACH_IN_MAPOBJECT c-iterator iterates inside the given OBJMAP and retrieves a CURAT attribute and its CURVA value.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.19 FOREACH_IN_MAPSTRING

C-iterator defined at file ‘warmelt-first.melt’, line 1672.

c-iterator start formals:

indextypename
0VALUESTRMAP

c-iterator body formals:

indextypename
0VALUECURAT
1VALUECURVA

C-iterator description: The FOREACH_IN_MAPSTRING c-iterator iterates inside the given STRMAP and retrieves a CURAT string attribute value and its CURVA value. If CURVA happens to be an instance of CLASS_NAMED with a name equal to the string key, we use it as CURAT otherwise we make a CURAT string.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.20 FOREACH_IN_MULTIPLE

C-iterator defined at file ‘warmelt-first.melt’, line 3503.

c-iterator start formals:

indextypename
0VALUETUP

c-iterator body formals:

indextypename
0VALUECOMP
1LONGIX

C-iterator description: Iterate in the given tuple TUP for each component COMP at index IX


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.21 FOREACH_IN_MULTIPLE_BACKWARD

C-iterator defined at file ‘warmelt-first.melt’, line 3519.

c-iterator start formals:

indextypename
0VALUETUP

c-iterator body formals:

indextypename
0VALUECOMP
1LONGIX

C-iterator description: Iterate backwards from last to first in the given tuple TUP for each component COMP at index IX


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.22 FOREACH_IN_STRING

C-iterator defined at file ‘warmelt-base.melt’, line 1044.

c-iterator start formals:

indextypename
0VALUEVSTR

c-iterator body formals:

indextypename
0LONGCURCH
1LONGIX

C-iterator description: The FOREACH_IN_STRING c-iterator iterates on the given string value VSTR. CURCH is the current char, and IX its index, starting from 0. Don’t change VSTR in the body!


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.23 FOREACH_LONG_UPTO

C-iterator defined at file ‘warmelt-base.melt’, line 747.

c-iterator start formals:

indextypename
0LONGIMIN
1LONGIMAX

c-iterator body formals:

indextypename
0LONGIX

C-iterator description: The FOREACH_LONG_UPTO c-iterator provides the usual ascending integer iterator. Start formals are IMIN, the minimum start integer, and IMAX, le maximal ending integer. Local formal is IX, the current index. The body is executed for each integer value IX from IMIN to IMAX included.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.24 FOREACH_MAPGIMPLE

C-iterator defined at file ‘libmelt-ana-gimple.melt’, line 144.

c-iterator start formals:

indextypename
0VALUEGIMAP

c-iterator body formals:

indextypename
0GIMPLEATT
1VALUEVAL

C-iterator description: Iterate inside the GIMAP value -a map from gimples to values- for each gimple ATT and value VAL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.25 FOREACH_MAPLOOP

C-iterator defined at file ‘libmelt-ana-base.melt’, line 593.

c-iterator start formals:

indextypename
0VALUELOOMAP

c-iterator body formals:

indextypename
0LOOPLOATT
1VALUEVAL

C-iterator description: Iterate inside map of loops LOOMAP for each loop key LOATT and value VAL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.26 FOREACH_MAPTREE

C-iterator defined at file ‘libmelt-ana-tree.melt’, line 3377.

c-iterator start formals:

indextypename
0VALUETRMAP

c-iterator body formals:

indextypename
0TREETRATT
1VALUETRVAL

C-iterator description: FOREACH_MAPTREE iterates on entries of a maptree value TRMAP, binding the tree attribute to TRATT and its value to TRVAL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.27 FOREACH_PAIR

C-iterator defined at file ‘warmelt-first.melt’, line 2663.

c-iterator start formals:

indextypename
0VALUESTART_PAIR

c-iterator body formals:

indextypename
0VALUECURPAIR
1VALUECURCOMP

C-iterator description: The FOREACH_PAIR iterator scan pairs starting from START_PAIR. Local formals are CURPAIR, bound to the current pair, and CURCOMP, bound to the current component within the pair.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.28 FOREACH_PAIR_BETWEEN

C-iterator defined at file ‘warmelt-first.melt’, line 3339.

c-iterator start formals:

indextypename
0VALUESTART_PAIR
1VALUEEND_PAIR

c-iterator body formals:

indextypename
0VALUECURPAIR
1VALUECURCOMP

C-iterator description: The FOREACH_PAIR_BETWEEN iterator goes between two (linked) pairs, given by the start formal START_PAIR and END_PAIR. Local formals are CURPAIR, bound to the current pair, and CURCOMP, bound to the current component within the pair.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.29 FOREACH_PAIR_COMPONENT_IN_LIST

C-iterator defined at file ‘warmelt-first.melt’, line 2684.

c-iterator start formals:

indextypename
0VALUELIS

c-iterator body formals:

indextypename
0VALUECURPAIR
1VALUECURCOMP

C-iterator description: The FOREACH_PAIR_COMPONENT_IN_LIST iterator goes within a list, given by the start formal LIS. Local formals are CURPAIR, bound to the current pair, and CURCOMP, bound to the current component within the list.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.30 FOREACH_SUPERLOOP

C-iterator defined at file ‘libmelt-ana-base.melt’, line 706.

c-iterator start formals:

indextypename
0LOOPLO

c-iterator body formals:

indextypename
0LOOPCURLOOP
1LONGLOOPIX

C-iterator description: Iterate of each superloop of given loop LO, for each CURLOOP of indec LOOPIX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.6.31 WITH_CFUN_DECL

C-iterator defined at file ‘libmelt-ana-base.melt’, line 1374.

c-iterator body formals:

indextypename
0TREECFUNDECL

C-iterator description: iterator done one giving the current CFUNDECL, if cfun exists


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7 MELT c-matchers

There are 277 c-matchers.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.1 AS_NULL

C-matcher defined at file ‘warmelt-first.melt’, line 1372.

c-matcher matching formal: NV - VALUE

C-matcher description: The AS_NULL matcher marches null values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.2 CLOSURE

C-matcher defined at file ‘warmelt-first.melt’, line 1762.

c-matcher matching formal: CLO - VALUE

C-matcher description: The CLOSURE patterns matches a closure.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.3 CSTRING_CONTAINING

C-matcher defined at file ‘warmelt-base.melt’, line 1845.

c-matcher matching formal: STR - CSTRING

c-matcher input formals:

indextypename
0CSTRINGCSTR

C-matcher description: The CSTRING_CONTAINING c-matcher matches a string STR and test if it contains the constant string CSTR. The match fails if STR is a null string or not prefixed by CSTR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.4 CSTRING_PREFIXED

C-matcher defined at file ‘warmelt-base.melt’, line 1832.

c-matcher matching formal: STR - CSTRING

c-matcher input formals:

indextypename
0CSTRINGCSTR

C-matcher description: The CSTRING_PREFIX c-matcher matches a string STR and test if it starts with the constant string CSTR. The match fails if STR is a null string or not prefixed by CSTR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.5 CSTRING_SAME

C-matcher defined at file ‘warmelt-base.melt’, line 1820.

c-matcher matching formal: STR - CSTRING

c-matcher input formals:

indextypename
0CSTRINGCSTR

C-matcher description: The CSTRING_SAME c-matcher matches a string STR and test if it equals to the constant string CSTR. The match fails if STR is a null string or different from CSTR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.6 GIMPLEVAL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 173.

c-matcher matching formal: GV - VALUE

c-matcher output formals:

indextypename
0GIMPLEG

C-matcher description: Match a gimple boxed value GV and extract its gimple stuff G. As operator, build a boxed gimple from G.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.7 GIMPLE_ASM

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3203.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0CSTRINGASMSTR
1LONGNINPUTS
2LONGNOUTPUTS
3LONGNCLOBBERS

C-matcher description: GIMPLE_ASM match a gimple ASM statement of string ASMSTR with NINPUTS NOUTPUTS NCLUBBERS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.8 GIMPLE_ASSIGN_ABS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 443.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_ABS match or build an unary float conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.9 GIMPLE_ASSIGN_ADDR_SPACE_CONVERT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 524.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_ADDR_SPACE_CONVERT match or build an address space conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.10 GIMPLE_ASSIGN_BINARYOP

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1369.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2
3LONGOPCODE

C-matcher description: GIMPLE_ASSIGN_BINARYOP match or build a binary operator of OPCODE into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.11 GIMPLE_ASSIGN_BIT_AND

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 930.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_BIT_AND match or build bitwise and into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.12 GIMPLE_ASSIGN_BIT_IOR

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 874.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_BIT_IOR match or build bitwise inclusive-or into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.13 GIMPLE_ASSIGN_BIT_NOT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 606.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_BIT_NOT match or build an unary bitwise not assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.14 GIMPLE_ASSIGN_BIT_XOR

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 902.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_BIT_XOR match or build bitwise exclusive-or into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.15 GIMPLE_ASSIGN_CAST

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 253.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: Match gimple GA as a casting assign into tree LHS of tree RHS. See also GIMPLE_BUILD_ASSIGN_CONVERT, GIMPLE_BUILD_ASSIGN_VIEW_CONVERT, GIMPLE_BUILD_ASSIGN_FLOAT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.16 GIMPLE_ASSIGN_CEIL_DIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1106.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_CEIL_DIV match or build ceiling division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.17 GIMPLE_ASSIGN_CEIL_MOD

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1280.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_CEIL_MOD match or build ceil modulus into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.18 GIMPLE_ASSIGN_CONVERT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 497.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_CONVERT match or build a conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.19 GIMPLE_ASSIGN_COPY

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 328.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_COPY match a copy assignment into LHS or RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.20 GIMPLE_ASSIGN_EXACT_DIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1221.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_EXACT_DIV match or build exact division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.21 GIMPLE_ASSIGN_FIXED_CONVERT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 551.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_FIXED_CONVERT match or build a fixed-point conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.22 GIMPLE_ASSIGN_FLOAT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 416.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_FLOAT match or build an unary float conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.23 GIMPLE_ASSIGN_FLOOR_DIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1135.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_FLOOR_DIV match or build floor division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.24 GIMPLE_ASSIGN_FLOOR_MOD

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1308.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_FLOOR_MOD match or build floor modulus into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.25 GIMPLE_ASSIGN_LROTATE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 814.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_LROTATE match or build bitwise leftrotate into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.26 GIMPLE_ASSIGN_LSHIFT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 753.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_LSHIFT match or build bitwise leftshift into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.27 GIMPLE_ASSIGN_MAX

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 722.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_MAX match or build maximum into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.28 GIMPLE_ASSIGN_MIN

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 693.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_MIN match or build minimum into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.29 GIMPLE_ASSIGN_MINUS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 663.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_MINUS match or build substraction into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.30 GIMPLE_ASSIGN_MULT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 990.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_MULT match or build multiplication into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.31 GIMPLE_ASSIGN_MULT_HIGHPART

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1019.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_MULT_HIGHPART match or build multiplication into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.32 GIMPLE_ASSIGN_NEGATE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 389.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_NEGATE match or build an unary negate assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.33 GIMPLE_ASSIGN_NOP

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 579.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_NOP match or build a no-op conversion assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.34 GIMPLE_ASSIGN_PAREN

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 470.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_PAREN match or build a barrier parenthesis assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.35 GIMPLE_ASSIGN_PLUS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 633.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_PLUS match or build addition into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.36 GIMPLE_ASSIGN_POINTER_PLUS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 959.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_POINTER_MINUS match or build pointer addition into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.37 GIMPLE_ASSIGN_RDIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1193.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_RDIV match or build reaol division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.38 GIMPLE_ASSIGN_ROUND_DIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1165.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_ROUND_DIV match or build rounding division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.39 GIMPLE_ASSIGN_ROUND_MOD

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1338.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_ROUND_MOD match or build rounded modulus into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.40 GIMPLE_ASSIGN_RROTATE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 844.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_RROTATE match or build bitwise rightrotate into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.41 GIMPLE_ASSIGN_RSHIFT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 783.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_RSHIFT match or build bitwise rightshift into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.42 GIMPLE_ASSIGN_SINGLE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 232.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: Match gimple GA as a single assign into tree LHS of tree RHS, or build such an assign.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.43 GIMPLE_ASSIGN_SSA_NAME_COPY

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 345.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_SSA_NAME_COPY match a copy assignment with both LHS and RHS being SSA.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.44 GIMPLE_ASSIGN_TO

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 214.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS

C-matcher description: Match gimple GA as some kind of assignment to LHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.45 GIMPLE_ASSIGN_TRUNC_DIV

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1078.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_TRUNC_DIV match or build truncated division into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.46 GIMPLE_ASSIGN_TRUNC_MOD

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1251.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_TRUNC_MOD match or build truncated modulus into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.47 GIMPLE_ASSIGN_UNARY_NOP

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 363.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_ASSIGN_UNARY_NOP match or build an unary nop assign into LHS of RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.48 GIMPLE_ASSIGN_WIDEN_MULT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1047.

c-matcher matching formal: GA - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS1
2TREERHS2

C-matcher description: GIMPLE_ASSIGN_WIDEN_MULT match or build a widening multiplication into LHS of RHS1 and RHS2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.49 GIMPLE_AT_SOURCE_LOCATION

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 189.

c-matcher matching formal: G - GIMPLE

c-matcher output formals:

indextypename
0VALUEFILEPATHV
1LONGLINE
2LONGCOL

C-matcher description: GIMPLE_AT_SOURCE_LOCATION match a gimple with a known source location, extracting the cached FILEPATHV string value and the LINE and COL info.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.50 GIMPLE_BIND

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3158.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREETVARS
1TREETBLOCK
2GIMPLE_SEQGBODY

C-matcher description: GIMPLE_BIND match or build a local bind gimple with TVARS locals and TBLOCK block symbol and GBODY body gimple_seq.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.51 GIMPLE_CALL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1837.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2LONGNBARGS

C-matcher description: GIMPLE_CALL match a gimple GC if it is a call extracting result LHS to function decl FNDECL with NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.52 GIMPLE_CALL_1

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2433.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0

C-matcher description: GIMPLE_CALL_1 match a gimple GC call of arity 1, extracting result LHD function decl FNDECL and ARG0.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.53 GIMPLE_CALL_1_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2450.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3LONGNBARGS

C-matcher description: GIMPLE_CALL_1_MORE match a gimple GC call of arity 1 or more, extracting result LHD function decl FNDECL and ARG0 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.54 GIMPLE_CALL_2

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2471.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1

C-matcher description: GIMPLE_CALL_2 match a gimple GC call of arity 2, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.55 GIMPLE_CALL_2_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2490.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4LONGNBARGS

C-matcher description: GIMPLE_CALL_2_MORE match a gimple GC call of arity 2 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.56 GIMPLE_CALL_3

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2512.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2

C-matcher description: GIMPLE_CALL_3 match a gimple GC call of arity 3, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.57 GIMPLE_CALL_3_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2533.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5LONGNBARGS

C-matcher description: GIMPLE_CALL_3_MORE match a gimple GC call of arity 3 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & number of args NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.58 GIMPLE_CALL_4

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2558.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3

C-matcher description: GIMPLE_CALL_4 match a gimple GC call of arity 4, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.59 GIMPLE_CALL_4_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2581.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6LONGNBARGS

C-matcher description: GIMPLE_CALL_4_MORE match a gimple GC call of arity 4 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.60 GIMPLE_CALL_5

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2611.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4

C-matcher description: GIMPLE_CALL_5 match a gimple GC call of arity 5, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.61 GIMPLE_CALL_5_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2637.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4
7LONGNBARGS

C-matcher description: GIMPLE_CALL_5_MORE match a gimple GC call of arity 5 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.62 GIMPLE_CALL_6

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2669.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4
7TREEARG5

C-matcher description: GIMPLE_CALL_6 match a gimple GC call of arity 6, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4 & ARG5.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.63 GIMPLE_CALL_6_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2697.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4
7TREEARG5
8LONGNBARGS

C-matcher description: GIMPLE_CALL_6_MORE match a gimple GC call of arity 6 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4 & ARG5 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.64 GIMPLE_CALL_7

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2731.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4
7TREEARG5
8TREEARG6

C-matcher description: GIMPLE_CALL_7 match a gimple GC call of arity 7, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4 & ARG5 & ARG6.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.65 GIMPLE_CALL_7_MORE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2761.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREEFNDECL
2TREEARG0
3TREEARG1
4TREEARG2
5TREEARG3
6TREEARG4
7TREEARG5
8TREEARG6
9LONGNBARGS

C-matcher description: GIMPLE_CALL_7_MORE match a gimple GC call of arity 7 or more, extracting result LHD function decl FNDECL and arguments ARG0 & ARG1 & ARG2 & ARG3 & ARG4 & ARG5 & ARG6 and number of arguments NBARGS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.66 GIMPLE_CATCH

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3014.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0TREETEXTYPE
1GIMPLE_SEQGSHANDLER

C-matcher description: GIMPLE_CATCH match or build a typed exception handler with TEXTYPE being the type[s] of exceptions, and GSHANDLER being the handler body gimpleseq.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.67 GIMPLE_COND

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1401.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS
2LONGCONDCODE

C-matcher description: GIMPLE_COND match a GIMPLE condition between LHS and RHS with the CONDCODE long.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.68 GIMPLE_COND_EQUAL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1484.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_EQUAL match or build a == condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.69 GIMPLE_COND_FALSE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1747.

c-matcher matching formal: GC - GIMPLE

C-matcher description: GIMPLE_COND_TRUE match a gimple conditional GC with an always false condition.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.70 GIMPLE_COND_GREATER

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1506.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_GREATER match or build a > condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.71 GIMPLE_COND_GREATER_OR_EQUAL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1526.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_GREATER_OR_EQUAL match or build a >= condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.72 GIMPLE_COND_LESS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1442.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_LESS match or build a < condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.73 GIMPLE_COND_LESSEQUAL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1422.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_LESSEQUAL match or build a <= condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.74 GIMPLE_COND_LTGT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1702.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_LTGT match or build a less than or greater than floating point condition reverse of GIMPLE_COND_UNEQ between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.75 GIMPLE_COND_NOTEQUAL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1463.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_NOTEQUAL match or build a != condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.76 GIMPLE_COND_ORDERED

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1569.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_ORDERED match or build a unordered floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.77 GIMPLE_COND_TRUE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1726.

c-matcher matching formal: GC - GIMPLE

C-matcher description: GIMPLE_COND_TRUE match a gimple conditional GC with an always true condition.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.78 GIMPLE_COND_UNEQ

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1680.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNEQ match or build a unordered or unequal floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.79 GIMPLE_COND_UNGE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1657.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNGE match or build a unordered or greater or equal floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.80 GIMPLE_COND_UNGT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1635.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNGT match or build a unordered or greater than floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.81 GIMPLE_COND_UNLE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1612.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNLE match or build a unordered or less or equal floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.82 GIMPLE_COND_UNLT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1590.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNLT match or build a unordered or less than floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.83 GIMPLE_COND_UNORDERED

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1548.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1TREERHS

C-matcher description: GIMPLE_COND_UNORDERED match or build a unordered floating point condition between LHS and RHS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.84 GIMPLE_COND_WITH_EDGES

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1793.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0EDGETRUEDGE
1EDGEFALSEDGE

C-matcher description: GIMPLE_COND_WITH_EDGES match a gimple conditional GC and extracts its true edge TRUEDGE and false edge FALSEDGE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.85 GIMPLE_COND_WITH_TRUE_FALSE_LABELS

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 1767.

c-matcher matching formal: GC - GIMPLE

c-matcher output formals:

indextypename
0TREETRUELAB
1TREEFALSELAB

C-matcher description: GIMPLE_COND_WITH_TRUE_FALSE_LABELS match a gimple conditional GC and extracts its true label TRUELAB and false label FALSELAB.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.86 GIMPLE_DEBUG

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2873.

c-matcher matching formal: GR - GIMPLE

C-matcher description: GIMPLE_DEBUG match a Gimple debug.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.87 GIMPLE_DEBUG_BIND

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2885.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREETVAR
1TREETVAL

C-matcher description: GIMPLE_DEBUG_BIND match a Gimple debug bind extracting tree var TVAR and value TVALUE.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.88 GIMPLE_EH_DISPATCH

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2980.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0LONGREGNUM

C-matcher description: GIMPLE_EH_DISPATCH match or build an exception dispatch. REGNUM is the region number.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.89 GIMPLE_EH_ELSE

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2952.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0GIMPLE_SEQGSNORMBODY
1GIMPLE_SEQGSEXCBODY

C-matcher description: GIMPLE_EH_ELSE match or build an exception else, sole content of GIMPLE_TRY_FINALLY node. GDNORMBODY is the normal exit body, and GSEXCBODY is the exceptional exit body.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.90 GIMPLE_EH_FILTER

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3043.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0TREETEXTYPE
1GIMPLE_SEQGSFAIL

C-matcher description: GIMPLE_EH_FILTER match or build a gimple exception specification. TEXTYPE is the list of exception types and GDFAIL is the sequence to execute on failure.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.91 GIMPLE_EH_MUST_NOT_THROW

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3063.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0TREETFNDECL

C-matcher description: GIMPLE_EH_MUST_NOT_THROW match or build an exception barrier, with a non-returning function decl invoked when exception propagates to this point.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.92 GIMPLE_ERROR_MARK

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2864.

c-matcher matching formal: GR - GIMPLE

C-matcher description: GIMPLE_ERROR_MARK match a Gimple error mark.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.93 GIMPLE_ERROR_MARK_OR_NIL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2852.

c-matcher matching formal: GR - GIMPLE

C-matcher description: GIMPLE_ERROR_MARK_OR_NIL match a nil Gimple or an error mark.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.94 GIMPLE_GOTO

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2831.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREETLABELD

C-matcher description: GIMPLE_GOTO match or build a gimple goto to label destination tree TLABELD


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.95 GIMPLE_LABEL

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2902.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREETLABEL

C-matcher description: GIMPLE_LABEL match or build a gimple label extracting the label tree TLABEL


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.96 GIMPLE_NOP

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3000.

c-matcher matching formal: GR - GIMPLE

C-matcher description: GIMPLE_NOP match or build a nop gimple


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.97 GIMPLE_PHI

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3447.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREELHS
1LONGNUMARGS

C-matcher description: GIMPLE_PHI match a PHI node with LHS being the result and NUMARGS being the number of arguments


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.98 GIMPLE_PREDICT

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3488.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0LONGPREDICTOR
1LONGOUTCOME

C-matcher description: GIMPLE_PREDICT match a GIMPLE_PREDICT statement, filling PREDICTOR and OUTCOME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.99 GIMPLE_RESX

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3086.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0LONGREGNUM

C-matcher description: GIMPLE_RESX match or build a gimple exception resume. REGNUM is the exception region number.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.100 GIMPLE_RETURN

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2806.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREERETVAL

C-matcher description: GIMPLE_RETURN match or build a gimple return extracting the returned treee RETVAL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.101 GIMPLE_SWITCH

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3237.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0TREETINDEX
1TREETDEFLAB
2LONGNUMLABELS

C-matcher description: GIMPLE_SWITCH match or build a gimple SWITCH statement indexed by TINDEX and with NUMLABELS labels, with default label tree TDEFLAB


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.102 GIMPLE_TRANSACTION

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 2925.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0GIMPLE_SEQGSBODY
1TREETLAB

C-matcher description: GIMPLE_TRANSACTION match or build a transaction block gimple. GSBODY is the gimple_seq of the body, TLAB is the label tree.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.103 GIMPLE_TRY

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3107.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0GIMPLE_SEQGSEVAL
1GIMPLE_SEQGSCLEANUP
2LONGKIND

C-matcher description: GIMPLE_TRY match a GIMPLE_TRY statement. GSEVAL is the gimple seq to evaluate, GSCLEANUP is the cleanup.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.104 GIMPLE_TRY_CATCH

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3125.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0GIMPLE_SEQGSEVAL
1GIMPLE_SEQGSCLEANUP

C-matcher description: GIMPLE_TRY_CATCH match or build a GIMPLE_TRY_CATCH statement. GSEVAL is the gimple seq to evaluate, GSCLEANUP is the cleanup.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.105 GIMPLE_TRY_FINALLY

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3141.

c-matcher matching formal: GI - GIMPLE

c-matcher output formals:

indextypename
0GIMPLE_SEQGSEVAL
1GIMPLE_SEQGSCLEANUP

C-matcher description: GIMPLE_TRY_FINALLY match or build a GIMPLE_TRY_FINALLY statement. GSEVAL is the gimple seq to evaluate, GSCLEANUP is the cleanup.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.106 GIMPLE_WITH_CLEANUP_EXPR

C-matcher defined at file ‘libmelt-ana-gimple.melt’, line 3190.

c-matcher matching formal: GR - GIMPLE

c-matcher output formals:

indextypename
0LONGCLEANUPFLAG

C-matcher description: The GIMPLE_WITH_CLEANUP_EXPR matches a cleanup expression, and sets the boolean CLEANUPFLAG


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.107 INTEGERBOX_OF

C-matcher defined at file ‘warmelt-first.melt’, line 1806.

c-matcher matching formal: BX - VALUE

c-matcher output formals:

indextypename
0LONGICT

C-matcher description: The INTEGERBOX_OF patern matches a boxed integer BX. If indeed it is a boxed integer, its integer content should match ICT. The match fails if BX is not a boxed integer (e.g. is the null value or non boxed-integer). See also MAKE_INTEGERBOX IS_INTEGERBOX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.108 INTEGER_GREATER_THAN

C-matcher defined at file ‘warmelt-first.melt’, line 1352.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The INTEGER_GREATER_THAN matcher with input number N matches an integer I if I is greater than N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.109 SOME_HOOK_WITH_DATA

C-matcher defined at file ‘warmelt-base.melt’, line 1859.

c-matcher matching formal: HOOKV - VALUE

c-matcher output formals:

indextypename
0VALUEHKDATA

C-matcher description: The SOME_HOOK_WITH_DATA matcher matches a hook value, and extracts its data in HKDATA


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.110 SOME_INTEGER_BETWEEN

C-matcher defined at file ‘warmelt-base.melt’, line 788.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGLO
1LONGHI

C-matcher description: The SOME_INTEGER_BETWEEN matcher matches integers I between a given LO and HI interval inclusively.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.111 SOME_INTEGER_DIFFERENT_FROM

C-matcher defined at file ‘warmelt-base.melt’, line 800.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_DIFFRERENT_FROM or some_integer_!= matcher with input number N matches an integer I if I is different from N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.112 SOME_INTEGER_EQUAL_TO

C-matcher defined at file ‘warmelt-base.melt’, line 812.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_EQUAL_TO -or some_integer_= matcher with input number N matches an integer I if I is or equal to N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.113 SOME_INTEGER_GREATER_OR_EQUAL_TO

C-matcher defined at file ‘warmelt-base.melt’, line 824.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_GREATER_OR_EQUAL_TO matcher or some_integer_>= with input number N matches an integer I if I is greater or equal to N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.114 SOME_INTEGER_GREATER_THAN

C-matcher defined at file ‘warmelt-base.melt’, line 836.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_GREATER_THAN matcher or some_integer_> with input number N matches an integer I if I is greater than N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.115 SOME_INTEGER_LOWER_OR_EQUAL_TO

C-matcher defined at file ‘warmelt-base.melt’, line 848.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_LOWER_OR_EQUAL_TO or some_integer_<= matcher with input number N matches an integer I if I is lower or equal to N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.116 SOME_INTEGER_LOWER_THAN

C-matcher defined at file ‘warmelt-base.melt’, line 860.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

C-matcher description: The SOME_INTEGER_LOWER_THAN or some_integer_< matcher with input number N matches an integer I if I is lower than N.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.117 SOME_INTEGER_MULTIPLE

C-matcher defined at file ‘warmelt-base.melt’, line 771.

c-matcher matching formal: I - LONG

c-matcher input formals:

indextypename
0LONGN

c-matcher output formals:

indextypename
0LONGQ

C-matcher description: The SOME_INTEGER_MULTIPLE matcher with input number N matches an integer I if N is positive and I is multiple of N and the quotient matches the subpattern Q.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.118 SOME_STRING_VALUE

C-matcher defined at file ‘warmelt-base.melt’, line 872.

c-matcher matching formal: V - VALUE

c-matcher output formals:

indextypename
0VALUESV

C-matcher description: The SOME_STRING_VALUE matches a string value V and passes it to the output SV.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.119 SOME_STRING_VALUE_CONTAINING

C-matcher defined at file ‘warmelt-base.melt’, line 885.

c-matcher matching formal: V - VALUE

c-matcher input formals:

indextypename
0CSTRINGS

C-matcher description: The SOME_STRING_VALUE_CONTAINING matched a string value V containing the constant substring S


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.120 TREE_ADDR_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2061.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREEEXPR

C-matcher description: TREE_ADDR_EXPR match an ADDR_EXPR tree TR extracting the TYPE and EXPR subtrees


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.121 TREE_ANY_ABSTRACT_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1252.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_ABSTRACT_DECL match any abstract declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.122 TREE_ANY_ARTIFICIAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1305.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_ARTIFICIAL_DECL match any artificial declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.123 TREE_ANY_DECL_OF_CONTEXT

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1208.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETCTX

C-matcher description: TREE_ANY_DECL_OF_CONTEXT match any declaration TR extracting its context TCTX.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.124 TREE_ANY_DECL_OF_INITIAL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1380.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETINIT

C-matcher description: TREE_ANY_DECL_OF_INITIAL match any declaration TR extracting its initialization TINIT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.125 TREE_ANY_DECL_OF_ORIGIN

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1238.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETORIG

C-matcher description: TREE_ANY_DECL_OF_ORIGIN match any declaration TR extracting its abstract origin TORIG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.126 TREE_ANY_DECL_OF_TYPE_ALIGN_SIZE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1222.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYP
1TREETSIZE
2LONGLALIGN

C-matcher description: TREE_ANY_DECL_OF_TYPE_ALIGN_SIZE match any declaration TR extracting its type TTYP, unit-alignment tree TALIGN, tree-unit-size TSIZE, alignment in bytes LALIGN


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.127 TREE_ANY_EXTERNAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1278.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_EXTERNAL_DECL match any external declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.128 TREE_ANY_IGNORED_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1269.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_IGNORED_DECL match any ignored declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.129 TREE_ANY_LOCAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1287.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_LOCAL_DECL match any local declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.130 TREE_ANY_NONABSTRACT_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1314.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_NONABSTRACT_DECL match any nonabstract declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.131 TREE_ANY_NONARTIFICIAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1330.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_NONARTIFICIAL_DECL match any nonartificial declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.132 TREE_ANY_NONEXTERNAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1349.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_NONEXTERNAL_DECL match any nonexternal declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.133 TREE_ANY_NONIGNORED_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1340.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_IGNORED_DECL match any nonignored declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.134 TREE_ANY_NONLOCAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1361.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_NONLOCAL_DECL match any nonlocal declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.135 TREE_ANY_NONVIRTUAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1370.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_NONVIRTUAL_DECL match any nonvirtual declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.136 TREE_ANY_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1442.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_TYPE matches any type tree.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.137 TREE_ANY_TYPE_OF_CHAIN

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1494.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETCHAIN

C-matcher description: TREE_ANY_TYPE_OF_VARIANT matches any type tree and extracts its chain TCHAIN field.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.138 TREE_ANY_TYPE_OF_CONTEXT

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1507.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETCTX

C-matcher description: TREE_ANY_TYPE_OF_CONTEXT matches any type tree and extracts its TCTX context field.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.139 TREE_ANY_TYPE_OF_POINTER_TO

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1465.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETPTRTO

C-matcher description: TREE_ANY_TYPE_OF_POINTER_TO matches any type tree and extracts its pointer to field TPTRTO.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.140 TREE_ANY_TYPE_OF_SIZE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1452.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRSIZE

C-matcher description: TREE_ANY_TYPE_OF_SIZE matches any type tree and extracts its size.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.141 TREE_ANY_TYPE_OF_VARIANT

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1480.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETNEXTVARIANT
1TREETMAINVARIANT

C-matcher description: TREE_ANY_TYPE_OF_VARIANT matches any type tree and extracts its next variant TNEXTVARIANT and main variant TMAINVARIANT fields.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.142 TREE_ANY_VIRTUAL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1296.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ANY_VIRTUAL_DECL match any virtual declaration TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.143 TREE_ARRAY_RANGE_REF_FULL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 931.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRARR
1TREETRINDEX
2TREETRMIN
3TREETRSIZE

C-matcher description: TREE_ARRAY_RANGE_REF_FULL match a tree array reference extracting array TRARR and index TRINDEX minimum TRMIN and size TRSIZE, for ARRAY_RANGE_REF


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.144 TREE_ARRAY_REF

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 898.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRARR
1TREETRINDEX

C-matcher description: TREE_ARRAY_REF match a tree array reference extracting array TRARR and index TRINDEX


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.145 TREE_ARRAY_REF_FULL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 912.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRARR
1TREETRINDEX
2TREETRMIN
3TREETRSIZE

C-matcher description: TREE_ARRAY_REF_FULL match a tree array reference extracting array TRARR and index TRINDEX minimum TRMIN and size TRSIZE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.146 TREE_ARRAY_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2280.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETELEMTYPE
1TREETDOMAINTYPE

C-matcher description: TREE_ARRAY_TYPE match an array type tree TR extracting the elements tpe TELEMTYPE and the domain type TDOMAINTYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.147 TREE_BIND_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2130.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETBVARS
1TREETBODY
2TREETBLOCK

C-matcher description: TREE_BIND_EXPR match BIND_EXPR trees filling TBVARS, TBODY, TBLOCK


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.148 TREE_BIT_FIELD_REF

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1041.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYP
1TREETAGGR
2TREETNBITS
3TREETPOS

C-matcher description: TREE_BIT_FIELD_REF match a bit field reference tree TR extracting the type in TTYP, the aggregate -record or union- expression in TAGGR, the number of bits tree in TNBITS, the bit position tree in TPOS.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.149 TREE_BLOCK

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1077.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRVARS
1TREETRSUBBLOCKS
2TREETRCTXT
3TREETRCHAIN
4TREETRORIG

C-matcher description: TREE_BLOCK match a tree block extracting tree variables TRVARS, subblocks TRSUBBLOCKS, supercontext TRCTXT, chain TRCHAIN, abstract origin TRORIG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.150 TREE_BOOLEAN_FALSE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3290.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_BOOLEAN_FALSE_NODE matches or gives the constant false node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.151 TREE_BOOLEAN_TRUE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3282.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_BOOLEAN_TRUE_NODE matches or gives the constant true node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.152 TREE_BOOLEAN_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1607.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1TREETMIN
2TREETMAX
3TREETSIZE

C-matcher description: TREE_BOOLEAN_TYPE match a boolean type tree TR extracting TTYPE TMIN TMAX TSIZE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.153 TREE_BOOLEAN_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3086.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_BOOLEAN_TYPE_NODE matches or gives the constant bool integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.154 TREE_CALL0_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2347.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRCALLEDFUN
1TREETRCHAIN

C-matcher description: TREE_CALL0_EXPR match tree of CALL_EXPR for call-arity 0 extracting their TRCALLEDFUN TRCHAIN


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.155 TREE_CALL1_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2361.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRCALLEDFUN
1TREETRCHAIN
2TREETRARG0

C-matcher description: TREE_CALL1_EXPR match tree of CALL_EXPR for call-arity 1 extracting their TRCALLEDFUN TRCHAIN & TRARG0


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.156 TREE_CASE_LABEL_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 648.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETCLOW
1TREETCHIGH
2TREETLABEL
3TREETCHAIN

C-matcher description: TREE_CASE_LABEL_EXPR match a CASE_LABEL_EXPR tree. TCLOW is the CASE_LOW, TCHIGH is the CASE_HIGH, TLABEL is the CASE_LABEL, TCHAIN is the CASE_CHAIN. See also BUILD_CASE_LABEL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.157 TREE_CHAR_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3041.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_CHAR_TYPE_NODE matches or gives the constant char integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.158 TREE_CLEANUP_POINT_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2159.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETEXP

C-matcher description: TREE_CLEANUP_POINT_EXPR match tree of CLEANUP_POINT_EXPR extracting their TEXP


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.159 TREE_COMPLEX_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1811.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRREAL
1TREETRIMAG

C-matcher description: TREE_COMPELX_CST match a complex constant extracting real part in TRREAL and imaginary part in TRIMAG.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.160 TREE_COMPLEX_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1716.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREENAME
1TREESIZE

C-matcher description: TREE_COMPLEX_TYPE match any complex type tree TR extracting its NAME & SIZE trees


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.161 TREE_COMPONENT_REF

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 992.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRAGGR
1TREETRFIELD

C-matcher description: TREE_COMPONENT_REF match a component reference tree TR extracting aggregate TRAGGR and field TRFIELD


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.162 TREE_COMPONENT_REF_FULL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1006.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRAGGR
1TREETRFIELD
2TREETROFF

C-matcher description: TREE_COMPONENT_REF_FULL match a component reference tree TR extracting aggregate TRAGGR and field TRFIELD and offset TROFF


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.163 TREE_COMPONENT_REF_TYPED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1022.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREETRAGGR
2TREETRFIELD

C-matcher description: TREE_COMPONENT_REF_TYPED match a component reference tree TR extracting the TYPE, aggregate TRAGGR, field TRFIELD


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.164 TREE_COMPOUND_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1994.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETLEFT
1TREETRIGHT

C-matcher description: TREE_COMPOUND_EXPR match COMPOUND_EXPR tree TR for comma operator extracting its TLEFT and TRIGHT operands.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.165 TREE_COND_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2084.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTEST
1TREETTHEN
2TREETELSE

C-matcher description: TREE_COND_EXPR match COND_EXPR trees filling TTEST TTHEN TELSE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.166 TREE_CONSTRUCTOR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1954.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0LONGNELTS

C-matcher description: TREE_CONSTRUCTOR match an CONSTRUCTOR node for initialization of aggregates and gives into NELTS the number of initialization elements.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.167 TREE_CONST_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 573.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1CSTRINGCONSTNAME
2LONGUID

C-matcher description: TREE_CONST_DECL match a const declaration tree TR extracting its type tree TTYPE, its name CONSTNAME, its UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.168 TREE_CONST_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 605.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1CSTRINGCONSTNAME
2LONGUID

C-matcher description: TREE_CONST_DECL_NAMED match a const declaration tree TR extracting its type TTYPE, its name CONSTNAME its UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.169 TREE_CONST_DECL_OF_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 592.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGCONSTNAME

c-matcher output formals:

indextypename
0TREETTYPE

C-matcher description: TREE_CONST_DECL_OF_NAME match a const declaration tree TR of name CONSTNAME extracting its type tree TTYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.170 TREE_CONST_PTR_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3265.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_CONST_PTR_TYPE_NODE matches or gives the constant const void* pointer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.171 TREE_DEBUG_EXPR_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 722.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRTYPE
1TREETRNAME

C-matcher description: TREE_DEBUG_EXPR_DECL match a declaration of debug temporary, extracting its type TRTYPE and name TRNAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.172 TREE_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1186.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRNAME
1CSTRINGNAME
2LONGUID

C-matcher description: TREE_DECL match any declaration extracting TRANME NAME UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.173 TREE_DECL_AT_SOURCE_LOCATION

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1396.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0VALUEFILEPATHV
1LONGLINE
2LONGCOL

C-matcher description: TREE_DECL_AT_SOURCE_LOCATION match any declaration with some known source location, extracting the cached FILEPATHV string value and the LINE and COL info.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.174 TREE_DOUBLE_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3229.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_DOUBLE_TYPE_NODE matches or gives the constant double type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.175 TREE_ENUMERAL_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1587.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1TREETMIN
2TREETMAX
3TREETSIZE
4TREETVALUES

C-matcher description: TREE_ENUMERAL_TYPE match a tree TR enumeral extracting TTYPE TMIN TMAX TSIZE TVALUES


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.176 TREE_ERROR_MARK

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 329.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_ERROR_MARK match an error mark.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.177 TREE_EXPR_AT_SOURCE_LOCATION

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1420.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0VALUEFILEPATHV
1LONGLINE
2LONGCOL

C-matcher description: TREE_EXPR_AT_SOURCE_LOCATION match any expression with some known source location, extracting the cached FILEPATHV string value and the LINE and COL info.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.178 TREE_FIELD_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2298.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREENAME
1TREETYPE

C-matcher description: TREE_FIELD_DECL match a field declaration tree TR extracting NAME & TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.179 TREE_FIXED_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1798.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_FIXED_CST match a fixed constant.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.180 TREE_FIXED_POINT_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1650.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1TREETMIN
2TREETMAX
3TREETSIZE

C-matcher description: TREE_FIXED_POINT_TYPE match an fixed point type tree TR extracting TTYPE TMIN TMAX TSIZE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.181 TREE_FLOAT_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3220.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_FLOAT_TYPE_NODE matches or gives the constant float type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.182 TREE_FUNCTION_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 446.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETFUNAME
1TREETRESULT

C-matcher description: TREE_FUNCTION_DECL match a function declaration tree, extracting the tree name TFUNAME and the tree result TRESULT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.183 TREE_FUNCTION_DECL_FULL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 363.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETNAME
1TREETARGS
2TREETTYPE
3TREETRESULT
4TREETCTXT
5LONGBUILTINCODE

C-matcher description: TREE_FUNCTION_DECL_FULL match a function declaration TR extracting all the information


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.184 TREE_FUNCTION_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 343.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0CSTRINGFUNAME
1TREETRRESULT

C-matcher description: TREE_FUNCTION_DECL_NAMED match a function declaration extracting its name FUNAME and result tree decl TRRESULT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.185 TREE_FUNCTION_DECL_NAMED_OF_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 383.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0CSTRINGFUNAME
1TREETRTYPE

C-matcher description: TREE_FUNCTION_DECL_NAMED_OF_TYPE match a function declaration extracting its name FUNAME and type tree decl TRTYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.186 TREE_FUNCTION_DECL_OF_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 402.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGFNAME

c-matcher output formals:

indextypename
0TREETFUNNAME
1TREETTRRESULT

C-matcher description: TREE_FUNCTION_DECL_OF_NAME match a function declaration tree TR for function named FNAME extracting the tree name TFUNAME and result tree TTRRESULT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.187 TREE_FUNCTION_DECL_OF_TYPE_AND_RESULT

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 422.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGFNAME

c-matcher output formals:

indextypename
0TREETFUNNAME
1TREETFTYPE
2TREETTRRESULT

C-matcher description: TREE_FUNCTION_DECL_OF_TYPE_AND_RESULT match a function declaration tree TR for function named FNAME extracting the tree name TFUNAME, tree type TFTYPE, and result tree TTRRESULT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.188 TREE_FUNCTION_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 464.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRNAM
1TREETRTYP
2TREETRARGTY
3TREETRCTX

C-matcher description: TREE_FUNCTION_TYPE match a function type tree TR extracting the name tree TRNAM, result type tree TRTYP and the list of type of arguments into TRARGTY and the context into TRCTX


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.189 TREE_IDENTIFIER

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1114.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0CSTRINGNAME

C-matcher description: TREE_IDENTIFIER match an identifier tree TR extracting its NAME


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.190 TREE_IMAGPART_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 963.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETPART

C-matcher description: TREE_IMAGPART_EXPR match and extract the imaginary part TPART of complex tree expression TR for IMAGPART_EXPR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.191 TREE_IMPORTED_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 751.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRNAME

C-matcher description: TREE_IMPORTED_DECL match an import declaration, extracting its name in TRNAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.192 TREE_INDIRECT_REFERENCE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1919.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREEREFERENCE

C-matcher description: TREE_INDIRECT_REFERENCE match an indirect ref tree TR extracting the TYPE and REFERENCE subtrees


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.193 TREE_INIT_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2027.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETLEFT
1TREETRIGHT

C-matcher description: TREE_INIT_EXPR match INIT_EXPR tree TR for initialization extracting its TLEFT and TRIGHT operands.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.194 TREE_INT128_INTEGER_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3198.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INT128_INTEGER_TYPE_NODE matches or gives the constant 128 bits integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.195 TREE_INT128_UNSIGNED_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3207.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INT128_UNSIGNED_TYPE_NODE matches or gives the constant 128 bits unsigned integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.196 TREE_INTEGER_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1757.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0LONGN

C-matcher description: TREE_INTEGER_CST match a constant integer tree TR extracting the constant N. Might behave strangely if the constant don’t fit in a long.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.197 TREE_INTEGER_MINUS_ONE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3324.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INTEGER_MINUS_ONE_NODE matches or gives the constant integer -1 node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.198 TREE_INTEGER_ONE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3316.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INTEGER_ONE_NODE matches or gives the constant integer 1 node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.199 TREE_INTEGER_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1541.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1VALUEMINBIG
2VALUEMAXBIG
3TREESIZE

C-matcher description: TREE_INTEGER_TYPE match an integer type tree TR extracting its TYPE and big minimal MINBIG and maximal MAXBIG values and tree size SIZE. If minimal and maximal values are small enough, we use plain boxed integer values.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.200 TREE_INTEGER_TYPE_BOUNDED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1628.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1TREETMIN
2TREETMAX
3TREETSIZE

C-matcher description: TREE_INTEGER_TYPE_BOUNDED match an integer type tree TR extracting TTYPE TMIN TMAX TSIZE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.201 TREE_INTEGER_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3095.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INTEGER_TYPE_NODE matches or gives the constant integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.202 TREE_INTEGER_ZERO_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3299.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_INTEGER_ZERO_NODE matches or gives the constant integer 0 node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.203 TREE_LABEL_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 624.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRLABEL
1LONGUIDLABEL

C-matcher description: TREE_LABEL_DECL match a label declaration tree TR extracting its label tree TRLABEL and uid UIDLABEL


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.204 TREE_LANG_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 501.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LANG_TYPE match a language specific type.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.205 TREE_LIST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1126.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRVALUE
1TREETRPURPOSE
2TREETRCHAIN

C-matcher description: TREE_LIST match a tree list node extracting TRVALUE TRPURPOSE TRCHAIN


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.206 TREE_LONG_DOUBLE_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3238.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LONG_DOUBLE_TYPE_NODE matches or gives the constant long double type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.207 TREE_LONG_INTEGER_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3113.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LONG_INTEGER_TYPE_NODE matches or gives the constant long integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.208 TREE_LONG_LONG_INTEGER_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3176.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LONG_LONG_INTEGER_TYPE_NODE matches or gives the constant long long integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.209 TREE_LONG_LONG_UNSIGNED_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3185.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LONG_LONG_UNSIGNED_TYPE_NODE matches or gives the constant unsigned long long integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.210 TREE_LONG_UNSIGNED_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3140.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_LONG_UNSIGNED_TYPE_NODE matches or gives the constant unsigned long integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.211 TREE_MEM_REF

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1062.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRPTR
1TREETROFF

C-matcher description: TREE_MEM_REF match a memory reference tree extracing pointer TRPTR and offset TROFF


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.212 TREE_METHOD_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 482.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRNAM
1TREETRTYP
2TREETRBASETY
3TREETRARGTY
4TREETRCTX

C-matcher description: TREE_METHOD_TYPE match a method type tree TR extracting the result type tree TRTYP, the basetype TRBASETY, the arguments TRARGTY.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.213 TREE_MODIFY_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2010.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETLEFT
1TREETRIGHT

C-matcher description: TREE_MODIFY_EXPR match MODIFY_EXPR tree TR for assignment extracting its TLEFT and TRIGHT operands.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.214 TREE_NAMELIST_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 765.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRDECL

C-matcher description: TREE_NAMELIST_DECL match a namelist declaration, extracting the list into TRDECL.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.215 TREE_NAMESPACE_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 738.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRNAME

C-matcher description: TREE_NAMESPACE_DECL match a name space declaration, extracting its name in TRNAME.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.216 TREE_NULLPTR_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1670.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_NULLPTR_TYPE match an nullptr type tree TR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.217 TREE_NULL_POINTER_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3307.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_NULL_POINTER_NODE matches or gives the constant NULL pointer node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.218 TREE_OBJ_TYPE_REF

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1936.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETREFEXP
1TREETREFOBJ
2TREETTOKEN

C-matcher description: TREE_OBJ_TYPE_REF match an OBJ_TYPE_REF tree TR for vtable lookup. TREFEXPR is the tree of the expression value, TREFOBJ is the object on whose behalf the lookup is performed, TTOKEN is a tree integerer token, index into the vtable.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.219 TREE_OFFSET_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1099.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRTYPE
1TREETRBASETYPE

C-matcher description: TREE_OFFSET_TYPE match offset type tree TR extracting type TRTYPE and basetype TRBASETYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.220 TREE_OF_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 510.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRTYP

C-matcher description: TREE_OF_TYPE match any non-null tree TR extracting the type tree TRTYP


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.221 TREE_PARM_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 707.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRARGTYPE
1TREETRDECLNAM

C-matcher description: TREE_PARM_DECL_OF_NAME match a parm declaration tree TR extracting its TRARGTYPE and decl name tree TRDECLNAME


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.222 TREE_PARM_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 676.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1CSTRINGPARMNAME
2LONGUID

C-matcher description: TREE_PARM_DECL_NAMED match a parm declaration tree TR extracting its type TTYPE, its name PARMNAME its UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.223 TREE_PARM_DECL_OF_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 693.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGPARMNAME

c-matcher output formals:

indextypename
0TREETYPE

C-matcher description: TREE_PARM_DECL_OF_NAME match a parm declaration tree TR named PARMNAME extracting its TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.224 TREE_PLACEHOLDER_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2172.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_PLACEHOLDER_EXPR is used to match PLACEHOLDER_EXPR trees.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.225 TREE_POINTER_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1891.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPETR

C-matcher description: TREE_POINTER_TYPE_P match or build a POINTER_TYPE tree TR and extract the pointed type TYPETR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.226 TREE_POINTER_TYPE_P

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1880.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPETR

C-matcher description: TREE_POINTER_TYPE_P match a pointer type tree TR and extract the pointed type TYPETR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.227 TREE_PTR_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3256.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_PTR_TYPE_NODE matches or gives the constant void* pointer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.228 TREE_QUAL_UNION_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2224.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE

C-matcher description: TREE_QUAL_UNION_TYPE match a qualified union type tree TR extracting its TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.229 TREE_QUAL_UNION_TYPE_WITH_FIELDS

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2237.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREETFIELDS

C-matcher description: TREE_QUAL_UNION_TYPE_WITH_FIELDS match a qualified union type tree TR extracting its TYPE & TFIELDS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.230 TREE_REALPART_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 949.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETPART

C-matcher description: TREE_REALPART_EXPR match and extract the real part TPART of complex tree expression TR for REALPART_EXPR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.231 TREE_REAL_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1784.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0VALUEV

C-matcher description: TREE_REAL_CST match a constant real tree TR extracting the constant into a value V


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.232 TREE_REAL_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1696.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREENAME
1TREESIZE

C-matcher description: TREE_REAL_TYPE match any real type tree TR extracting its NAME & SIZE trees


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.233 TREE_RECORD_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2196.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREENAME

C-matcher description: TREE_RECORD_TYPE match a record type tree TR extracting its NAME


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.234 TREE_RECORD_TYPE_WITH_FIELDS

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2209.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETNAME
1TREETFIELDS

C-matcher description: TREE_RECORD_TYPE_WITH_FIELDS match a record type tree TR extracting its TNAME & TFIELDS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.235 TREE_REFERENCE_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1904.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPETR

C-matcher description: TREE_REFERENCE_TYPE match a REFERENCE_TYPE tree TR extracting the TYPETR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.236 TREE_RESULT_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 812.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETNAM
1TREETTYP

C-matcher description: TREE_RESULT_DECL match a result declaration TR extracting its tree TNAM and TTYP


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.237 TREE_RESULT_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 795.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1CSTRINGNAME
2LONGUID

C-matcher description: TREE_RESULT_DECL_NAMED match a result declaration tree TR extracting its TYPE, NAME, UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.238 TREE_RESULT_DECL_OF_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 826.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGNAME

c-matcher output formals:

indextypename
0TREETTYP

C-matcher description: TREE_RESULT_DECL_OF_NAME match a result declaration TR named NAME extracting its TTYP


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.239 TREE_SHORT_INTEGER_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3068.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_SHORT_INTEGER_TYPE_NODE matches or gives the constant short integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.240 TREE_SHORT_UNSIGNED_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3077.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_SHORT_UNSIGNED_TYPE_NODE matches or gives the constant short integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.241 TREE_SIGNED_CHAR_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3050.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_SIGNED_CHAR_TYPE_NODE matches or gives the constant signed char integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.242 TREE_SIGNED_SIZE_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3131.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_SIGNED_SIZE_TYPE_NODE matches or gives the constant ssize_t integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.243 TREE_SIMPLE_SSA_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2328.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETVAR
1LONGVERS

C-matcher description: TREE_SIMPLE_SSA_NAME match an SSA name tree TR extracting the TVAR and VERS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.244 TREE_SIZE_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3122.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_SIZE_TYPE_NODE matches or gives the constant size_t integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.245 TREE_SSA_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2312.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETVAR
1TREETVALU
2LONGVERS
3GIMPLEDEFSTMT

C-matcher description: TREE_SSA_NAME match an SSA name tree TR extracting the TVAR TVALUE VERS and DEFSTMT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.246 TREE_STRING_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1838.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0VALUEV

C-matcher description: TREE_STRING_CST match a constant string tree TR extracting its string into value V


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.247 TREE_TARGET_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2043.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTARGET
1TREETINIT
2TREETCLEANUP
3TREETSAVED

C-matcher description: TREE_TARGET_EXPR match TARGET_EXPR tree TR for initialization extracting its TTARGET, TINIT, TCLEANUP, TSAVED operands.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.248 TREE_TRANSLATION_UNIT_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 779.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETINIT

C-matcher description: TREE_TRANSLATION_UNIT_DECL match a translation unit declaration extracting its initial declaration TINIT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.249 TREE_TYPE_CANONICAL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1866.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRCAN

C-matcher description: TREE_TYPE_CANONICAL match a type tree TR and extract its canonical type.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.250 TREE_TYPE_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 860.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREENAME
2TREECTX
3TREEORIG
4LONGUID

C-matcher description: TREE_TYPE_DECL match a tree type decl TR extracting its type tree as TYPE, name tree as NAME, context tree as CTX, original type as ORIG and long UID. See also TREE_TYPE_DECL_WITH_NAME etc...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.251 TREE_TYPE_DECLARATION

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1681.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREENAME

C-matcher description: TREE_TYPE_DECLARATION match a type decl tree TR extracting the declared name tree NAME


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.252 TREE_TYPE_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 881.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGNAME

c-matcher output formals:

indextypename
0TREETYPE

C-matcher description: TREE_TYPE_DECL match a tree type decl TR for a type named NAME extracting its TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.253 TREE_TYPE_DECL_WITH_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 842.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1CSTRINGNAME
2LONGUID

C-matcher description: TREE_TYPE_DECL_WITH_NAME match a tree type decl TR extracting its TYPE, NAME, UID. See also TREE_TYPE_DECL and TREE_TYPE_DECL_NAMED.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.254 TREE_TYPE_P

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1855.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPETR

C-matcher description: TREE_TYPE_P match a type tree TR and extract the inside type TYPETR


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.255 TREE_UINT16_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3149.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_UINT16_TYPE_NODE matches or gives the constant uint16_t integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.256 TREE_UINT32_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3158.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_UINT16_TYPE_NODE matches or gives the constant uint32_t integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.257 TREE_UINT64_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3167.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_UINT16_TYPE_NODE matches or gives the constant uint64_t integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.258 TREE_UNION_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2252.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE

C-matcher description: TREE_UNION_TYPE match a plain union type tree TR extracting its TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.259 TREE_UNION_TYPE_WITH_FIELDS

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2265.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1TREETFIELDS

C-matcher description: TREE_UNION_TYPE_WITH_FIELDS match a plain union type tree TR extracting its TYPE & TFIELDS


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.260 TREE_UNSIGNED_CHAR_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3059.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_UNSIGNED_CHAR_TYPE_NODE matches or gives the constant unsigned char integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.261 TREE_UNSIGNED_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3104.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_UNSIGNED_TYPE_NODE matches or gives the constant unsigned integer type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.262 TREE_VAR_DECL

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 541.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTYPE
1TREETNAME
2LONGUID

C-matcher description: TREE_VAR_DECL match a variable declaration tree TR extracting its type tree TTYPE, its name tree TNAME and its UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.263 TREE_VAR_DECL_NAMED

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 524.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE
1CSTRINGVARNAME
2LONGUID

C-matcher description: TREE_VAR_DECL_NAMED match a variable declartion tree TR extracting its type tree TYPE, its VARNAME and its UID


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.264 TREE_VAR_DECL_OF_NAME

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 558.

c-matcher matching formal: TR - TREE

c-matcher input formals:

indextypename
0CSTRINGVARNAME

c-matcher output formals:

indextypename
0TREETTYPE

C-matcher description: TREE_VAR_DECL match a variable declaration tree TR of name VARNAME extracting its type tree TTYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.265 TREE_VA_ARG_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2182.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRVA
1TREETRTYPE

C-matcher description: TREE_VA_ARG_EPXR is used for va_arg in variadic functions.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.266 TREE_VA_LIST_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3274.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_VA_LIST_TYPE_NODE matches or gives the constant va_list node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.267 TREE_VEC

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1172.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0LONGLEN
1TREETRCHAIN

C-matcher description: TREE_VEC match a tree vector node extracting LEN and TRCHAIN


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.268 TREE_VECTOR_CST

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1825.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0LONGLCNT

C-matcher description: TREE_VECTOR_CST match a vector constant extractings its count in LCNT


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.269 TREE_VECTOR_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1737.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETRTYP
1LONGLPREC

C-matcher description: TREE_VECTOR_TYPE match a vector type, extracting in TRTYP the data type of vector elements and in LPREC the precision, i.e. number of subparts


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.270 TREE_VEC_COND_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2099.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETTEST
1TREETTHEN
2TREETELSE

C-matcher description: TREE_VEC_COND_EXPR match VEC_COND_EXPR trees filling TTEST TTHEN TELSE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.271 TREE_VEC_PERM_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2114.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETV0
1TREETV1
2TREETMASK

C-matcher description: TREE_VEC_PERM_EXPR match VEC_PERM_EXPR trees filling TV0, TV1, TMASK


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.272 TREE_VIEW_CONVERT_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 977.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETVIEW

C-matcher description: TREE_VIEW_CONVERT_EXPR match and extract the view conversion of tree expression TR for VIEW_CONVERT_EXPR.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.273 TREE_VOID_TYPE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 1525.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETYPE

C-matcher description: TREE_VOID_TYPE match a void type TR extracting its type TYPE


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.274 TREE_VOID_TYPE_NODE

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 3247.

c-matcher matching formal: TR - TREE

C-matcher description: TREE_VOID_TYPE_NODE matches or gives the constant void type node.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.275 TREE_WITH_CLEANUP_EXPR

C-matcher defined at file ‘libmelt-ana-tree.melt’, line 2146.

c-matcher matching formal: TR - TREE

c-matcher output formals:

indextypename
0TREETEXP

C-matcher description: TREE_WITH_CLEANUP_EXPR match tree of WITH_CLEANUP_EXPR extracting their TEXP


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.276 TUPLE_NTH

C-matcher defined at file ‘warmelt-base.melt’, line 1193.

c-matcher matching formal: MATCHEDTUP - VALUE

c-matcher input formals:

indextypename
0LONGMATCHEDRK

c-matcher output formals:

indextypename
0VALUEOUTCOMP

C-matcher description: The TUPLE_NTH matcher with input number MATCHEDRK matches a tuple of length greater than MATCHEDRK and retrieve the component of that index, and matches it against the sub-pattern.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.7.277 TUPLE_SIZED

C-matcher defined at file ‘warmelt-base.melt’, line 1210.

c-matcher matching formal: TUP - VALUE

c-matcher input formals:

indextypename
0LONGLN

C-matcher description: Match a tuple of given exact size.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8 MELT hooks

There are 16 hooks.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.1 HOOK_FRESH_ENVIRONMENT_REFERENCE_MAKER hook

Hook defined at file ‘warmelt-first.melt’, line 3936.

hook input formals:

indextypename
0VALUEPREVENV
1CSTRINGMODULNAME

hook result ctype: VALUE Hook predefined as: HOOK_FRESH_ENVIRONMENT_REFERENCE_MAKER.

Hook description: The internal HOOK_FRESH_ENVIRONMENT_REFERENCE_MAKER is creating new environments in modules, it is called by the internal MELT_MAKE_FRESH_ENVIRONMENT_REFERENCE primitive. For gurus and MELT itself.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.2 HOOK_INTERN_KEYWORD hook

Hook defined at file ‘warmelt-first.melt’, line 4588.

hook input formals:

indextypename
0VALUEKEYWV

hook result ctype: VALUE Hook predefined as: HOOK_INTERN_KEYWORD.

Hook description: Intern and return the given keyword KEYWV if it is new, or return the previous old keyword of same name.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.3 HOOK_INTERN_SYMBOL hook

Hook defined at file ‘warmelt-first.melt’, line 4569.

hook input formals:

indextypename
0VALUESYMBV

hook result ctype: VALUE Hook predefined as: HOOK_INTERN_SYMBOL.

Hook description: Intern and return the given symbol SYMBV if it is new, or return the previous old symbol of same name.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.4 HOOK_LOW_DEBUG_VALUE_AT hook

Hook defined at file ‘warmelt-hooks.melt’, line 35.

hook input formals:

indextypename
0VALUEVAL
1CSTRINGFILENAME
2LONGLINENO
3CSTRINGMSG
4LONGCOUNT

hook result ctype: VOID Hook predefined as: HOOK_LOW_DEBUG_VALUE_AT.

Hook description: HOOK_LOW_DEBUG_VALUE_AT is an internal hook for the melt_low_debug_value macro in ‘melt-runtime.h’. Output on the dump file or else the standard errror.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.5 HOOK_LOW_STDERR_VALUE_AT hook

Hook defined at file ‘warmelt-hooks.melt’, line 45.

hook input formals:

indextypename
0VALUEVAL
1CSTRINGFILENAME
2LONGLINENO
3CSTRINGMSG
4LONGCOUNT

hook result ctype: VOID Hook predefined as: HOOK_LOW_STDERR_VALUE_AT.

Hook description: HOOK_LOW_STDERR_VALUE_AT is an internal hook for the melt_low_stderr_value macro in ‘melt-runtime.h’. Output always on standard errror.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.6 HOOK_MACRO_INSTALLER hook

Hook defined at file ‘warmelt-macro.melt’, line 3971.

hook input formals:

indextypename
0VALUEMBIND
1VALUEMEXPCLOS

hook result ctype: VOID Hook predefined as: HOOK_MACRO_INSTALLER.

Hook description: The internal HOOK_MACRO_INSTALLER is installing macro, during a translation


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.7 HOOK_MELT_MAKE_LOCATION hook

Hook defined at file ‘warmelt-base.melt’, line 554.

hook input formals:

indextypename
0CSTRINGFILENAME
1LONGLINENO

hook result ctype: VALUE Hook predefined as: HOOK_MELT_MAKE_LOCATION.

Hook description: Hook to make a mixed integer representing the location at given FILENAME and LINENO, useful for quoting s-expressions etc...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.8 HOOK_NAMED_KEYWORD hook

Hook defined at file ‘warmelt-first.melt’, line 4498.

hook input formals:

indextypename
0CSTRINGNAM
1LONGCREATE

hook result ctype: VALUE Hook predefined as: HOOK_NAMED_KEYWORD.

Hook description: hook to get a keyword of name NAM and perhaps create it iff CREATE is true i.e. non zero.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.9 HOOK_NAMED_SYMBOL hook

Hook defined at file ‘warmelt-first.melt’, line 4431.

hook input formals:

indextypename
0CSTRINGNAM
1LONGCREATE

hook result ctype: VALUE Hook predefined as: HOOK_NAMED_SYMBOL.

Hook description: hook to get a symbol of name NAM and perhaps create it iff CREATE is true i.e. non zero.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.10 HOOK_OVERRIDE_GATE hook

Hook defined at file ‘warmelt-hooks.melt’, line 107.

hook input formals:

indextypename
0LONGBEFOREGATE

hook output formals:

indextypename
0LONGAFTERGATE

hook result ctype: VOID Hook predefined as: HOOK_OVERRIDE_GATE.

Hook description: The internal HOOK_OVERRIDE_GATE handles PLUGIN_OVERRIDE_GATE events. See REGISTER_OVERRIDE_GATE_FIRST etc...


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.11 HOOK_PATMACRO_EXPORTER hook

Hook defined at file ‘warmelt-first.melt’, line 4852.

hook input formals:

indextypename
0VALUESYM
1VALUEMACVAL
2VALUEPATVAL
3VALUECONTENV

hook result ctype: VOID Hook predefined as: HOOK_PATMACRO_EXPORTER.

Hook description: HOOK_PATMACRO_EXPORTER is an internal hook to export pattern-macros. See also EXPORT_PATMACRO


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.12 HOOK_POLL_INPUTS hook

Hook defined at file ‘warmelt-hooks.melt’, line 3008.

hook input formals:

indextypename
0LONGDELAYMS

hook result ctype: VOID Hook predefined as: HOOK_POLL_INPUTS.

Hook description: The HOOK_POLL_INPUTS is making a multiplexing poll(2) syscall -with the milliseconds delay given by DELAYMS- and then reading appropriate input file descriptors and running the callback registered with REGISTER_PARAGRAPH_INPUT_CHANNEL_HANDLER or REGISTER_RAW_INPUT_CHANNEL_HANDLER. It is usually called to service the SIGIO signal, but could be called elsewhere. For experts mostly.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.13 HOOK_PROCESS_PRAGMA hook

Hook defined at file ‘warmelt-hooks.melt’, line 2724.

hook input formals:

indextypename
0LONGLIX

hook result ctype: VOID Hook predefined as: HOOK_PROCESS_PRAGMA.

Hook description: HOOK_PROCESS_PRAGMA is an internal hook to process a pragma.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.14 HOOK_SORT_COMPARE_LESS hook

Hook defined at file ‘warmelt-base.melt’, line 3762.

hook input formals:

indextypename
0VALUELEFT
1VALUERIGHT
2VALUECMP

hook result ctype: LONG Hook predefined as: HOOK_SORT_COMPARE_LESS.

Hook description: The internal HOOK_SOURCE_COMPARE_LESS is for sorting tuples. It should return boolean true if LEFT is strictly less than RIGHT using the CMP function. This CMP function should return :TRUE when LEFT is strictly less than RIGHT. If CMP returns a boxed number, it should be strictly negative iff LEFT is strictly less than RIGHT.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.15 HOOK_SYMBOL_IMPORTER hook

Hook defined at file ‘warmelt-first.melt’, line 4632.

hook input formals:

indextypename
0CSTRINGSYMNAMESTR
1CSTRINGMODULENAMESTR
2VALUEPARENV

hook result ctype: VALUE Hook predefined as: HOOK_SYMBOL_IMPORTER.

Hook description: HOOK_SYMBOL_IMPORTER is an internal hook to import a symbol at start of a module.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.8.16 HOOK_VALUE_EXPORTER hook

Hook defined at file ‘warmelt-first.melt’, line 4716.

hook input formals:

indextypename
0VALUESYM
1VALUEVAL
2VALUECONTENV

hook result ctype: VOID Hook predefined as: HOOK_VALUE_EXPORTER.

Hook description: HOOK_VALUE_EXPORTER is an internal hook to export values from modules. See also EXPORT_VALUES macro.


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Basile Starynkevitch on July 27, 2015 using texi2html 1.82.