diff options
author | Nicolas "Pixel" Noble <pixel@nobis-crew.org> | 2009-09-21 07:55:26 +0200 |
---|---|---|
committer | Nicolas "Pixel" Noble <pixel@nobis-crew.org> | 2009-09-21 07:55:26 +0200 |
commit | 48df755c00a19a71e5583480b15091dc5c1e8df1 (patch) | |
tree | 3a5462a495525a0e2c3ddc2d09396f00c5797c3f /Database/database-types.h | |
parent | 14d90c9e1171655b864316c9c4aa34033fdd3a45 (diff) |
Adding a few accessors, and adding crawled bit, in order to be able to crawl several times in a row.
Diffstat (limited to 'Database/database-types.h')
-rw-r--r-- | Database/database-types.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Database/database-types.h b/Database/database-types.h index 8ea61e6..796a16c 100644 --- a/Database/database-types.h +++ b/Database/database-types.h @@ -19,12 +19,13 @@ enum basic_tags_t { * A non-hollow database will be as big (at least) as the input file: in-memory-RLE is probably a good idea. */ struct memory_tags_t { - unsigned short basic_tags: 2; - /** -1..30, 30 being "user hinted", 29 being "external reference" (entry point, exported symbol, ...) + unsigned short basic_tag: 2; + unsigned short crawled: 1; + /** -1..15, 15 being "user hinted", 14 being "external reference" (entry point, exported symbol, ...) * and -1 means something's fishy with that tag, and that it is probably completely wrong. * Certitude will grow down with distance from a certain piece of info when the crawler goes away jumping around. */ - unsigned short certitude: 6; + unsigned short certitude: 5; }; /** An absolute pointer can reference a segment from its ID, and a pointer within the segment. @@ -41,6 +42,7 @@ typedef union { static inline Uint32 SEGID(absolute_ptr ptr) { return ptr.segment_id; } static inline Uint32 SEGOFFSET(absolute_ptr ptr) { return ptr.ptr; } static inline absolute_ptr ABSPTR(Uint32 id, Uint32 ptr) { absolute_ptr r; r.segment_id = id; r.ptr = ptr; return r; } +static const absolute_ptr ABSNUL = { 0 }; /** A function description. */ |