Skip to content
Snippets Groups Projects
Select Git revision
  • cc09f69844183a9faeb80098120c22d3b5de4895
  • master default protected
  • 8.0
  • 9.0
  • 7.8
  • 7.6
  • 7.4
  • 7.2
  • 7.0
  • 0.6
  • rosuav/latex-markdown-renderer
  • rxnpatch/rxnpatch
  • marcus/gobject-introspection
  • rxnpatch/8.0
  • rosuav/pre-listening-ports
  • nt-tools
  • rosuav/async-annotations
  • rosuav/pgsql-ssl
  • rxnpatch/rxnpatch-broken/2023-10-06T094250
  • grubba/fdlib
  • grubba/wip/sakura/8.0
  • v8.0.2004
  • v8.0.2002
  • v8.0.2000
  • v8.0.1998
  • v8.0.1996
  • v8.0.1994
  • v8.0.1992
  • v8.0.1990
  • v8.0.1988
  • v8.0.1986
  • rxnpatch/clusters/8.0/2025-04-29T124414
  • rxnpatch/2025-04-29T124414
  • v8.0.1984
  • v8.0.1982
  • v8.0.1980
  • v8.0.1978
  • v8.0.1976
  • v8.0.1974
  • v8.0.1972
  • v8.0.1970
41 results

pike_macros.h

Blame
    • Fredrik Hübinette (Hubbe)'s avatar
      45ee5d39
      lots of minor optimizations.. · 45ee5d39
      Fredrik Hübinette (Hubbe) authored
      Rev: src/builtin_functions.c:1.148
      Rev: src/constants.c:1.14
      Rev: src/constants.h:1.8
      Rev: src/cpp.c:1.33
      Rev: src/dynamic_load.c:1.34
      Rev: src/module.c:1.10
      Rev: src/modules/Gdbm/gdbmmod.c:1.7
      Rev: src/modules/Gmp/mpz_glue.c:1.39
      Rev: src/modules/Gz/zlibmod.c:1.23
      Rev: src/modules/Image/colors.c:1.9
      Rev: src/modules/Image/colortable.c:1.48
      Rev: src/modules/Image/font.c:1.43
      Rev: src/modules/Image/image.c:1.112
      Rev: src/modules/Msql/msqlmod.c:1.10
      Rev: src/modules/Mysql/mysql.c:1.26
      Rev: src/modules/Mysql/result.c:1.15
      Rev: src/modules/Odbc/odbc.c:1.14
      Rev: src/modules/Odbc/odbc_result.c:1.17
      Rev: src/modules/Oracle/oracle.c:1.16
      Rev: src/modules/Perl/perlmod.c:1.6
      Rev: src/modules/Pipe/pipe.c:1.30
      Rev: src/modules/Postgres/pgresult.c:1.10
      Rev: src/modules/Postgres/postgres.c:1.12
      Rev: src/modules/Regexp/glue.c:1.14
      Rev: src/modules/Ssleay/ssleay.c:1.11
      Rev: src/modules/Yp/yp.c:1.16
      Rev: src/modules/_Charset/charsetmod.c:1.9
      Rev: src/modules/_Charset/iso2022.c:1.4
      Rev: src/modules/_Crypto/cast.c:1.6
      Rev: src/modules/_Crypto/cbc.c:1.14
      Rev: src/modules/_Crypto/crypto.c:1.27
      Rev: src/modules/_Crypto/des.c:1.13
      Rev: src/modules/_Crypto/idea.c:1.13
      Rev: src/modules/_Crypto/invert.c:1.8
      Rev: src/modules/_Crypto/md2.c:1.6
      Rev: src/modules/_Crypto/md5.c:1.12
      Rev: src/modules/_Crypto/pipe.c:1.14
      Rev: src/modules/_Crypto/rc4.c:1.9
      Rev: src/modules/_Crypto/sha.c:1.15
      Rev: src/modules/_Image_JPEG/image_jpeg.c:1.20
      Rev: src/modules/_Image_TTF/image_ttf.c:1.11
      Rev: src/modules/_Image_XFace/image_xface.c:1.6
      Rev: src/modules/call_out/call_out.c:1.25
      Rev: src/modules/files/efuns.c:1.64
      Rev: src/modules/files/socket.c:1.42
      Rev: src/modules/math/math.c:1.17
      Rev: src/modules/spider/accesseddb.c:1.18
      Rev: src/modules/spider/dumudp.c:1.43
      Rev: src/modules/spider/spider.c:1.78
      Rev: src/modules/spider/xml.c:1.7
      Rev: src/modules/sprintf/sprintf.c:1.32
      Rev: src/modules/system/nt.c:1.8
      Rev: src/modules/system/passwords.c:1.24
      Rev: src/modules/system/system.c:1.62
      Rev: src/object.c:1.57
      Rev: src/operators.c:1.47
      Rev: src/pike_macros.h:1.12
      Rev: src/pike_types.c:1.50
      Rev: src/pike_types.h:1.17
      Rev: src/program.c:1.110
      Rev: src/program.h:1.51
      Rev: src/security.c:1.11
      Rev: src/signal_handler.c:1.106
      Rev: src/stralloc.h:1.29
      Rev: src/svalue.h:1.21
      Rev: src/threads.c:1.89
      45ee5d39
      History
      lots of minor optimizations..
      Fredrik Hübinette (Hubbe) authored
      Rev: src/builtin_functions.c:1.148
      Rev: src/constants.c:1.14
      Rev: src/constants.h:1.8
      Rev: src/cpp.c:1.33
      Rev: src/dynamic_load.c:1.34
      Rev: src/module.c:1.10
      Rev: src/modules/Gdbm/gdbmmod.c:1.7
      Rev: src/modules/Gmp/mpz_glue.c:1.39
      Rev: src/modules/Gz/zlibmod.c:1.23
      Rev: src/modules/Image/colors.c:1.9
      Rev: src/modules/Image/colortable.c:1.48
      Rev: src/modules/Image/font.c:1.43
      Rev: src/modules/Image/image.c:1.112
      Rev: src/modules/Msql/msqlmod.c:1.10
      Rev: src/modules/Mysql/mysql.c:1.26
      Rev: src/modules/Mysql/result.c:1.15
      Rev: src/modules/Odbc/odbc.c:1.14
      Rev: src/modules/Odbc/odbc_result.c:1.17
      Rev: src/modules/Oracle/oracle.c:1.16
      Rev: src/modules/Perl/perlmod.c:1.6
      Rev: src/modules/Pipe/pipe.c:1.30
      Rev: src/modules/Postgres/pgresult.c:1.10
      Rev: src/modules/Postgres/postgres.c:1.12
      Rev: src/modules/Regexp/glue.c:1.14
      Rev: src/modules/Ssleay/ssleay.c:1.11
      Rev: src/modules/Yp/yp.c:1.16
      Rev: src/modules/_Charset/charsetmod.c:1.9
      Rev: src/modules/_Charset/iso2022.c:1.4
      Rev: src/modules/_Crypto/cast.c:1.6
      Rev: src/modules/_Crypto/cbc.c:1.14
      Rev: src/modules/_Crypto/crypto.c:1.27
      Rev: src/modules/_Crypto/des.c:1.13
      Rev: src/modules/_Crypto/idea.c:1.13
      Rev: src/modules/_Crypto/invert.c:1.8
      Rev: src/modules/_Crypto/md2.c:1.6
      Rev: src/modules/_Crypto/md5.c:1.12
      Rev: src/modules/_Crypto/pipe.c:1.14
      Rev: src/modules/_Crypto/rc4.c:1.9
      Rev: src/modules/_Crypto/sha.c:1.15
      Rev: src/modules/_Image_JPEG/image_jpeg.c:1.20
      Rev: src/modules/_Image_TTF/image_ttf.c:1.11
      Rev: src/modules/_Image_XFace/image_xface.c:1.6
      Rev: src/modules/call_out/call_out.c:1.25
      Rev: src/modules/files/efuns.c:1.64
      Rev: src/modules/files/socket.c:1.42
      Rev: src/modules/math/math.c:1.17
      Rev: src/modules/spider/accesseddb.c:1.18
      Rev: src/modules/spider/dumudp.c:1.43
      Rev: src/modules/spider/spider.c:1.78
      Rev: src/modules/spider/xml.c:1.7
      Rev: src/modules/sprintf/sprintf.c:1.32
      Rev: src/modules/system/nt.c:1.8
      Rev: src/modules/system/passwords.c:1.24
      Rev: src/modules/system/system.c:1.62
      Rev: src/object.c:1.57
      Rev: src/operators.c:1.47
      Rev: src/pike_macros.h:1.12
      Rev: src/pike_types.c:1.50
      Rev: src/pike_types.h:1.17
      Rev: src/program.c:1.110
      Rev: src/program.h:1.51
      Rev: src/security.c:1.11
      Rev: src/signal_handler.c:1.106
      Rev: src/stralloc.h:1.29
      Rev: src/svalue.h:1.21
      Rev: src/threads.c:1.89
    pike_macros.h 1.68 KiB
    /*\
    ||| This file a part of Pike, and is copyright by Fredrik Hubinette
    ||| Pike is distributed as GPL (General Public License)
    ||| See the files COPYING and DISCLAIMER for more information.
    \*/
    
    /*
     * $Id: pike_macros.h,v 1.12 1999/02/10 21:46:47 hubbe Exp $
     */
    #ifndef MACROS_H
    #define MACROS_H
    
    #include <global.h>
    
    #ifdef HAVE_SYS_PARAM_H
    #include <sys/param.h>
    #endif
    
    #include "pike_memory.h"
    
    #define OFFSETOF(str_type, field) ((long)& (((struct str_type *)0)->field))
    #define BASEOF(ptr, str_type, field)  \
    ((struct str_type *)((char*)ptr - (char*)& (((struct str_type *)0)->field)))
    
    #define NELEM(a) (sizeof (a) / sizeof ((a)[0]))
    #define ALLOC_STRUCT(X) ( (struct X *)xalloc(sizeof(struct X)) )
    
    #define MINIMUM(X,Y) ((X)<(Y)?(X):(Y))
    #define MAXIMUM(X,Y) ((X)>(Y)?(X):(Y))
    
    
    #define is8bitalnum(X)	("0000000000000000" \
    			 "0000000000000000" \
    			 "0000000000000000" \
    			 "1111111111000000" \
    			 "0111111111111111" \
    			 "1111111111100001" \
    			 "0111111111111111" \
    			 "1111111111100000" \
    			 "0000000000000000" \
    			 "0000000000000000" \
    			 "1011110101100010" \
    			 "1011011001101110" \
    			 "1111111111111111" \
    			 "1111111011111111" \
    			 "1111111111111111" \
    			 "1111111011111111"[((unsigned)(X))&0xff] == '1')
      
    #define isidchar(X) is8bitalnum(X)
    
    #ifndef HAVE_ISGRAPH
    #define isgraph(X)	(ispunct(X) || isupper(X) || islower(X) || isdigit(X))
    #endif /* !HAVE_ISGRAPH */
    
    /*
     * #define ALIGNOF(X) __alignof__(X)
     * #define ALIGNOF(X) (sizeof(X)>ALIGN_BOUND?ALIGN_BOUND:( 1<<my_log2(sizeof(X))))
     */
    
    #define ALIGNOF(X) ((int)&(((struct { char ignored_ ; X fooo_; } *)0)->fooo_))
    
    #define DO_ALIGN(X,Y) (((long)(X)+((Y)-1)) & -(Y))
    #define CONSTANT_STRLEN(X) (sizeof(X) - sizeof(""))
    
    #endif