From 43e6e717d18ccf9c351f44370ef56abe09dc1cc4 Mon Sep 17 00:00:00 2001 From: Nicholas Clark Date: Wed, 17 Aug 2005 09:06:33 +0000 Subject: Given that we now have a union, there's no need for all the HvARRAY() casting games. p4raw-id: //depot/perl@25297 --- sv.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'sv.h') diff --git a/sv.h b/sv.h index 6983f45f27..003e0418df 100644 --- a/sv.h +++ b/sv.h @@ -62,6 +62,11 @@ typedef enum { SVt_PVIO /* 15 */ } svtype; + +/* typedefs to eliminate some typing */ +typedef struct he HE; +typedef struct hek HEK; + /* Using C's structural equivalence to help emulate C++ inheritance here... */ struct STRUCT_SV { /* struct sv { */ @@ -74,6 +79,7 @@ struct STRUCT_SV { /* struct sv { */ SV* svu_rv; /* pointer to another SV */ char* svu_pv; /* pointer to malloced string */ SV** svu_array; + HE** svu_hash; } sv_u; #ifdef DEBUG_LEAKING_SCALARS unsigned sv_debug_optype:9; /* the type of OP that allocated us */ @@ -94,6 +100,7 @@ struct gv { SV* svu_rv; char* svu_pv; SV** svu_array; + HE** svu_hash; } sv_u; }; @@ -107,6 +114,7 @@ struct cv { SV* svu_rv; char* svu_pv; SV** svu_array; + HE** svu_hash; } sv_u; }; @@ -120,6 +128,7 @@ struct av { SV* svu_rv; char* svu_pv; /* pointer to first array element */ SV** svu_array; + HE** svu_hash; } sv_u; }; @@ -133,6 +142,7 @@ struct hv { SV* svu_rv; char* svu_pv; SV** svu_array; + HE** svu_hash; } sv_u; }; @@ -146,6 +156,7 @@ struct io { SV* svu_rv; char* svu_pv; SV** svu_array; + HE** svu_hash; } sv_u; }; -- cgit v1.2.1