/* ÄATA¤ÄEF.H ÍEMORY RESIDENT ÄATA¤ÂASE DEFINITIONS FOR RUNTIME ALLOCATION IN Ã. THE IDEA HERE IS TO ALLOW A RANGE OF PRE-DEFINED DATA TYPES TO BE INVOKED AS NEEDED BY A à APPLICATION WITH SOME SIMPLE COMMON SENSE NAMES AND LIMITATIONS. ÂY ÄENNY ÆIGUERRES ÎÏÔÅ: THIS IS JUST A RUN - THRU AND MAY HAVE SYNTAX ERRORS OR LOGICAL ERRORS IN IT SO CHECK IT OUT AND LET ME KNOW! */ TYPEDEF CHAR BOOLEAN; TYPEDEF CHAR SEX; ENUM BOOLEAN ÛT,FÝ; ENUM INT INTEGER Û -32767 .. +32767 Ý; TYPEDEF CHAR *STRING[]; TYPEDEF DOUBLE FLOAT; ENUM SEX ÛM,FÝ; ENUM INT AGE Û1 .. 100Ý; TYPEDEF CHAR *STATE[2]; TYPEDEF DOUBLE PERCENT; STRUCT PHONE Û /* MAKE ALL OF THESE BE REFERENCED VIA */ CHAR AC[3],PREFX[3],LAST[4]; Ý; /* PTR'S IN THE ACTUAL UNION TAG, SEE */ STRUCT TIME Û /* THE COMMENTS A FEW LINES DOWN AS TO */ CHAR HRS[2],MIN[2],SEC[2],TENTHS[1]; Ý;/* WHY */ STRUCT DATE Û CHAR DD[2],MM[2],YY[2]; Ý; STRUCT ZIP Û CHAR CODE[5]; Ý; STRUCT MONEY Û CHAR DOLLARS[9],CENTS[2]; Ý; UNION DATA¤ELEMENT Û INTEGER; /* 0 */ STRING; /* 1 *//* A POINTER TO THE STRING NOT THE ACTUAL ARRAY!*/ DATE; /* 2 *//* (TO KEEP THE FINAL STRUCT SMALL) UNION WILL */ TIME; /* 3 *//* ALLOCATE SIZE OF LARGEST MEMBER! */ BOOLEAN; REAL; AGE; SEX; PHONE; STATE; ZIP; MONEY; PERCENT; Ý; /* 12 */ STRUCT DATA¤REC Û UNSIGNED *DATA¤REC; /* NEXT RECORD IN DATA BASE */ UNSIGNED *ELEMENT¤LIST; Ý; /* TO 1ST ITEM OF THIS RECORD */ STRUCT ELEMENT¤LIST Û UNSIGNED *ELEMENT¤LIST; /* LINK ITEMS TO FORM A RECORD */ INT D¤TYPE¤NUM; /* WHAT TYPE OF ITEM IS THIS? */ UNION DATA¤ELEMENT; Ý; /* THE ITEM OR THE ADRESS OF IT */ /* DATA REC IS A LIST OF RECORDS WITH A POINTER TO THE FIRST ELEMENT OF EACH RECORD. ELEMENT LIST IS THE ACTUAL RECORD STRUCTURE WITH A POINTER TO THE NEXT ITEM IN THE RECORD, AN IDENTIFYER OF THIS ITEM'S DATA TYPE, AND A DATA ITEM WHICH IS ONE OF THE VALID DATA TYPES. ÎÏÔÅ: AS É SAID ABOVE THIS IS ÎÏÔ A FUNCTIONAL .H FILE JUST A FAST RUN-DOWN OF MY IDEA. É LEAVE IT TO OTHERS TO EXAMINE THIS AND SEE IF THEY LIKE THE IDEA É HAVE, AND IF SO MAKE YOUR OWN FUNCTIONAL DATA-MODEL. É WROTE THIS IN ABOUT 10 MINUTES AND DID NOT HAVE TIME TO CHECK MY SYNTAX AS É WENT AT IT. MABY LATER É'LL HAVE TIME AND THEN DO A SHORT DEMO PROGRAM USING THIS IDEA. ÄENNY ÆIGUERRES ÎOV 27, 1987 1:03 AM ÓTOCKTON ÃA. */