blob: 17ff3681bce5005c12f0c50e1c9d632ecc0fdcd6 (
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
|
#pragma once
// Boolean functions/type info
#include <stdbool.h>
#include <stdint.h>
#include "types.h"
#include "util.h"
#define yes (Bool_t) true
#define no (Bool_t) false
PUREFUNC Text_t Bool$as_text(const void *b, bool colorize, const TypeInfo_t *type);
OptionalBool_t Bool$parse(Text_t text, Text_t *remainder);
MACROLIKE Bool_t Bool$from_int(Int_t i) {
return (i.small != 0);
}
MACROLIKE Bool_t Bool$from_int64(Int64_t i) {
return (i != 0);
}
MACROLIKE Bool_t Bool$from_int32(Int32_t i) {
return (i != 0);
}
MACROLIKE Bool_t Bool$from_int16(Int16_t i) {
return (i != 0);
}
MACROLIKE Bool_t Bool$from_int8(Int8_t i) {
return (i != 0);
}
MACROLIKE Bool_t Bool$from_byte(uint8_t b) {
return (b != 0);
}
extern const TypeInfo_t Bool$info;
|