blob: 115beb045d43c4afc28965ffba2ad840f5a9e53d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include "../block.h"
#include "../any_log.h"
static block_t *block_text_alloc(const block_scheme_t *scheme)
{
block_t *block = calloc(1, sizeof(block_text_t));
block->type = BLOCK_TEXT;
return block;
}
static void block_text_clean(block_t *block)
{
block_text_t *text = (block_text_t *)block;
free(text->text);
}
static bool block_text_validate(block_t *block, const block_scheme_t *scheme)
{
block_text_t *text = (block_text_t *)block;
if (text->text == NULL) {
log_error("Block '%s' requires key '%s'", block->label, "text");
return false;
}
return true;
}
const block_scheme_t block_text_scheme = {
.name = "text",
.entries = NULL,
.alloc_fn = block_text_alloc,
.clean_fn = block_text_clean,
.validate_fn = block_text_validate,
.resolve_fn = NULL,
};
|