version 1.86, 2017/07/22 11:29:50
|
version 1.90, 2018/05/30 16:50:13
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.27 |
RPL/2 (R) version 4.1.29 |
Copyright (C) 1989-2017 Dr. BERTRAND Joël |
Copyright (C) 1989-2018 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 105
|
Line 105
|
#define initializeObject(a, b) do { \ |
#define initializeObject(a, b) do { \ |
(*a).descripteur_bibliotheque = (*b).descripteur_bibliotheque; \ |
(*a).descripteur_bibliotheque = (*b).descripteur_bibliotheque; \ |
(*a).extension_type = (*b).extension_type; } while(0) |
(*a).extension_type = (*b).extension_type; } while(0) |
#define objectContainer(a) ((*a).objet) |
#define objectContainer(type, a) ((type *) ((*a).objet)) |
|
#define objectOf(a) ((*a).objet) |
#define ifIsExternal(a, b) if (((*a).type == EXT) && ((*a).extension_type == b)) |
#define ifIsExternal(a, b) if (((*a).type == EXT) && ((*a).extension_type == b)) |
#define elseIfIsExternal(a, b) } else if (((*a).type == EXT) && \ |
#define elseIfIsExternal(a, b) } else if (((*a).type == EXT) && \ |
((*a).extension_type == b)) |
((*a).extension_type == b)) |
Line 1104
|
Line 1105
|
ifIsString(rpl_object) string = (char *) (*rpl_object).objet; \ |
ifIsString(rpl_object) string = (char *) (*rpl_object).objet; \ |
else executionError("Type mismatch error"); } while(0) |
else executionError("Type mismatch error"); } while(0) |
|
|
|
#define unEscString(s) do { \ |
|
unsigned char *__a; integer8 __l; \ |
|
__a = formateur_flux((*rpl_arguments).s_etat_processus, \ |
|
(unsigned char *) s, &__l); \ |
|
if (nullified(__a)) systemError("Memory allocation error"); \ |
|
free(s); s = (string) __a; \ |
|
} while(0) |
|
|
|
#define escString(rpl_object) do { \ |
|
unsigned char *__a; integer8 __l; \ |
|
__a = analyse_flux((*rpl_arguments).s_etat_processus, \ |
|
(unsigned char *) s, strlen(s)); \ |
|
if (nullified(__a)) systemError("Memory allocation error"); \ |
|
free(s); s = (string) __a; \ |
|
} while(0) |
|
|
#define createStringObject(rpl_object) do { \ |
#define createStringObject(rpl_object) do { \ |
struct_processus *s_etat_processus; \ |
struct_processus *s_etat_processus; \ |
s_etat_processus = (*rpl_arguments).s_etat_processus; \ |
s_etat_processus = (*rpl_arguments).s_etat_processus; \ |