diff options
Diffstat (limited to 'CompilerKit/StdKit')
| -rw-r--r-- | CompilerKit/StdKit/AE.hpp | 17 | ||||
| -rw-r--r-- | CompilerKit/StdKit/PEF.hpp | 20 |
2 files changed, 33 insertions, 4 deletions
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; +} |
