Вверх ↑
Ответов: 1841
Рейтинг: 369
#1: 2015-12-19 11:55:09 ЛС | профиль | цитата
На сегодняшний день, реализовано 95% функционала CGT.
При проведении тестов, удалось собрать несколько простых схем пакета Delphi и CNET через свою модель данных.
Ещё много чего придётся доработать или переработать, но главное уже есть результаты
Однако, возникла серьёзная проблема при работе с Delphi кодогенератором...
Проблема заключается в том, что во многих местах при генерации кода, используется структура:
TCGrec = object
MainForm:string;
Vars,Units,IBody,Dead,RUnit:PStrList;
PrInt,PrImp:PStrList;
procedure Clear;
end;
После длительных и сложных экспериментов, мне так и не удалось воспроизвести класс TStrList (KOL), который кроме того, ещё и наследуется от TObj.
Так что, мне пришлось принять решение приостановить работу над совместимостью модели с Delphi кодогенератором, пока в нём используется структура TCGrec...
В дальнейшем, проект HiAsm_Interface будет совместим только с RTCG и FTCG.
В качестве тестового пакета, теперь будет использоваться CNET.
------------ Дoбавленo в 11.19:
Ну вот.
Модель данных соответствует HiAsm4 на ~99%.
Тестовый кодогенератор со своей моделью данных и эмулятором CGT полностью проходит все тесты (которые и на оригинальном работают :wink из директорий CNET\Example: Arrays, Controls, graphics, MultiThread, tests.
Пока все тесты проводились вручную с привлечением автоматических средств сравнения лога сборки, но в дальнейшем это можно будет полностью автоматизировать.
Дальнейшие действия:
1) Оптимизация и рефакториг.
2) Переписать описание всех функций CGT с учётом точной информации об оных.
3) Реализация сериализатора модели, для возможности выгрузки/загрузки данных.
4) Подключить модель к среде HiAsm Open.

карма: 1
0