|
Cthulhu
0.2.10
Cthulhu compiler collection
|
#include <ctu_scan_api.h>#include "core/analyze.h"#include "core/compiler.h"#include "core/text.h"#include <stddef.h>#include <stdbool.h>

Go to the source code of this file.
Data Structures | |
| struct | scan_t |
| a source file scanner More... | |
| #define | CT_SCAN_BUILTIN_NAME "<builtin>" |
| the name of all builtin scanners builtin scanners are distinguished by their source language which maps to the source driver/plugin/target More... | |
| CT_NODISCARD size_t | size |
| CT_NODISCARD CT_PUREFN CT_SCAN_API const char * | scan_language (const scan_t *scan) |
| get the source language of a scanner More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API const char * | scan_path (const scan_t *scan) |
| get the path of a scanner More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API void * | scan_get (scan_t *scan) |
| get the compiled object from a scanner More... | |
| CT_SCAN_API void | scan_set (scan_t *scan, void *value) |
| set the compiled object of a scanner More... | |
| CT_SCAN_API void | scan_set_context (scan_t *scan, void *value) |
| get the context of a scanner More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API void * | scan_get_context (const scan_t *scan) |
| get the context of a scanner More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API text_view_t | scan_source (const scan_t *scan) |
| get a text span of the scanners contents More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API arena_t * | scan_get_arena (const scan_t *scan) |
| get the arena of a scanner More... | |
| CT_NODISCARD | STA_RET_RANGE (0, size) CT_NOALIAS CT_SCAN_API size_t scan_read(scan_t *scan |
| read data from a scanner More... | |
| CT_NODISCARD | STA_WRITES (size) void *dst |
| CT_NODISCARD CT_SCAN_API scan_t * | scan_io (const char *language, io_t *io, arena_t *arena) |
| create a scanner from an io source More... | |
| CT_NODISCARD CT_SCAN_API scan_t * | scan_builtin (const char *language, arena_t *arena) |
| create a builtin scanner More... | |
| CT_NODISCARD CT_PUREFN CT_SCAN_API bool | scan_is_builtin (const scan_t *scan) |
| check if a scanner is the builtin scanner More... | |
| #define CT_SCAN_BUILTIN_NAME "<builtin>" |
the name of all builtin scanners builtin scanners are distinguished by their source language which maps to the source driver/plugin/target
| CT_NODISCARD CT_SCAN_API scan_t* scan_builtin | ( | const char * | language, |
| arena_t * | arena | ||
| ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API void* scan_get | ( | scan_t * | scan | ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API arena_t* scan_get_arena | ( | const scan_t * | scan | ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API void* scan_get_context | ( | const scan_t * | scan | ) |
| CT_NODISCARD CT_SCAN_API scan_t* scan_io | ( | const char * | language, |
| io_t * | io, | ||
| arena_t * | arena | ||
| ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API bool scan_is_builtin | ( | const scan_t * | scan | ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API const char* scan_language | ( | const scan_t * | scan | ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API const char* scan_path | ( | const scan_t * | scan | ) |
| CT_SCAN_API void scan_set | ( | scan_t * | scan, |
| void * | value | ||
| ) |
| CT_SCAN_API void scan_set_context | ( | scan_t * | scan, |
| void * | value | ||
| ) |
| CT_NODISCARD CT_PUREFN CT_SCAN_API text_view_t scan_source | ( | const scan_t * | scan | ) |
| CT_NODISCARD STA_RET_RANGE | ( | 0 | , |
| size | |||
| ) |
read data from a scanner
| scan | the scanner to read from |
| dst | the destination to read into, must be at least size bytes |
| size | the number of bytes to read |
| CT_NODISCARD STA_WRITES | ( | size | ) |
| CT_NODISCARD size_t size |