| NAME |
| predefined - predefined #defines by the parser |
| |
| DESCRIPTION |
| Several preprocessor macros are pre#defined by the parser, |
| to provide information about parser version, compile time |
| options and parser invocation options: |
| |
| LPC3 : always defined. |
| __LDMUD__ : always defined. |
| __EUIDS__ : always (for compatibility). |
| COMPAT_FLAG : defined if the driver runs in compat mode. |
| __COMPAT_MODE__ : ditto |
| __STRICT_EUIDS__ : defined if strict euid usage is enforced. |
| __FILENAME_SPACES__ : defined if filenames may contain spaces. |
| |
| __MASTER_OBJECT__ : the name of the master object (in compat |
| mode without leading '/'). |
| __FILE__ : the name of the compiled file (in compat |
| mode without leading '/'). |
| __LINE__ : the current line number. |
| __FUNCTION__ : the current function name. |
| __DIR__ : the directory path of the compiled file |
| (in compat mode without leading '/'). |
| __PATH__(n) : the directory path of the compiled file |
| without the <n> trailing elements (in |
| compat mode without leading '/'). |
| __VERSION__ : the version string of the driver. |
| __VERSION_MAJOR__ : the major version number of the driver. |
| __VERSION_MINOR__ : the minor version number of the driver. |
| __VERSION_MICRO__ : the micro version number of the driver. |
| __VERSION_PATCH__ : the patchlevel of the driver; a 0 here |
| means 'no patchlevel'. |
| __VERSION_COMMITID__ : the commit ID of the source of the driver |
| (attention: it might be <unknown>, if the |
| driver was not compiled from a git |
| repository) |
| __VERSION_LOCAL__ : the (optional) LOCAL_LEVEL, the user has |
| defined. |
| |
| __DOMAIN_NAME__ : the domain the host is part of. |
| __HOST_IP_NUMBER__ : the hosts IP number (as a string). |
| __HOST_NAME__ : the full hostname. |
| __MAX_RECURSION__ : the max count of nested function calls |
| (this is config.h:MAX_USER_TRACE). |
| __MAX_EVAL_COST__ : the max evaluation cost. |
| __RESET_TIME__ : default interval time between object |
| resets. |
| __CLEANUP_TIME__ : default interval time between object |
| cleanups. |
| __ALARM_TIME__ : the configured timing granularity. |
| __HEART_BEAT_INTERVAL__ : the configured heartbeat time. |
| __SYNCHRONOUS_HEART_BEAT__ : defined if synchronous heartbeats are |
| enabled. |
| __MAX_COMMAND_LENGTH__ : the maximum length a command can have. |
| __EFUN_DEFINED__(name) : if the efun 'name' exists, this |
| macro evaluates to " 1 ", else to " 0 ". |
| __DRIVER_LOG__ : the name of the default debug.log file |
| (within the mudlib); undefined if a |
| different name has been specified on the |
| commandline. |
| __WIZLIST__ : the name of the (mudlib) file from where |
| the driver read the initial WIZLIST |
| information. It is undefined if the driver |
| was configured to not read the |
| information. |
| |
| __MAX_MALLOC__ : the internal upper limit for total memory |
| usage. |
| __INT_MAX__ : the largest integer number. |
| __INT_MIN__ : the smallest integer number. |
| __FLOAT_MAX__ : the largest (positive) float number. |
| __FLOAT_MIN__ : the smallest (positive) float number. |
| |
| __LPC_NOSAVE__ : always defined. |
| __LPC_STRUCTS__ : always defined. |
| __LPC_INLINE_CLOSURES__ : always defined. |
| __LPC_ARRAY_CALLS__ : always defined. |
| __BOOT_TIME__ : the time() the driver was started. |
| |
| If the ERQ is supported, the following macros are defined: |
| |
| __ERQ_MAX_SEND__ : the max size of the send buffer. |
| __ERQ_MAX_REPLY__ : the max size of the reply buffer. |
| |
| The following macros are defined if their associated package |
| has been compiled into the driver: |
| |
| __IDNA__ : support for IDNA. |
| __IPV6__ : support for IP v.6. |
| __MYSQL__ : support for mySQL. |
| __PGSQL__ : support for PostgreSQL. |
| __SQLITE__ : support for SQLite 3. |
| __XML_DOM__ : support for XML parsing. |
| __MCCP__ : support for MCCP. |
| http://www.randomly.org/projects/MCCP |
| __ALISTS__ : support for alists. |
| __PCRE__ : support for PCRE (always defined). |
| __TLS__ : support for TLS (internal). |
| __GNUTLS__ : if __TLS__: TLS support provided by |
| GnuTLS. |
| __OPENSSL__ : if __TLS__: TLS support provided by |
| OpenSSL. |
| __GCRYPT__ : cryptographic routines provided by |
| libgcrypt. |
| __DEPRECATED__ : support for obsolete and deprecated efuns. |
| |
| HISTORY |
| 3.2.1 added __DOMAIN_NAME__, __HOST_IP_NUMBER__, __HOST_NAME__, |
| __MAX_RECURSION__, __EFUN_DEFINED__(). |
| 3.2.5 added __COMPAT_MODE__, __NATIVE_MODE__, __EUIDS__, |
| __ERQ_MAX_SEND__ and __ERQ_MAX_REPLY__. |
| 3.2.6 added __MAX_EVAL_COST__. |
| 3.2.7 added __STRICT_EUIDS__ and made __EUIDS__ standard. |
| 3.2.8 added __IPV6__, __LPC_NOSAVE__, __DIR__, __PATH__(). |
| 3.2.9 added __LDMUD__, __MYSQL__, __DEPRECATED__, __VERSION_MAJOR__, |
| __VERSION_MINOR__, __VERSION_MICRO__, __VERSION_PATCH__, |
| __INT_MAX__, __INT_MIN__, __FLOAT_MIN__, __FLOAT_MAX__, |
| __CATCH_EVAL_COST__, __MASTER_EVAL_COST__, __RESET_TIME__, |
| __CLEANUP_TIME__, __DRIVER_LOG__, and __WIZLIST__. |
| 3.2.10 added __MAX_MALLOC__, __MSDOS_FS__, __LPC_ARRAY_CALLS__ |
| and __FILENAME_SPACES__. |
| 3.3 made __LPC_NOSAVE__ always defined and added __ALISTS__, |
| __MCCP__, __LPC_STRUCTS__, __LPC_INLINE_CLOSURES__, __PGSQL__, |
| __PTHREADS__, __TLS__, __BOOT_TIME__, __ALARM_TIME__, |
| __HEART_BEAT_INTERVAL__, __SYNCHRONOUS_HEART_BEAT__, and __PCRE__. |
| 3.3.713 added __IDNA__, __SQLITE__. |
| 3.3.714 added __OPENSSL__, __GNUTLS__. |
| 3.3.718 added __XML_DOM__. |
| 3.3.719 removed __PTHREADS__, AMIGA, MSDOS_FS, __BEOS__ |
| and added __GCRYPT__. |
| 3.3.721 added __FUNCTION__. |
| 3.5.0 changed __LPC_STRUCTS__, __LPC_INLINE_CLOSURES__, |
| __LPC_ARRAY_CALLS__ to be always on. |
| removed __ALISTS__ |
| |
| SEE ALSO |
| pragma(LPC), preprocessor(LPC) |