Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Переезд на паттерн "Посетитель" #4

Merged
merged 176 commits into from
Jul 20, 2024

Conversation

Stepami
Copy link
Owner

@Stepami Stepami commented Jul 28, 2022

Текущая реализация абстрактного синтаксического дерева требует перехода к указанному паттерну.

@github-actions
Copy link

github-actions bot commented Aug 5, 2022

File Coverage Branches Missing
All files 42% 37%
HydraScript.Lib.BackEnd.AddressedInstructions 90% 85% 23 82
HydraScript.Lib.BackEnd.Instructions.WithJump.Goto 81% 100% 9 14-15
HydraScript.Lib.BackEnd.Instructions.WithAssignment.Simple 32% 16% 32-48 58-66 77-84 86-90
HydraScript.Lib.BackEnd.Instructions.WithAssignment.ComplexData.Write.DotAssignment 68% 50% 22
HydraScript.Lib.BackEnd.Instructions.WithAssignment.ComplexData.Write.IndexAssignment 93% 100% 22
HydraScript.Lib.BackEnd.Instructions.WithAssignment.ComplexData.Read.DotRead 0% 100% 11-28
HydraScript.Lib.BackEnd.Instructions.WithAssignment.ComplexData.Read.IndexRead 0% 100% 11-26
HydraScript.Lib.BackEnd.Addresses.HashAddress 70% 50% 17
HydraScript.Lib.BackEnd.Addresses.Label 69% 50% 17

Minimum allowed coverage is 20%

Generated by 🐒 cobertura-action against 8154d4d

# Conflicts:
#	Interpreter.Lib/IR/Ast/Impl/AbstractSyntaxTree.cs
#	Interpreter.Lib/IR/Ast/Nodes/AbstractSyntaxTreeNode.cs
#	Interpreter.Lib/IR/Ast/Nodes/Visitors/InstructionProvider.cs
#	Interpreter.Lib/IR/Ast/Nodes/Visitors/SemanticChecker.cs
@Stepami Stepami linked an issue Sep 19, 2022 that may be closed by this pull request
@Stepami
Copy link
Owner Author

Stepami commented Oct 3, 2022

В процессе рефакторинга стало ясно, что нужна новая система хранения инструкций, поскольку не ясно, как при их создании задавать им адрес

@Stepami
Copy link
Owner Author

Stepami commented Oct 4, 2022

При этом механизм адресации должен быть независимым. То есть само хранилище инструкций назначает адреса, а не поставщик вроде AST

# Conflicts:
#	Interpreter.Lib/IR/CheckSemantics/Types/Type.cs
* initial of the branch

* контракт адреса

* Переезд на .NET 7 (#24)

* обновление sdk в проекте

* обновление sdk в ci

* переход на json raw string literal

* обновление nuget пакетов

* Генерация отчёта о покрытии на уровне конфигурации проекта

coverlet-coverage/coverlet#1391

* Генерация отчёта о покрытии на уровне конфигурации проекта

coverlet-coverage/coverlet#1391

* versioning

* Update Readme.md

* draft алгоритма работы коллекции

* Использование последних наворотов шарпа (#26)

* versioning

* enabling implicit usings (#25)

* local scoped namespaces (#27)

* after merge

* разработка алгоритма вставки в коллекцию

* пакетная вставка

* доработка алгоритма вставки

* индексатор

* прямая итерация над коллекцией

* важная доработка вставки - сгенерированный адрес проставляется инструкции, больше не требуется создавать адрес для создания инструкции

* переименовал сущность адреса

* доработка массовой вставки

* алгоритм удаления инструкции

* unit tests

* more tests
This reverts commit ef97623.
@Stepami Stepami merged commit 03d6454 into master Jul 20, 2024
4 checks passed
@Stepami Stepami deleted the feature/visitor-net branch July 20, 2024 00:26
@github-actions github-actions bot locked and limited conversation to collaborators Jul 20, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Architecture BackEnd Working on backend of the interpreter IR Working on intermediate representation of the interpreter
Projects
None yet
1 participant