70f564fe58
Error: Add reminder FIXME
2022-11-01 22:28:44 +01:00
f8d76c9bea
Result: Reorder constructors
2022-11-01 22:28:34 +01:00
2cb477447e
Lexer, Parser: Reorder constructors and use ssize_t for signed indices
2022-11-01 22:28:21 +01:00
06f24e770b
Location: Add copy and move constructors and fix operator=
2022-11-01 22:27:45 +01:00
6b505c82e7
Token: Add a copy constructor and fix operator=
2022-11-01 22:27:18 +01:00
dc85a8b296
Avoid forward declaring the entry point without actually defining it
2022-08-26 17:33:03 +02:00
734537a528
implicit casts between integer/floating point types yay!!
2022-08-26 17:29:20 +02:00
6ce5d406bb
FUNCTION RETURN TYPES!!!!
2022-08-26 16:22:40 +02:00
0d6651f813
Change -m* arguments to -*
2022-08-26 16:03:54 +02:00
5a0b183198
Check for entry point before code generation
2022-08-26 16:02:07 +02:00
cb5f41a7c8
Update Arguments
2022-08-26 15:55:45 +02:00
99f56d3a61
REFACTOR!!
2022-08-26 12:00:14 +02:00
59a80100db
Location: Rewrite str and paren_str
2022-08-25 20:10:13 +02:00
a9a21b19e0
Change paren_str to use format_string, removing a warning
2022-08-25 20:02:23 +02:00
b1c7a26cfb
You can now forward declare functions!
2022-08-25 19:15:43 +02:00
bae0d82f26
WE CAN MAKE FUNCTIONS NOW!!!!!!!!!!!!!!!!!!!!!!!!!
2022-08-25 18:49:43 +02:00
d341e90237
Return from unreachable spot
2022-08-24 16:35:05 +02:00
3f70d4b8b6
IT OUTPUTS OBJECT FILES!!!!!!!!!!!!!!!!!!!!!!!!!!
2022-08-24 16:24:32 +02:00
cc5013ec6f
Run clang-format on project
2022-08-03 15:30:35 +00:00
072e58b276
Added UnaryOpNode class
2022-08-03 15:26:48 +00:00
3289ae0148
Added error on unfinished parsing
2022-08-03 15:22:13 +00:00
e0661f9f8f
Run clang-format on project
2022-08-03 14:56:15 +00:00
7c130a0d40
Actually show errors
2022-08-03 14:47:51 +00:00
77317650f5
Added Result class for error handling while parsing
2022-08-03 14:44:35 +00:00
582ce26776
Add Result class inspired by Rust
2022-07-30 12:54:25 +00:00
1827b27996
Move FormatString and tclap into their own external/ directory
2022-07-30 12:38:52 +00:00
c06ca7bf99
Move FormatString and tclap into their own external/ directory
2022-07-30 12:37:37 +00:00
5efdc23006
Benchmark Parsing and IR Generation
2022-07-19 15:25:53 +02:00
3d2fa00db8
Changed a path so that VSCode's Intellisense stops complaining
2022-07-18 15:59:04 +02:00
085677bc2b
Syscall* ASTNodes and LLVM IR generation for x86
...
Inline assembly for the win!
2022-07-18 15:57:16 +02:00
7522858897
basic LLVM IR building and parsing
2022-07-15 14:28:05 +02:00
98b14e6bf5
Finally, some real progress on the AST!!
2022-07-11 11:59:02 +02:00
ff90b07ac0
utils.h definition
2022-07-02 11:46:07 +02:00
c6038e8b61
doxygen test
2022-07-02 11:42:10 +02:00
416ad3dd85
Moved all benchmark code to main()
2022-06-22 18:19:27 +02:00
1f11d8ce4d
benchmark() now takes a string
...
benchmark() now takes a message instead of getting the message from
__PRETTY_FUNCTION__, since it is more explicit
2022-06-22 18:16:45 +02:00
e4fd6c863a
Updated Lexer::make_lexer to return a unique_ptr
...
This is part of my quest to replace all unneeded std::shared_ptrs for
std::unique_ptrs to improve performance, since there is no need for
reference counting for pointers that are uniquely used. I also had to
change the first parameter of Lexer::assign_parent_location to a
std::unique_ptr<Lexer>& so that it can accept the new result of
make_lexer.
2022-06-22 18:12:50 +02:00
8d71d9c120
benchmarking :)
2022-06-16 17:13:01 +02:00
de0b3ddec6
NEWLINE FOR THE WIN
2022-06-16 16:01:35 +02:00
e35e85fe74
FormatString.hpp in utils.h
2022-06-16 15:57:05 +02:00
8b1bb00d75
Precompiled Header :)
2022-06-16 15:56:10 +02:00
4f6a1235a0
used clang-format :)
2022-06-14 16:29:51 +02:00
608f3a36bd
yes namespaces are neat but no
2022-06-08 20:19:27 +02:00
9ccb5e1a6b
docs for FileIO, a very enjoyable namespace
2022-06-08 20:19:01 +02:00
09064b1581
More documentation for the Lexer
2022-06-08 20:06:56 +02:00
073a97c7b6
documentation for Lexer
2022-06-08 20:05:28 +02:00
d6daa8e5b3
Documentation Project is working well!!
2022-06-08 19:59:14 +02:00
9b217037c8
Updates to Token.h's documentation.
2022-06-08 19:49:09 +02:00
af43023732
DocumentationProject: StringConversion was easy
2022-06-08 19:46:14 +02:00
e83a5a003e
Documentation Project: Token.h & Token.cpp
2022-06-08 19:44:09 +02:00