Open
Conversation
- Added CB and updated RFASM statements in Crimson ANTLR - More verbose error handling in Flattener and JumpEqualBStatement - FunctionCStatement Name property now correctly gets and sets backing property in Header - Converted NotImplementedException stubs to CommentBStatement stubs
- Removed HeapBStatement - Added Size to SetBStatement
- Fixed AssemblyCStatement - Fixed BasicCStatement - Created ArbitraryBStatement - Updated CB formatting
- RegisterBStatement - StackBStatement + Push/PopSfBStatement + RegSetBStatement
+ FunctionCallCStatement target now linked correctly - Outdated Crimson.md
Scopes work now yay! (At least I think they do and the compilation spits out a .CBA which looks kinda like what I had before all these scope shenanigans) + IHasScope (Function, If, Else, While) > More readable ToStrings for Library, Scope > More verbose error handling for LinkerHelper + LinkerHelper now delegates finding functions to the Scope. + Scope can search UP its family tree for functions + ScopeVisitor now adds imports to Scopes
Only 3 months late...
+ Structure Fraction Doesn't do much right now but will be nice to deal with
+ structure keyword - package keyword - background colour for numbers
> Corrected void to null in console.crm > Added scopes to Stack.md + Structure/Rawtype/ArrayCrimsonType > Overhauled all ValueCTokens + Scope.FindStructure(structureName) + DataWidth option > Currently overhauling FunctionCallCStatement > FunctionCStatement.ReturnType moved to Header
This is now the same as in Crimson.
> Corrected missing brackets and wrong name type in grammar parameter rule > Corrected syntax errors in heap.crm and utils.crm
> '<' and '>' are making the Notepad ++ highlight things it shouldn't, so they've temporarily been replaced by '<<>' and '<>>'
> Implemented ScopeVariableCStatement > ScopeVisitor.VisitScopeVariableStatement/Declaration now returns non-null + Null-checking for Scope.AddStatement (why wasn't this checked before?)
Don't worry, I have a plan...
I think that I'll need to ship a migrated database with the product?
Trying to adhere to Clean Architecture
- Replaced Structures with Masks (although the examples have some memory/pointer-management errors in them) - Replaced old class hierarchy for Values and Statement with interfaces (the classes were adding nothing and getting in the way of adding new features)
+ Berry + FunctionEntry + FunctionEntry.Converter + GlobalVariableEntry > Moved Compiler readme.md to Compiler/API/Berry because it only talked about Berries anyway
+ Documentation for compilation stages in Compiler/readme.md
> General documentation update + BigBadExample.crm
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Also some updates to Crimson but they don't work rn so ignore them (the documentation is why im pulling) xoxoxx