added reading start

This commit is contained in:
zanostro 2025-11-17 13:07:24 +01:00
parent 5d2a0f867c
commit d438feb9ee
7 changed files with 128 additions and 4 deletions

View file

@ -27,3 +27,9 @@ std::string FileReader::readString(size_t len) {
}
bool FileReader::good() const { return static_cast<bool>(in); }
std::string FileReader::readLine() {
std::string s;
if (!std::getline(in, s)) return std::string();
return s;
}

View file

@ -0,0 +1,35 @@
#include "loader.h"
#include "file_reader.h"
Loader::~Loader()
{
_machine.reset();
}
void Loader::load()
{
}
Loader::RecordType Loader::parseRecordType(char c)
{
switch (c) {
case 'H': return RecordType::HEADER;
case 'T': return RecordType::TEXT;
case 'E': return RecordType::END;
default: return RecordType::UNKNOWN; // fallback; adjust as needed
}
}
Loader::HeaderMetadata Loader::readHeader()
{
RecordType type = parseRecordType(static_cast<char>(_file_reader->readByte()));
if (type != RecordType::HEADER) {
throw std::runtime_error("Expected HEADER record");
}
HeaderMetadata header;
}

View file

@ -25,3 +25,9 @@ std::string StringReader::readString(size_t len) {
if (static_cast<size_t>(got) < len) s.resize(static_cast<size_t>(got));
return s;
}
std::string StringReader::readLine() {
std::string s;
if (!std::getline(in, s)) return std::string();
return s;
}