bfx
An interpreter, compiler, and REPL for brainfuck-like languages
Loading...
Searching...
No Matches
BFX Struct Reference

Structure to store generic data for a brainfuck-like esolang interpreter. More...

#include <bfx.h>

Data Fields

uint16_t flags
 Flags to control compilation and execution behavior.
 
bool receiving
 Indicates whether the interpreter is receiving input.
 
char * program
 Pointer to the program string.
 
size_t program_len
 Length of the program string (not including the input buffer).
 
size_t program_size
 Size of the program string.
 
size_t input_start
 Start index of the input buffer in the program string.
 
size_t input_ptr
 Current index of the input buffer in the program string.
 
size_t input_len
 Length of the input buffer in the program string.
 
uint8_t * tape
 Pointer to the tape array.
 
size_t tape_size
 Size of the tape array.
 
int ip
 Instruction pointer.
 
int tp
 Tape pointer.
 
BFX_Blockloops
 Pointer to the loop block array.
 
size_t loops_len
 Length of the loop array.
 
size_t loops_size
 Size of the loop array.
 
size_t input_max
 Maximum size of the input buffer.
 
int eof_behavior
 Behavior when encountering EOF.
 
BFX_Language lang
 Language identifier for the brainfuck-like esolang.
 
void * lang_data
 Pointer to language-specific data structure.
 

Detailed Description

Structure to store generic data for a brainfuck-like esolang interpreter.

Field Documentation

◆ eof_behavior

int eof_behavior

Behavior when encountering EOF.

◆ flags

uint16_t flags

Flags to control compilation and execution behavior.

◆ input_len

size_t input_len

Length of the input buffer in the program string.

◆ input_max

size_t input_max

Maximum size of the input buffer.

◆ input_ptr

size_t input_ptr

Current index of the input buffer in the program string.

◆ input_start

size_t input_start

Start index of the input buffer in the program string.

◆ ip

int ip

Instruction pointer.

◆ lang

Language identifier for the brainfuck-like esolang.

◆ lang_data

void* lang_data

Pointer to language-specific data structure.

◆ loops

BFX_Block* loops

Pointer to the loop block array.

◆ loops_len

size_t loops_len

Length of the loop array.

◆ loops_size

size_t loops_size

Size of the loop array.

◆ program

char* program

Pointer to the program string.

◆ program_len

size_t program_len

Length of the program string (not including the input buffer).

◆ program_size

size_t program_size

Size of the program string.

◆ receiving

bool receiving

Indicates whether the interpreter is receiving input.

◆ tape

uint8_t* tape

Pointer to the tape array.

◆ tape_size

size_t tape_size

Size of the tape array.

◆ tp

int tp

Tape pointer.


The documentation for this struct was generated from the following file: