Mercurial > hg > Members > innparusu > Gears
view src/llrb/llrbContext.h @ 27:44879c87c2dc
modify
author | Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 01 May 2015 18:18:36 +0900 |
parents | 7494c0b87ec4 |
children | 44914699ee9b |
line wrap: on
line source
/* Context definition for llrb example */ #define ALLOCATE_SIZE 100 enum Code { Code1, Code2, Code3, Code4, Code5, Allocator, Put, Clone, InitNode, Compare, Insert, RotateL, RotateR, ColorFlip, FixUp, ChangeRef, Exit, }; enum UniqueData { Allocate, Tree, }; struct Context { int codeNum; __code (**code) (struct Context *); void* heap_start; void* heap; union Data* root; union Data* current; long dataSize; int dataNum; union Data **data; }; union Data { long count; struct Tree { union Data* root; union Data* current; union Data* prev; int result; } tree; struct Node { int key; int value; enum Color { Red, Black, } color; union Data* left; union Data* right; } node; struct Allocate { long size; enum Code next; enum Code after_put; struct Node node; } allocate; };