Commit graph

2034 commits

Author SHA1 Message Date
Mikhalkovich Stanislav 58f26d469d перекомпиляция 3.10.3.3611 2025-02-18 22:28:13 +03:00
Mikhalkovich Stanislav 41dfb6f187 [] - преобразование во все контейнеры
GraphABCHelper - теперь ABCObjects работает под Линукс

School исправлен согласно последним веяниям []
2025-02-07 21:41:01 +03:00
Mikhalkovich Stanislav 8fbd7fdfc3 3.10.3
faststrings
EmptyCollection и преобразование ее в List, Dictionary
t: (real,real) := (1,2)
2025-01-26 23:42:48 +03:00
Mikhalkovich Stanislav bba132bd5d Поправил справку по функции 2025-01-22 09:14:44 +03:00
Mikhalkovich Stanislav d45b782a7b Rename PABCSistem in test suite 2025-01-04 18:45:07 +03:00
Mikhalkovich Stanislav 874ddebad3 Поправил грамматику []
Теперь нельзя в режиме ## использовать атрибуты

Зато можно [1,2,3].Print
2024-12-14 21:00:38 +03:00
Mikhalkovich Stanislav db9679d89f Закончил превращение синтаксиса [] по умолчанию в массивы 2024-12-10 10:59:20 +03:00
Ivan Bondarev 45fdde24b4 #3229 2024-12-08 18:08:00 +01:00
Mikhalkovich Stanislav 7906d73da3 Небольшие изменения в реализации операций с множествами 2024-12-03 14:25:37 +03:00
Mikhalkovich Stanislav 087591c7b6 3.10.1
Coords - доработки

Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки
2024-11-27 11:37:07 +03:00
Mikhalkovich Stanislav d268d4f83b NSToBytes переделал с исключением 2024-11-21 22:24:07 +03:00
Mikhalkovich Stanislav 206289c6a7 Везде заменил _hs на hs в NewSet
Убрал вызовы методов расширений NewSet в PABCSystem.pas

Убрал var в operator +
2024-11-19 20:23:03 +03:00
Mikhalkovich Stanislav d8262078f6 Исправление мелких ошибок NewSet
Все тесты проходят.

Проблема, которая остаётся - в режиме ускорения такие программы падают:

begin
  var s: set of byte;
  Print(s = [1]);
end.

Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение
2024-11-19 13:56:47 +03:00
Mikhalkovich Stanislav f8819665ba NS2 2024-11-16 10:56:11 +03:00
Mikhalkovich Stanislav 03be5bd931 Переставил operator:= в NewSet 2024-11-13 22:13:41 +03:00
Mikhalkovich Stanislav 82776f3c77 NewSet - много мелких исправлений.
Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll
2024-11-09 12:18:19 +03:00
Mikhalkovich Stanislav fbd63efa89 NewSets
Некоторые тесты надо исправить
2024-11-03 16:59:48 +03:00
Ivan Bondarev 746c4ae2c2 #3221 2024-10-31 21:00:42 +01:00
Ivan Bondarev 1e4a811e04 test for #3219 2024-10-30 20:42:59 +01:00
Mikhalkovich Stanislav 0c773a7ecb tree.xml с парой новых узлов для Питона 2024-10-16 12:04:33 +03:00
Mikhalkovich Stanislav 53b3fd0881 Добавил временное преобразование от array of T в set of T 2024-10-09 14:09:01 +03:00
Mikhalkovich Stanislav 79f9ab73a0 PT4_32 2024-10-05 15:33:20 +03:00
Mikhalkovich Stanislav 11981dbf47 IndexMinBy, IndexMaxBy
MinBy, MaxBy - более эффективная реализация
GraphWPF - SaveToClipboard
2024-09-25 11:53:02 +03:00
Ivan Bondarev 3eb1d2bd85 #3197 2024-09-22 17:42:09 +02:00
Ivan Bondarev 20edd487e3 #3204 2024-09-22 12:39:03 +02:00
Mikhalkovich Stanislav 7debbe702a Критическое обновление LightPT 2024-09-21 14:29:38 +03:00
Mikhalkovich Stanislav 40335b873e LightPT - OutputListIsClearedFromSpaces := False;
Coords - DrawLine
2024-09-20 22:58:46 +03:00
Mikhalkovich Stanislav 078281db17 coords suite 2024-09-19 22:42:44 +03:00
Mikhalkovich Stanislav 8d51f999a5 Автоклассы - разрешение наследования от классов без полей
Модуль Coords
2024-09-19 20:28:28 +03:00
Mikhalkovich Stanislav 8f7e92d418 Turtle переделал на паттерн Команда 2024-09-16 08:25:43 +03:00
Mikhalkovich Stanislav 790fba67b8 3.10.0 2024-08-27 17:56:09 +03:00
Mikhalkovich Stanislav 7face043cf ToSet 2024-08-26 09:11:08 +03:00
Mikhalkovich Stanislav e456ad528e 3.9.0.3530 2024-08-24 23:13:57 +03:00
Mikhalkovich Stanislav 7548142623 1. Глобально.
SetDecimalSeparator(',')
SetNumberFormat(DecimalSeparator := ','  и куча других параметров)

s.ToReal(nfi)
s.ToReals(nfi)
StrToReal(nfi)
StrToFloat(nfi)
FloatToStr(nfi)

var nfi := NumberFormat(DecimalSeparator := ',')

s.ToReal(DecimalSeparator := ',')
s.ToReals(DecimalSeparator := ',')
StrToReal(DecimalSeparator := ',')
2024-08-24 14:27:53 +03:00
Mikhalkovich Stanislav ae2e26acf8 PT4 - новые dll файлы старых заданий серий A 2024-08-23 19:33:55 +03:00
Ivan Bondarev b9fd59a840 #2830 2024-08-13 15:08:44 +02:00
Ivan Bondarev 4f0b0f8ba0 #3194 2024-08-13 14:43:49 +02:00
Ivan Bondarev e3ee0fed4c #3097 2024-08-13 13:49:30 +02:00
Ivan Bondarev d396c4a9fe #3178 2024-08-13 10:40:23 +02:00
Ivan Bondarev 0d846d2335
Merge pull request #3170 from samuraiGH/ForeachResolver-rework
Foreach resolver rework
2024-08-12 15:24:11 +02:00
Mikhalkovich Stanislav e91e353984 Обновленный модуль Turtle.pas 2024-08-11 15:21:29 +03:00
Mikhalkovich Stanislav 1da2b524a6 School PrimeDivisors 2024-08-06 19:34:10 +03:00
Mikhalkovich Stanislav 64acde6460 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)
School - IsPrime(n)
2024-07-31 18:21:04 +03:00
Mikhalkovich Stanislav c4fd47128b Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
Перегенерирована справка
2024-07-30 22:56:03 +03:00
Mikhalkovich Stanislav ca141804c7 Обновление School 2024-07-19 16:04:49 +03:00
Mikhalkovich Stanislav a8b7dc8be7 Пока закомментировал превращение множеств в массивы 2024-07-19 13:01:43 +03:00
Mikhalkovich Stanislav 8c22930a8c Добавлена
class function operator implicit<T>(s: array of T): TypedSet;

И поправлены кое-какие условия при неявных приведениях типов. Но видимо они никогда не работают
2024-07-18 22:23:39 +03:00
Mikhalkovich Stanislav 0fbfebb379 fix #3184 2024-07-17 11:16:59 +03:00
Mikhalkovich Stanislav b8fec95599 Большое изменение в Dictionaries
1 to 2 - новый оператор в стиле Котлина для пары Ключ-Значение
Pair - синоним KV. KV - не запоминается
Теперь:
  d := Dict(1 to 2, 3 to 4)
   или
  d := Dict(Pair(1,2),Pair(3,4)

Кроме того
Новые конструкторы
  d := Dict(d1) - копия
  d := Dict(keys,values)
d.Update(d1)
d + d1
d += d1
d + pair
d - Seq(ключ)
d -= Seq(ключ)
2024-07-15 13:50:11 +03:00
Mikhalkovich Stanislav b086568133 err 0540 0541 поправил 2024-07-08 12:27:44 +03:00
Ivan Bondarev af2bc0fda8 #3165 2024-07-07 11:17:26 +02:00
Ivan Bondarev 02aaaccdd6 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet 2024-07-04 19:19:46 +02:00
Ivan Bondarev 9d3e2db5ec #3164 2024-07-04 19:19:37 +02:00
Mikhalkovich Stanislav 7f988c9bb2 3.9.0.3500
Хороший коммит )
2024-07-02 22:07:23 +03:00
Ivan Bondarev 33e8b383be #3172 2024-07-02 20:49:12 +02:00
Mikhalkovich Stanislav 67aa35b9dc Поправлен LightPT
Упрощены TasksArr.pas TasksMatr.pas TasksStr.pas
2024-07-01 21:06:54 +03:00
samuraiGH 7d66f26d4f cleanup and more tests 2024-07-01 00:16:43 +03:00
samuraiGH fb3eeeb28b fix tests 2024-06-29 16:26:35 +03:00
samuraiGH 4fd020d084 adding tests 2024-06-28 17:21:00 +03:00
Mikhalkovich Stanislav 008a2eddfe RobotField - try в блоке создания 2024-06-27 13:39:13 +03:00
Ivan Bondarev 31975754da
Merge pull request #3156 from SunSerega/fix-3155
Исправление #3155
2024-06-24 20:42:33 +02:00
Sun Serega e8ea9d7b9a
Add use test 2024-06-23 21:56:36 +02:00
Ivan Bondarev 2007fd155c #3152 2024-06-23 14:21:12 +02:00
Sun Serega d633933833
add tests 2024-06-22 23:06:58 +02:00
Mikhalkovich Stanislav 73369527c8 3.9.0.3494 2024-06-22 19:44:00 +03:00
Mikhalkovich Stanislav a923c0b6c6 Убрал из грамматики узлы await - случайно оставались 2024-06-17 17:01:46 +03:00
Mikhalkovich Stanislav cf9a664f02 s.ToLines
RenameDirectory
2024-06-17 09:54:12 +03:00
Mikhalkovich Stanislav 41177e7bcd del doc 2024-06-15 19:25:19 +03:00
Ivan Bondarev 8bddc9e62a #3123 2024-06-09 19:35:35 +02:00
Ivan Bondarev e5f60689cd #3125 2024-06-09 12:30:20 +02:00
Ivan Bondarev b844e02ff5 revert #3125 2024-06-09 12:10:43 +02:00
Ivan Bondarev dbf22ca9e8 #3125 2024-06-09 12:03:39 +02:00
Ivan Bondarev acab4c7c01 #3091 2024-06-09 10:50:26 +02:00
Mikhalkovich Stanislav 8a02d07fc3 3.9.0.3482 2024-05-18 00:05:32 +03:00
AlexanderZemlyak a6a25d955d
Preprocessor removal (#3113)
* Remove preprocessor

* Delete preprocessor localization files

* Clean up code

* Remove adding directive in EXCLUDETEXT section

* Fix directive adding in EXCLUDETEXT

* Remove preprocessor leftovers

* More clean up

* Rename preprocessor to ifdef_directive

* Fix building tree for formatter variable assigning

* Restore convert4.exe

* Rework adding directive in EXCLUDETEXT

Более логично будет все-таки так.
2024-05-09 19:04:31 +03:00
Mikhalkovich Stanislav 38c4901787 DrawMan исправления падения при запуске 2024-05-08 23:44:49 +03:00
Ivan Bondarev 8120fb9d7a Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet 2024-05-07 22:04:11 +02:00
Ivan Bondarev bff1425ede fixed semantic intellisense 2024-05-07 22:04:03 +02:00
Mikhalkovich Stanislav 443ed6d3d7 ObjectToString - убрал подчеркивание
TypeName - убрал артефакты реализации в implementation и тесты, это использующие
2024-05-07 12:19:23 +03:00
Mikhalkovich Stanislav efafd27ffb Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Configuration/GlobalAssemblyInfo.cs
#	Configuration/Version.defs
#	Localization/DefaultLang.resources
#	Release/pabcversion.txt
#	ReleaseGenerators/PascalABCNET_version.nsh
2024-05-05 23:54:40 +03:00
Mikhalkovich Stanislav 27fc10ab0f Странные комментарии к TypeName
LightPT - SetMessagesOn
2024-05-05 23:51:09 +03:00
Vladislav Krylov 1daa515b4e
Интерфейс семантических проверок + делегат на проверку, является ли файл модулем (#3112)
* changes to fit multi semantic analyzer architecture

* Added CheckIfParsingUnit delegate to Compiler
2024-05-05 18:12:50 +03:00
AlexanderZemlyak acb1be8c92
Directives fixes (#3110)
* Unify directive errors

* Add new quotesAreSpecialSymbols field to DirectifeInfo

* Rewrite directive parsing and checks

* Delete R+ directive from pascal tests
2024-05-05 18:12:35 +03:00
Sun Serega 6612fac1c4
cleanup (#3107) 2024-05-04 22:20:40 +03:00
AlexanderZemlyak efb4a4338f
New checks for directives added (#3099)
* Extract base classes from ParserTools (local) and GPPGParserHelper

* Fix string resources error

* Extract base class for unexpected token error

* Update ParserTools project file

* Add comments for compiler directives usages in compiler

* Add directives checks

* Move string constants to new project

* Implement scalable directives checks

* Remove known directives from compiler

* Fix PABCSystem namespace error

* Allow region and endregion with no params

* Allow parameters to endif directive

* Delete directive parameters extension checks

* Replace error with warning for uknown directive case

* Fix generate native code (semantic rule) assigning

* Improve error messages for directives

* Rename RunParseThread to SwitchOnIntellisence

Для отладки может требоваться отключение Intellisence на уровне кода. Для понятности метод назван SwitchOnIntellisence.

* Resolve merge conflicts

* Add new compiler errors for unsupported target framework and output file type

* Add documentation to directives checks

* Fix directives check loop
2024-05-04 20:21:50 +03:00
Sun Serega 769212192f
TypeName: Handle tuples (#3106) 2024-05-04 14:08:21 +03:00
Sun Serega dfaef32384
TypeName: Improved nested generics (#3104)
fix #3103
2024-05-03 21:31:58 +03:00
Mikhalkovich Stanislav 99845ad152 fix #3102 2024-04-29 23:02:34 +03:00
Mikhalkovich Stanislav 4eb6462fd9 3.9.0.3463 2024-04-26 00:40:48 +03:00
Sun Serega ca1700846d
Исправление TypeToTypeName для энумов (#3094)
* fix `TypeToTypeName` for enums

* use existing test
2024-04-23 21:32:13 +03:00
Mikhalkovich Stanislav e0085ece15 3.9.0.3461 2024-04-23 21:13:01 +03:00
Mikhalkovich Stanislav 1e66c4d740 mre.Set(); в GraphABC.pas
(ttt[0].sym_info as var_definition_node).type = from0.type; В Assign.cs
2024-04-22 22:41:12 +03:00
Mikhalkovich Stanislav d61d7fe017 Zip вместо ZipTuple 2024-04-14 20:15:34 +03:00
Ivan Bondarev 08c5c765b7 #3080 2024-04-14 14:14:46 +02:00
Ivan Bondarev cbe0f60055 read1.pas 2024-04-14 12:02:47 +02:00
Ivan Bondarev 7e8dd32b4b read1.txt 2024-04-14 11:48:46 +02:00
Ivan Bondarev c00a0f2c85 fix in read 2024-04-14 11:10:22 +02:00
Mikhalkovich Stanislav 813c7aece7 New version 2024-04-07 20:35:51 +03:00
Sun Serega 2472de3109
Улучшения TypeName и _ObjectToString (#2655)
* TypeName+ObjectToString changes

* test

* cleanup

* 32-битные тесты падают из-за "operator+="???

И только в тесте, а в самом PABCSystem он работает

* sequence cleanup and tests

* cleanup

* prop error output

* Порядок перегрузок _ObjectToString и ерегрузки для TextWriter
2024-04-05 00:03:38 +03:00
Mikhalkovich Stanislav 0d3ca8cdc4 dict.GeT(key,default) 2024-04-01 19:27:58 +03:00