Username404
|
7b1987f81b
|
Throw an exception when instead of calling exit when the "--newlinesoff" argument is used with incompatible targets
|
2021-10-07 21:11:45 +02:00 |
Username404-59
|
24d934caf2
|
Use any_of instead of a range-based loop in the Argument::is function
|
2021-10-05 08:45:38 +02:00 |
Username404-59
|
58f2d9cba7
|
Remove an extra space in arguments.hpp
|
2021-10-05 08:43:34 +02:00 |
Username404-59
|
014680ec95
|
Remove a useless "public" keyword use in arguments.hpp
|
2021-10-03 19:13:48 +02:00 |
Username404
|
5cea9251bd
|
Return a string_view instead of a string in the ArgumentAssignable::getValueFor function
|
2021-10-03 12:20:59 +02:00 |
Username404
|
57a01e6c32
|
Remove a redundant public section in Yerbacon::Exception and make the second constructor call the first one
|
2021-10-02 13:33:50 +02:00 |
Username404
|
f0aeda7c8a
|
Check for missing standard library definitions in Yerbacon.hpp
|
2021-10-02 12:59:33 +02:00 |
Username404-59
|
525aa0db88
|
Make a few members of ParseTree private, and make the internal methods protected
|
2021-10-01 18:15:59 +02:00 |
Username404-59
|
9a27c0c9c7
|
Don't use the public keyword in NamedIdentifier since it is a structure
|
2021-09-28 07:10:21 +02:00 |
Username404
|
c696b440e7
|
Fix a memory leak caused by the constness of the exceptionCause string in Yerbacon::Exception
|
2021-09-25 17:37:12 +02:00 |
Username404
|
659cdf4e80
|
Make tok::LexerException and Parser::ParserException type definitions instead of extending the Yerbacon::Exception class
|
2021-09-25 17:33:28 +02:00 |
Username404
|
c6ee98e76b
|
Accept the use of "structure" as an alternative to the "class" keyword
|
2021-09-25 16:11:02 +02:00 |
Username404
|
471a588d37
|
Use a goto statement in the Argument::is function
|
2021-09-23 19:35:55 +02:00 |
Username404
|
2de8ce3e43
|
Make sure the "==" operator is inline in arguments.hpp
|
2021-09-23 19:03:44 +02:00 |
Username404-59
|
6af6c04d5f
|
Remove the unlikely attribute from the '\r' case, and add an EOF token type
|
2021-09-23 13:21:47 +02:00 |
Username404
|
6ce13be4ca
|
Don't append CMAKE_CXX_COMPILER_ARCHITECTURE_ID to CPACK_SYSTEM_NAME + CPACK_TOPLEVEL_TAG, and remove a few newlines in ParseComponents.hpp
|
2021-09-19 21:37:53 +02:00 |
Username404
|
1371457a1f
|
Reserve memory before adding elements to parse trees
|
2021-09-19 20:48:08 +02:00 |
Username404
|
beea9bfadf
|
Make const parse trees actually constant, fix formatting in Target.hpp and classes derived from Target
|
2021-09-19 20:45:57 +02:00 |
Username404
|
82d733af54
|
Edit the use of convertible_to in Parser.hpp
|
2021-09-18 16:34:01 +02:00 |
Username404
|
8cb72a9baa
|
Remove a useless condition in Parser.hpp
|
2021-09-18 16:26:29 +02:00 |
Username404
|
fefa7b05c7
|
Take an initializer_list instead of variadic arguments in the nextAre lambda function
|
2021-09-18 15:32:31 +02:00 |
Username404
|
500662f5c5
|
Add the isFinalDefine boolean to 1 in Parser.hpp
|
2021-09-15 20:05:23 +02:00 |
Username404
|
08a038cf82
|
Set the ParsingException cause to another string when no identifier is given to a class, and pass the component's line to the exception
|
2021-09-14 20:43:09 +02:00 |
Username404
|
02bde3b106
|
Make the "languages" array a constant variable
|
2021-09-13 18:24:01 +02:00 |
Username404
|
33ee011aed
|
Fix the findById() and findReferenceByName() methods in ParseComponents.hpp since the filter function doesn't actually exist
|
2021-09-12 16:45:30 +02:00 |
Username404
|
d9913d0c9f
|
Use a type definition in Target.hpp
|
2021-09-12 13:48:34 +02:00 |
Username404
|
2b84262ea0
|
Use std::filter and std::transform instead of the std::ranges library and make the destructor of the Target class virtual
|
2021-09-12 12:00:21 +02:00 |
Username404
|
e79a7415de
|
Add an overload to reuse the same characters for the two parameters of Target::stringInterpolation and use an escaped character sequence
|
2021-09-11 13:42:22 +02:00 |
Username404
|
26421597f2
|
Prohibit the use of --newlinesoff with targets that do not support putting a whole script on one line
|
2021-09-11 13:19:43 +02:00 |
Username404
|
96bd6bf708
|
Re-add the newlinesoff argument
|
2021-09-11 11:49:57 +02:00 |
Username404
|
bfa8f50ad9
|
Revert "Add a "SEPARATOR" token type"
This reverts commit 47478173
|
2021-09-11 11:35:22 +02:00 |
Username404
|
6de05633d9
|
Add a "SEPARATOR" token type
|
2021-09-10 22:15:05 +02:00 |
Username404
|
37a6c0e047
|
Remove the oldClosingBraceIsFar boolean in Target.hpp
|
2021-09-02 10:35:53 +02:00 |
Username404
|
76c8975e27
|
Use a reference in the Argument "==" operator, and move the currentArg variable of main.cpp into the loop used for arguments
|
2021-09-02 10:34:00 +02:00 |
Username404
|
d6642f9ae5
|
Make getId() a constexpr function and use arrow syntax to call it in Target.hpp instead of dereferencing a pointer
|
2021-09-02 10:08:10 +02:00 |
Username404
|
b5697bf0a8
|
Take the remaining characters of a string instead of taking none in a condition of the stringInterpolation() function from Target.hpp
|
2021-09-01 19:31:04 +02:00 |
Username404
|
afc59c7a22
|
Don't find occurrences when closing characters are not found in Target.hpp, make the interpolation strings static const variables and fix typos
|
2021-08-31 15:19:44 +02:00 |
Username404
|
bc2f6938e3
|
Use negation in the multiline boolean of Target.hpp
|
2021-08-31 14:47:13 +02:00 |
Username404
|
e92b3cf12f
|
Fix an extra space being added in the stringInterpolation() function of Target.hpp
|
2021-08-28 23:25:16 +02:00 |
Username404
|
c186f30eef
|
Merge the noMultiline boolean into multiline in Target.hpp
|
2021-08-28 11:14:08 +02:00 |
Username404
|
2dba7fbda6
|
Add experimental string transpilation with interpolation
|
2021-08-28 10:59:24 +02:00 |
Username404-59
|
1992e1d42b
|
Add transpilation of strings to lua-compatible ones, and fix a comment
|
2021-08-24 17:23:31 +02:00 |
Username404
|
5d4be1039d
|
Add a new variadic lambda in Parser.hpp to check the types of tokens
|
2021-08-23 14:58:46 +02:00 |
Username404
|
079d99e08a
|
Remove the parameter of Target.get(), add it to Target as a property and rename Target.get() to Target.on()
|
2021-08-23 12:49:22 +02:00 |
Username404
|
664a6a92be
|
Begin adding transpilation of basic elements
|
2021-08-22 23:57:18 +02:00 |
Username404
|
729e04161f
|
Make fileName a reference in a loop of main.cpp, and use findReferencesById() instead of findById() in ParseComponents.hpp
|
2021-08-20 00:08:51 +02:00 |
Username404
|
2e9e063d71
|
Use smart pointers instead of raw pointers in ParseComponents.hpp, remove an unused dependency in main.cpp and capture fileName by value in main.cpp to avoid using its reference after the current scope
|
2021-08-19 23:55:55 +02:00 |
Username404
|
fd6ce35291
|
Add line numbers to Yerbacon::Exception
|
2021-08-18 19:31:02 +02:00 |
Username404
|
989650dba6
|
Catch exceptions in the main function
|
2021-08-18 18:59:46 +02:00 |
Username404
|
a3cdf22000
|
Inline the `<<` operator in ParseComponents.hpp
|
2021-08-14 10:45:13 +02:00 |
Username404
|
5c3eecd560
|
Undefine YBCON_VERSION in Yerbacon.hpp
|
2021-08-10 15:48:26 +02:00 |
Username404
|
e9ce6362af
|
Add a DOT token to lex.hpp, and only use the enum characters.
|
2021-08-10 13:54:50 +02:00 |
Username404
|
3b991da962
|
Require Clang 13.0+ in the CMakeLists.txt file, import the tok::type enumeration in lexer.cpp + Parser.hpp, and add [[likely]] attributes to 2 branches of the switch case in lexer.cpp.
|
2021-08-09 10:58:11 +02:00 |
Username404
|
3c703e55b5
|
Rename the findByName method to findReferenceByName, and add a findReferencesById method.
|
2021-08-08 23:44:42 +02:00 |
Username404
|
9871cc66c7
|
Add a Reference structure to the StandardComponents namespace.
|
2021-08-08 22:53:29 +02:00 |
Username404
|
43136672bd
|
Remove the ParseComponents constructor declaration and make NamedIdentifier.name a const variable again
|
2021-08-08 22:51:49 +02:00 |
Username404
|
e8b2f90263
|
Return pointers in PareTree.findById() and return references in ParseTree.findByName().
|
2021-08-08 16:23:46 +02:00 |
Username404
|
dd223026a0
|
Fix the findByName function.
|
2021-08-08 14:59:47 +02:00 |
Username404
|
fa546865a0
|
Use runtime type information in ParseComponents.hpp.
|
2021-08-08 14:38:21 +02:00 |
Username404
|
c23d88e0eb
|
Add a return type to the ParseTree "<<" operator.
|
2021-08-07 13:33:13 +02:00 |
Username404
|
2a5df0bb32
|
Put the #ifdef directives before the case statements in Target.hpp to avoid issues.
|
2021-08-07 11:41:04 +02:00 |
Username404
|
2f853fe797
|
Add unsigned short values to the tok::type enum and move the parseString function to misc.hpp.
|
2021-08-06 19:12:28 +02:00 |
Username404
|
328a073d50
|
Add a "dollar sign" token to lex.hpp and use it in lexer.cpp
|
2021-08-05 00:03:50 +02:00 |
Username404
|
e3804aa342
|
Make the class names constant in ParseComponents.hpp.
|
2021-08-01 13:02:57 +02:00 |
Username404
|
34777acc74
|
Rename the variable containing the name of classes in StandardComponents::Class, nest the Constructor structure in it and remove StandardComponents::ClassBody.
|
2021-07-31 21:17:57 +02:00 |
Username404
|
4512909b23
|
Don't break in the ADDTARGET macro of Target.hpp, and define class names of Py.hpp, Lua.hpp and Js.hpp to use them in Target.hpp.
|
2021-07-31 18:56:17 +02:00 |
Username404
|
ac195d413b
|
Undefine the ADDTARGET macro after the switch statement in Target.hpp
|
2021-07-31 18:38:57 +02:00 |
Username404
|
bf5ca80c4d
|
Add a Macro to Target.hpp and check for a std::threads implementation in Yerbacon.hpp.
|
2021-07-31 16:47:00 +02:00 |
Username404
|
905e7e7e82
|
Add lexing and parsing exceptions and parse = and #=
|
2021-07-29 17:35:35 +02:00 |
Username404
|
3265e5f374
|
Remove transpile() from the misc.hpp header
|
2021-07-10 11:05:14 +02:00 |
Username404
|
1bfb4cb54b
|
Add arguments.hpp, remove a few useless files, and add a library target to the CMakeLists.txt file.
|
2021-07-10 11:03:15 +02:00 |
Username404-59
|
db14d469bd
|
Ad a warning in Yerbacon.hpp that shows up when YBCON_VERSION isn't already defined.
|
2021-07-07 20:06:18 +02:00 |
Username404-59
|
b7eb32c636
|
Handle token vectors with less than 2 values in the Parser::parseVector() method.
|
2021-07-07 17:40:04 +02:00 |
Username404-59
|
de24219fca
|
Define the two reference variables in one line in the loop of Parser.hpp.
|
2021-07-06 20:57:20 +02:00 |
Username404-59
|
b82faeb399
|
Substract 1 to the lexed vector's size in Parser.hpp to avoid getting out of bounds because of the next reference.
|
2021-07-06 20:49:28 +02:00 |
Username404-59
|
07ca24c610
|
Move the YBCON_VERSION redefinition to Yerbacon.hpp.
|
2021-07-06 17:29:26 +02:00 |
Username404-59
|
3359dc7649
|
Add a Yerbacon header (+ namespace) and move the getVersion function into it.
|
2021-07-06 15:43:52 +02:00 |
Username404
|
9d36279f95
|
Remove the useless object copy in Parser.hpp.
|
2021-07-03 22:59:03 +02:00 |
Username404
|
f308ad9da0
|
Remove the "previous" reference in Parser.hpp and start the iteration on lexed tokens at 0 instead of 1.
|
2021-07-03 22:32:45 +02:00 |
Username404
|
3ce905d602
|
Remove a few useless newlines in header files
|
2021-07-03 21:57:02 +02:00 |
Username404
|
077f95b36b
|
Begin the parser
|
2021-07-03 21:54:12 +02:00 |
Username404
|
995684799d
|
Replace Targets.hpp with Target.hpp and add language-specific headers
|
2021-07-03 11:11:36 +02:00 |
Username404
|
5de2a28f93
|
Add a Targets.hpp file and shorten MainTranspile.cpp.
|
2021-06-25 20:58:23 +02:00 |
Username404-59
|
c5d33fd480
|
Add support for multiple input files
|
2021-06-10 16:29:54 +02:00 |
Username404-59
|
a75cbeb129
|
Remove useless inlined functions in ParseComponents.hpp
|
2021-06-10 13:47:07 +02:00 |
Username404-59
|
76e168fe58
|
Add a namespace to ParseComponents.hpp.
|
2021-04-25 16:13:17 +02:00 |
Username404-59
|
937d393aa5
|
Remove StandardComponents.hpp.
|
2021-04-25 16:02:28 +02:00 |
Username404
|
85c155fc3b
|
Remove a parameter from the setOutputFileContent function and remove a variable in the main function.
|
2021-04-24 17:58:12 +02:00 |
Username404-59
|
829e53080c
|
Add a default constructor to a struct in StandardComponents.hpp.
|
2021-04-01 19:22:18 +02:00 |
Username404-59
|
9ade88b6aa
|
Make the lex function return a value instead of a reference.
|
2021-04-01 16:20:14 +02:00 |
Username404-59
|
c190e308f8
|
Remove separator tokens, and move a boolean variable.
|
2021-04-01 15:32:31 +02:00 |
Username404
|
32a9c2b0d1
|
Make the "<<" operator call the right function in the ParseTree class.
|
2021-03-27 11:13:11 +01:00 |
Username404-59
|
810c94752f
|
Remove a useless "this" in ParseComponents.hpp.
|
2021-03-25 21:18:48 +01:00 |
Username404-59
|
9869f73e35
|
Use a reference as the parseString function's parameter instead of a unuseful pointer.
|
2021-03-25 21:15:21 +01:00 |
Username404-59
|
1413124530
|
Rename the comp namespace to StdComponents.
|
2021-03-20 10:38:33 +01:00 |
Username404-59
|
60f88896a4
|
Replace an #include directive in src/headers/lex.hpp.
|
2021-03-19 13:53:53 +01:00 |
Username404-59
|
c362f422cd
|
Don't return a reference in the getCompCount method.
|
2021-03-19 13:16:35 +01:00 |
Username404
|
38eea2c73d
|
Complete the addAll method.
|
2021-03-18 21:22:41 +01:00 |
Username404
|
29f0fafe31
|
Make the subComponents vector mutable, make some functions const and add private methods to ParseTree to make creation of const objects possible.
|
2021-03-18 14:07:23 +01:00 |
Username404
|
28175f2d96
|
Add a new constructor to ParseTree, and make the compCount variable mutable.
|
2021-03-18 14:04:57 +01:00 |
Username404-59
|
f32f8abc5c
|
Remove useless comments in the beginning of each C++ file.
|
2021-03-17 13:00:22 +01:00 |
Username404-59
|
80510909f1
|
Add a StandardComponents.hpp file.
|
2021-03-06 22:00:07 +01:00 |
Username404-59
|
11b92f7346
|
Make the argument of parseString a const reference.
|
2021-03-05 14:41:46 +01:00 |
Username404-59
|
2fe59c9c43
|
Update ParseCompnents.hpp.
|
2021-03-05 11:34:02 +01:00 |
Username404-59
|
24195f9a6c
|
Return a reference with the ParseTree::getComponents() method.
|
2021-03-04 15:59:06 +01:00 |
Username404-59
|
5972f0ef4c
|
Add a (definetly incomplete) ParseComponents.hpp file and move the extern declarations of main.cpp to misc.hpp.
|
2021-03-04 11:18:11 +01:00 |
Username404-59
|
6d2c23bb39
|
Add a misc.hpp file.
|
2021-03-03 19:47:25 +01:00 |
Username404-59
|
45cbe5b9e2
|
Lex the entire strings.
|
2021-02-22 19:42:20 +01:00 |
username404
|
34c3cfb041
|
Hidden git history due to a license change.
|
2021-02-12 15:07:03 +01:00 |