/* * wadb, a WebAssembly debugger * Copyright (C) 2025 Xavier Del Campo Romero * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #ifndef TYPES_H #define TYPES_H #include #include #include #include enum { SECTION_CUSTOM, SECTION_TYPE, SECTION_IMPORT, SECTION_FUNCTION, SECTION_TABLE, SECTION_MEMORY, SECTION_GLOBAL, SECTION_EXPORT, SECTION_START, SECTION_ELEMENT, SECTION_CODE, SECTION_DATA }; typedef bool varint1; typedef bool varuint1; typedef signed char varint7; typedef short varint16; typedef long varint32; typedef long long varint64; typedef unsigned char varuint7; typedef unsigned short varuint16; typedef unsigned long varuint32; typedef unsigned long long varuint64; typedef varint7 value_type; int read_varint1(FILE *f, varint1 *out); int read_varint7(FILE *f, varint7 *out); int read_varint32(FILE *f, varint32 *out); int read_varint64(FILE *f, varint64 *out); int read_varuint1(FILE *f, varuint1 *out); int read_varuint7(FILE *f, varuint7 *out); int read_varuint32(FILE *f, varuint32 *out); int read_varuint64(FILE *f, varuint64 *out); #endif