/* */
/* */
/* */
-/* (C) 1998-2000 Ullrich von Bassewitz */
-/* Wacholderweg 14 */
-/* D-70597 Stuttgart */
-/* EMail: uz@musoftware.de */
+/* (C) 1998-2003 Ullrich von Bassewitz */
+/* Römerstrasse 52 */
+/* D-70794 Filderstadt */
+/* EMail: uz@cc65.org */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
-#include "../common/exprdefs.h"
-#include "../common/filepos.h"
+/* common */
+#include "exprdefs.h"
+#include "filepos.h"
/*****************************************************************************/
-/* struct Fragment */
+/* struct Fragment */
/*****************************************************************************/
-typedef struct Fragment_ Fragment;
-struct Fragment_ {
- Fragment* List; /* List of all fragments */
- Fragment* Next; /* Fragment list in one segment */
+typedef struct Fragment Fragment;
+struct Fragment {
+ Fragment* Next; /* Pointer to next fragment in segment */
Fragment* LineList; /* List of fragments for one src line */
FilePos Pos; /* File position for this fragment */
+ struct LineInfo* LI; /* Extra line info */
unsigned short Len; /* Length for this fragment */
unsigned char Type; /* Fragment type */
union {
- unsigned char Data [4]; /* Literal values */
+ unsigned char Data[4]; /* Literal values */
ExprNode* Expr; /* Expression */
} V;
};
-/* List of all fragments */
-extern Fragment* FragList;
-extern Fragment* FragLast;
+/*****************************************************************************/
+/* Code */
+/*****************************************************************************/
+
+
+
+Fragment* NewFragment (unsigned char Type, unsigned short Len);
+/* Create, initialize and return a new fragment. The fragment will be inserted
+ * into the current segment.
+ */
+