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
46a79b6efe
Documentation Project
...
let's document all public functions in Sapphire :)
2022-06-08 19:34:16 +02:00
6672a10c08
m_index for Parser
2022-06-08 19:17:16 +02:00
6eb401d04d
NOW IT SHOULD
2022-06-08 17:50:19 +02:00
f5495d0138
Now, It Should Build Fine.
2022-06-08 17:49:22 +02:00
5dfc8df9ca
more parser stuff
2022-06-08 17:39:51 +02:00
2452d78205
throw_error is now [[ noreturn ]]
2022-06-08 17:39:42 +02:00
c962c22017
Fixed a little segfault hehe :))
2022-06-07 18:57:41 +02:00
7a320fb70a
Updates hehe :)
2022-06-07 18:12:43 +02:00
60059e1091
ast stuff
2022-06-02 18:25:01 +02:00
f1668853dd
Lots of rewrites.
...
Planning to use LLVM to make stuff easier. Also, moved the random
sapphire stuff to actual examples in an actual examples/ folder. Also
started a standard library even if the compiler is not ready, because
why not?? Also, it helps the examples.
2022-05-28 20:44:26 +02:00
1ba46c44cf
Initial commit (added Sapphire to source control)
2022-03-11 17:00:09 +01:00