53 lines
846 B
C
53 lines
846 B
C
|
/*
|
||
|
4coder_jump_sticky.h - Types for persistant jump positions.
|
||
|
*/
|
||
|
|
||
|
// TOP
|
||
|
|
||
|
#if !defined(FCODER_JUMP_STICKY_H)
|
||
|
#define FCODER_JUMP_STICKY_H
|
||
|
|
||
|
enum Jump_Location_Flag{
|
||
|
JumpFlag_IsSubJump = 0x1,
|
||
|
};
|
||
|
|
||
|
struct Sticky_Jump_Destination_Array{
|
||
|
uint32_t first_jump_index;
|
||
|
Marker_Handle handle;
|
||
|
};
|
||
|
|
||
|
struct Sticky_Jump_Source{
|
||
|
uint32_t line_number;
|
||
|
uint32_t flags;
|
||
|
};
|
||
|
|
||
|
struct Marker_List{
|
||
|
Sticky_Jump_Destination_Array *dst;
|
||
|
int32_t dst_count;
|
||
|
int32_t dst_max;
|
||
|
|
||
|
Sticky_Jump_Source *jumps;
|
||
|
int32_t jump_count;
|
||
|
int32_t jump_max;
|
||
|
|
||
|
int32_t previous_size;
|
||
|
};
|
||
|
|
||
|
struct Marker_List_Node{
|
||
|
Marker_List_Node *next;
|
||
|
Marker_List_Node *prev;
|
||
|
Marker_List list;
|
||
|
int32_t buffer_id;
|
||
|
};
|
||
|
|
||
|
struct Locked_Jump_State{
|
||
|
View_Summary view;
|
||
|
Marker_List *list;
|
||
|
int32_t list_index;
|
||
|
};
|
||
|
|
||
|
#endif
|
||
|
|
||
|
// BOTTOM
|
||
|
|