From ea5ef2fe245c09b35c783977928d6e995110cfb4 Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Mon, 30 Aug 2021 19:07:26 -0400 Subject: Scrap old spec, add initial value parsing --- spec/iex/iex-spec.txt | 128 -------------------------------------------------- 1 file changed, 128 deletions(-) delete mode 100644 spec/iex/iex-spec.txt (limited to 'spec/iex') diff --git a/spec/iex/iex-spec.txt b/spec/iex/iex-spec.txt deleted file mode 100644 index 6979cfc..0000000 --- a/spec/iex/iex-spec.txt +++ /dev/null @@ -1,128 +0,0 @@ -This is the IEX file specification. - -Document version (semver): 0.0.1 -Main Author: Kyle Gunger - -License: Apache 2.0 - ----------------------------------- - -Contents: - -Organization - ----------------------------------- - -Organization - -Magic number starts the file "IEX" or 0x49 0x45 0x58 - -The header of the file can be represented as such - -;struct IEX_HEAD { - raw {3}char # Always "IEX" - magic, - - {}char - name, - arch, - os, - - uint8 # Version info - major, - minor, - patch, - # OS abi info - os_major, - os_minor, - os_patch, - - bool # Tells loader that the file holds a main function - can_execute, - - ~void ({}{}char args) [int] - # Address of main in file - start_addr, - - {}IEX_SECTION - sections, - - {}IEX_LIB - dependencies, - - IEX_MODULE - self -} - -a section is defined as - -;struct IEX_SECTION { - {}char - name, - - uint8 # Denotes dependency, symbol table, data, bss, text, etc. - type, - - ~void # Points to start and end of section - start, - end -} - -;struct IEX_LIB { - {}char - name, - - uint8 # Version info - major, - minor, - patch -} - -;struct IEX_MODULE { - {}char - name, - - {}IEX_FUNCTION - func, - - {}IEX_TYPE - types, - - {}IEX_MODULE - sub -} - -;struct IEX_FUNCTION { - {}char - name, - - uint32 - overload, - bytes_in, - bytes_out, - - ~void - addr -} - -;struct IEX_TYPE { - {}char - name, - - bool - raw_struct, - interface, - dynamic, - - uint32 - size, - - {}IEX_FUNCTION - methods, - - {}IEX_TYPE - supers, - - ~void - addr -} -- cgit v1.2.3