From aa50be8e36a34a0d142918476cbf2b1f693e12da Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Mon, 15 Jan 2024 11:25:08 +0100 Subject: IDE: Improve MetroWorks code editor class. Signed-off-by: Amlal El Mahrouss --- CompilerKit/Defines.hpp | 1 + CompilerKit/StdKit/AE.hpp | 17 +++++++++++++++++ CompilerKit/StdKit/PEF.hpp | 20 ++++++++++++++++---- 3 files changed, 34 insertions(+), 4 deletions(-) (limited to 'CompilerKit') diff --git a/CompilerKit/Defines.hpp b/CompilerKit/Defines.hpp index 027f24f..6118a9b 100644 --- a/CompilerKit/Defines.hpp +++ b/CompilerKit/Defines.hpp @@ -87,6 +87,7 @@ #include #include +#include namespace CompilerKit { diff --git a/CompilerKit/StdKit/AE.hpp b/CompilerKit/StdKit/AE.hpp index c01bc51..f06c785 100644 --- a/CompilerKit/StdKit/AE.hpp +++ b/CompilerKit/StdKit/AE.hpp @@ -59,3 +59,20 @@ namespace CompilerKit kKindRelocationAtRuntime = 0x34f, }; } + + +// provide operator<< for AE + +std::ofstream &operator<<(std::ofstream &fp, CompilerKit::AEHeader &container) +{ + fp.write((char *)&container, sizeof(CompilerKit::AEHeader)); + + return fp; +} + +std::ofstream &operator<<(std::ofstream &fp, CompilerKit::AERecordHeader &container) +{ + fp.write((char *)&container, sizeof(CompilerKit::AERecordHeader)); + + return fp; +} diff --git a/CompilerKit/StdKit/PEF.hpp b/CompilerKit/StdKit/PEF.hpp index 69ed99f..b8c5190 100644 --- a/CompilerKit/StdKit/PEF.hpp +++ b/CompilerKit/StdKit/PEF.hpp @@ -17,6 +17,11 @@ #define kPefMagic "PEF" #define kPefMagicFat "FEP" +#define kPefExt ".out" +#define kPefDylibExt ".lib" +#define kPefObjectExt ".o" +#define kPefDebugExt ".dbg" + #define kPefMagicLen 3 #define kPefVersion 2 @@ -82,7 +87,14 @@ namespace CompilerKit }; } -#define kPefExt ".out" -#define kPefDylibExt ".lib" -#define kPefObjectExt ".o" -#define kPefDebugExt ".dbg" \ No newline at end of file +inline std::ofstream& operator<<(std::ofstream& fp, CompilerKit::PEFContainer& container) +{ + fp.write((char*)&container, sizeof(CompilerKit::PEFContainer)); + return fp; +} + +inline std::ofstream& operator<<(std::ofstream& fp, CompilerKit::PEFCommandHeader& container) +{ + fp.write((char*)&container, sizeof(CompilerKit::PEFCommandHeader)); + return fp; +} -- cgit v1.2.3