pinosaur
/
smdp.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some ncurses tests
[smdp.git]
/
include
/
markdown.h
diff --git
a/include/markdown.h
b/include/markdown.h
index
357de78
..
b26765e
100644
(file)
--- a/
include/markdown.h
+++ b/
include/markdown.h
@@
-7,38
+7,40
@@
*/
#include "cstring.h"
*/
#include "cstring.h"
-
-#define SET_BIT(var, pos) ((var) |= (1<<(pos)))
-#define CLEAR_BIT(var, pos) ((var) &= (~(1<<(pos))))
-#define TOGGLE_BIT(var, pos) ((var) ^= (1<<(pos)))
-#define CHECK_BIT(var, pos) ((var) & (1<<(pos)))
+#include "bitops.h"
enum line_bitmask {
enum line_bitmask {
- IS_H
EADER
,
- IS_H
EADER
2,
+ IS_H
1
,
+ IS_H2,
IS_QUOTE,
IS_CODE,
IS_QUOTE,
IS_CODE,
- IS_
LIST
,
- IS_
NUMLIST
+ IS_
HR
,
+ IS_
EMPTY
};
typedef struct _line_t {
cstring_t *text;
};
typedef struct _line_t {
cstring_t *text;
+ struct _line_t *prev;
struct _line_t *next;
int bits;
struct _line_t *next;
int bits;
- int
left_white_space
;
+ int
offset
;
} line_t;
typedef struct _page_t {
} line_t;
typedef struct _page_t {
- line_t *lines;
+ line_t *line;
+ struct _page_t *prev;
struct _page_t *next;
} page_t;
typedef struct _document_t {
struct _page_t *next;
} page_t;
typedef struct _document_t {
- line_t *title;
- line_t *author;
- line_t *date;
- page_t *pages;
+ line_t *header;
+ page_t *page;
} document_t;
} document_t;
+line_t *new_line();
+line_t *next_line(line_t *prev);
+page_t *new_page();
+page_t *next_page(page_t *prev);
+document_t *new_document();
+
#endif // !defined( MARKDOWN_H )
#endif // !defined( MARKDOWN_H )