Mana
FileFormat.h File Reference
#include "Platform.h"
#include <array>
#include <cstdio>
#include <string_view>

Go to the source code of this file.

Classes

struct  mana::FileHeader
 
struct  mana::ActorInfoHeader
 
struct  mana::ActionInfoHeader
 
struct  mana::IntermediateLanguageProperty
 

Namespaces

 mana
 

Macros

#define MANA_FILE_FORMAT_DEBUG_PARAMETER(code, size)   (1 + (size))
 

Enumerations

enum class  mana::IntermediateLanguage : uint8_t {
  mana::Restart = 0 , mana::Halt , mana::Yield , mana::NonPreEmptive ,
  mana::PreEmptive , mana::BranchEqual , mana::BranchNotEqual , mana::Branch ,
  mana::BranchSubRoutine , mana::Call , mana::Request , mana::RequestWaitStarting ,
  mana::RequestWaitEnded , mana::Join , mana::Comply , mana::Refuse ,
  mana::LoadReturnAddress , mana::SaveReturnAddress , mana::ReturnFromFunction , mana::ReturnFromAction ,
  mana::Rollback , mana::PushZeroInteger , mana::PushZeroFloat , mana::PushChar ,
  mana::PushShort , mana::PushInteger , mana::PushSize , mana::PushFloat ,
  mana::PushString , mana::PushPriority , mana::PushActor , mana::PushSelf ,
  mana::PushSender , mana::Allocate , mana::Free , mana::Duplicate ,
  mana::DuplicateData , mana::Remove , mana::RemoveData , mana::LoadStaticAddress ,
  mana::LoadGlobalAddress , mana::LoadFrameAddress , mana::LoadSelfAddress , mana::LoadChar ,
  mana::LoadShort , mana::LoadInteger , mana::LoadFloat , mana::LoadReference ,
  mana::LoadData , mana::StoreChar , mana::StoreShort , mana::StoreInteger ,
  mana::StoreFloat , mana::StoreReference , mana::StoreData , mana::AddInteger ,
  mana::DivideInteger , mana::MinusInteger , mana::ModInteger , mana::MultiInteger ,
  mana::SubtractInteger , mana::AddFloat , mana::DivideFloat , mana::MinusFloat ,
  mana::ModFloat , mana::MultiFloat , mana::SubtractFloat , mana::And ,
  mana::ExclusiveOr , mana::LogicalAnd , mana::LogicalOr , mana::LogicalNot ,
  mana::Not , mana::Or , mana::ShiftLeft , mana::ShiftRight ,
  mana::CastIntegerToFloat , mana::CastFloatToInteger , mana::CompareEqualInteger , mana::CompareNotEqualInteger ,
  mana::CompareGreaterEqualInteger , mana::CompareGreaterInteger , mana::CompareLessEqualInteger , mana::CompareLessInteger ,
  mana::CompareEqualFloat , mana::CompareNotEqualFloat , mana::CompareGreaterEqualFloat , mana::CompareGreaterFloat ,
  mana::CompareLessEqualFloat , mana::CompareLessFloat , mana::CompareEqualData , mana::CompareNotEqualData ,
  mana::CompareGreaterEqualData , mana::CompareGreaterData , mana::CompareLessEqualData , mana::CompareLessData ,
  mana::Print , mana::DynamicRequest , mana::DynamicRequestWaitStarting , mana::DynamicRequestWaitEnded
}
 

Functions

const IntermediateLanguageProperty & mana::GetIntermediateLanguageProperty (const IntermediateLanguage code)
 
address_t mana::GetInstructionSize (const void *codeBuffer, const address_t index)
 

Macro Definition Documentation

◆ MANA_FILE_FORMAT_DEBUG_PARAMETER

#define MANA_FILE_FORMAT_DEBUG_PARAMETER (   code,
  size 
)    (1 + (size))