![]() |
NEURON
|
NMODL parser global flags / functions. More...
#include "wrap_sprintf.h"#include <stdio.h>#include <string.h>#include <assert.h>#include <map>#include <string>#include <limits.h>#include "nmodlfunc.h"Go to the source code of this file.
Classes | |
| struct | Item |
| struct | Symbol |
Macros | |
| #define | NRN_BUFSIZE 8192 |
| #define | ITEM0 (Item*) 0 |
| #define | LIST0 (List*) 0 |
| #define | ITERATE(itm, lst) for (itm = (lst)->next; itm != (lst); itm = itm->next) |
| #define | SYM0 (Symbol*) 0 |
| #define | SYM(q) ((q)->element.sym) |
| #define | STR(q) ((q)->element.str) |
| #define | ITM(q) ((q)->element.itm) |
| #define | LST(q) ((q)->element.lst) |
| #define | SPECIAL 1 |
| #define | SYMBOL 1 |
| #define | ITEM 2 |
| #define | LIST 3 |
| #define | KEYWORD 01 |
| #define | PARM 02 |
| #define | INDEP 04 |
| #define | DEP 010 /* also in usage field */ |
| #define | STAT 020 |
| #define | ARRAY 040 |
| #define | FUNCT 0100 /* also in usage field */ |
| #define | PROCED 0200 |
| #define | NEGATIVE 0400 |
| #define | SEMI 01 /* ";" */ |
| #define | BEGINBLK 02 /* "{" */ |
| #define | ENDBLK 04 /* "}" */ |
| #define | DERF 01000 |
| #define | KINF 02000 |
| #define | NLINF 04000 |
| #define | DISCF 010000 |
| #define | PARF 040000 |
| #define | EXTDEF 0100000 |
| #define | LINF 0200000 |
| #define | UNITDEF 0400000L |
| #define | EXTDEF2 01000000L /* functions that can take array or function name arguments */ |
| #define | nmodlCONST 02000000L /* constants that do not appear in .var file */ |
| #define | EXTDEF3 04000000L /* get two extra reset arguments at beginning */ |
| #define | INTGER 010000000L /* must be cast to double in expr */ |
| #define | EXTDEF4 020000000L /* get extra NrnThread* arg at beginning */ |
| #define | EXTDEF5 040000000L /* not threadsafe from the extdef list */ |
| #define | EXTDEF_RANDOM 0600000000L /* functions that can be used with RANDOM type */ |
| #define | EXPLICIT_DECL 01 /* usage field, variable occurs in input file */ |
| #define | NRNEXTRN 01 /* t, dt, celsius, etc. */ |
| #define | NRNCURIN 02 /* input value used */ |
| #define | NRNCUROUT 04 /* added to output value */ |
| #define | NRNRANGE 010 |
| #define | NRNPRANGEIN 020 |
| #define | NRNPRANGEOUT 040 |
| #define | NRNGLOBAL 0100 /* same for all sections, defined here */ |
| #define | NRNSTATIC 0200 /* v */ |
| #define | NRNNOTP 0400 /* doesn't belong in p array */ |
| #define | NRNIONFLAG |
| #define | NRNPOINTER 04000 |
| #define | IONCONC 010000 |
| #define | NRNBBCOREPOINTER 020000 |
| #define | NMODLRANDOM 040000 |
| #define | IONCONC_IMPLICIT 040000 |
| #define | Fprintf fprintf |
| #define | Fclose fclose |
| #define | Fflush fflush |
| #define | Printf printf |
| #define | Strcpy strcpy |
| #define | Strcat strcat |
| #define | Insertstr insertstr |
| #define | Insertsym insertsym |
| #define | Linsertsym linsertsym |
| #define | Linsertstr linsertstr |
| #define | Lappendsym lappendsym |
| #define | Lappendstr lappendstr |
| #define | Lappenditem lappenditem |
| #define | Lappendlst lappendlst |
| #define | IGNORE(arg) arg |
| #define | Free(arg) free((void*) (arg)) |
Typedefs | |
| typedef struct Item | List |
| typedef struct Item | Item |
| typedef struct Symbol | Symbol |
Functions | |
| char * | emalloc (unsigned) |
| char * | stralloc (const char *, char *) |
| char * | inputline () |
| char * | inputtopar () |
| char * | Gets (char *) |
| List * | newlist () |
| List * | inputtext () |
| Item * | putintoken (const char *s, short type) |
| Item * | insertstr (Item *item, const char *str) |
| Item * | insertsym (List *list, Symbol *sym) |
| Item * | linsertstr (List *list, const char *str) |
| Item * | lappendstr (List *list, const char *str) |
| Item * | linsertsym (List *list, Symbol *sym) |
| Item * | lappendsym (List *list, Symbol *sym) |
| Item * | lappenditem (List *list, Item *item) |
| Item * | lappendlst (List *list, List *lst) |
| Item * | next () |
| Item * | prev () |
| Symbol * | install (const char *, int) |
| Symbol * | lookup (const char *) |
| Symbol * | copylocal (Symbol *) |
| Symbol * | ifnew_parminstall (const char *name, const char *num, const char *units, const char *limits) |
| void | printlist (List *) |
| void | verbatim_adjust (char *q) |
Variables | |
| std::map< std::string, const char * > | extdef_rand |
| int | nmodl_text |
| List * | filetxtlist |
| char | finname [NRN_BUFSIZE] |
| char | buf [NRN_BUFSIZE] |
| char * | modprefix |
| List * | intoken |
| List * | initfunc |
| List * | constructorfunc |
| List * | destructorfunc |
| List * | modelfunc |
| List * | termfunc |
| List * | procfunc |
| List * | initlist |
| List * | firstlist |
| List * | plotlist |
| FILE * | fin |
| FILE * | fparout |
| FILE * | fcout |
| Symbol * | semi |
| Symbol * | beginblk |
| Symbol * | endblk |
NMODL parser global flags / functions.
Definition in file modl.h.