pascalabcnet/LanguagePlugins/SPython/SPythonParserKrylovMovchan/SPythonParserYacc.cs
MovchanGitHub 080fca15bb
SPython 1.0 (#3274)
* Squashed commit of the following:

commit 115ed2e1b7b361b35f0b213688ad0838e0bffa69
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Nov 7 10:21:08 2024 +0300

    Add from import Handling

commit bdd3eb785e6c719201104497808e89dc20c4eacc
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sun Nov 3 12:59:29 2024 +0300

    Add 'Import As'

commit e5747aa56e359633be366887d3cf67d1ec054701
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sun Nov 3 11:08:50 2024 +0300

    Add Ident_list to import

commit 9d16fdb341b329adae45dec2bf6db04d8572675f
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sun Nov 3 10:01:13 2024 +0300

    Move Import Handling to Visitor

commit d8a0e8f5ee840e3ff15caafd7a456f91e1f2a962
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Nov 2 18:36:10 2024 +0300

    Rename of Productions Related to Import

commit 71282a457ab0c039a2f42c05249336d92ac76e7a
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Nov 2 18:33:41 2024 +0300

    Move import to Statements

* Add new AST visitors call template

* Add syntax tree parameter

* Add SpecialSyntaxTreeConverter

* Add CollectNamesVisitor

* Read Symbols from Semantic Tree

* Add Visitor Renewaling

* Fix Usage of Standard Libraries

* Update AssignToVarConverterVisitor.cs

* Fix Foreach Node Visitor

* Refactor InterpreterVisitor (alpha version)

* Add Imports Nodes for Declarations

* Rename Method for Sending Object

* Fix Remove in interface_node

* Add ApplyConversionsAfterUsedModulesCompilation method to ILanguage interface

* Rename ApplyConcreteConversions to ApplyConversions

* Squashed commit of the following:

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Move unitNames dictionary to CompilationUnit class

* Implement Spython StringResorces for SyntaxTree Converters

* Move post conversion method to ISyntaxTreeConverter interface

* Override get_system_module in SpythonSyntaxTreeVisitor

* Fix Unit and Function Having Same Name Bug

* Add TimeMeasurements Programs

* Swap Visitors for Supporting New Imports

* Fix Function with Named Parameters Substitution

* Add Error for Using Global

* Fix yyloc Bug and Add SyntaxVisiters Errors

* Move List Desugar from Visiter to Parser (temp)

* Move List Generator Desugaring Back to Visitors

* Add Args after Kvarg Error Message

* Fix Parser and Visitors' Errors Messages

* Moved Examples Programs

* Update Name Substitution Logic

* Squashed commit of the following:

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* feat(bin/LanguageKits/SPython): add more things to installer

* Change get_system_module method visibility (and some more)

* Update SPython language names

* Add CaseSensitive boolean saving in pcu

* Implement case sensitive symbol table

* Fix Create function not found error

* Delete try/catch block in CollectNamesFromUsedUnits to make code cleaner

* Create languageCaseSensitive field in pcu

* Create CompilationArtifacts struct for passing data to ConvertAfterUsedModulesCompilation

* Fix GraphWPF importing problem by dirty workaround !!!

* Squashed commit of the following:

commit 57ff5ef37d04ce8fcac8705c5a693bddf2ecf10e
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Feb 27 12:56:53 2025 +0300

    Fix Global Variables Type Definition

    Основная программа выносится в функцию, определяемой самой первой и first_assignment_defines_type выводит тип глобальных переменных корректно

commit 6f93ae8d6afc1c685d602b85ba6d455d862b35af
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Wed Feb 26 17:33:10 2025 +0300

    Replace same_type_node, Fix Procedure Assignment

commit 52a096394cfdd4d8e4b27ddd36570b45b053c380
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Feb 20 13:59:16 2025 +0300

    Fix Local Scope in If Node

commit a0be5bed7f110314c0e512d28a76e3bd87328f01
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 16:40:50 2025 +0300

    Fix Bug with same_type_node

commit 04fd2b2a6667bf06af02614a2fd30d0b50172a0c
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 16:09:27 2025 +0300

    Fix Assignment for New Variables

commit ea591e243a5a458d6d94e665cec50d9ef60e1a08
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 15:58:45 2025 +0300

    Fix Assignment for Imported Variables in Functions

commit e5d71be7693c527e6f4cd88671503dafa0ac9777
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 15:13:21 2025 +0300

    Fix SPython's Syntax Node Erasion

commit c78649ac7e7883860ce459cb31f9d9e46194f203
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 14:35:53 2025 +0300

    Fix Variables from Module Assignment

commit 4890f7f163a2557bc58d6e9c48cb432c6436a3aa
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 13:36:53 2025 +0300

    Return RetainUsedGlobalVariablesVisitor

commit e5460edf2fae002ccc64d261bbb8fadb27deec12
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 13:05:38 2025 +0300

    Add Errors for Wrong Global Usage

commit e32387e1356cc1e330518c57ab895f89b9de1784
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 12:33:55 2025 +0300

    Update Comments about Syntax Visitors

commit 1f6c7ac2d8c891d582cbe957ed2ad6886de27de1
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Sat Feb 15 12:27:59 2025 +0300

    Fix Global Variables

    read access for global variables in fuctions by default

commit e840610a25718ba12df144948bdda175cbc8d7c5
Merge: e70cb9914 6c81b45c0
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Fri Feb 14 19:51:38 2025 +0300

    Merge branch 'SPython' into SPython-Context-Change

commit e70cb99145120df29d1ae172d1b00afa8ea5b18f
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Fri Feb 14 19:49:18 2025 +0300

    Return Back Global Keyword

commit 7cf7a24b8f927cad72645e028f0e0ebc47cae328
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Wed Feb 12 13:15:35 2025 +0300

    Fix Merge

commit 89cc4551a0bcdb55eb64d244e35035134e5f6e75
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Wed Feb 12 13:02:06 2025 +0300

    Squashed commit of the following:

    commit 41dfb6f187
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Fri Feb 7 21:41:01 2025 +0300

        [] - преобразование во все контейнеры

        GraphABCHelper - теперь ABCObjects работает под Линукс

        School исправлен согласно последним веяниям []

    commit 79bbbd10ff
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Wed Jan 29 20:18:37 2025 +0300

        removing files for support fx4.0 (#3240)

    commit 88d5c409eb
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Tue Jan 28 20:41:55 2025 +0300

        Рефакторинг PascalABCNET.xshd (#3237)

        * refactoring PascalABCNET.xshd

        * removing extra characters

    commit 8fbd7fdfc3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Jan 26 23:42:48 2025 +0300

        3.10.3
        faststrings
        EmptyCollection и преобразование ее в List, Dictionary
        t: (real,real) := (1,2)

    commit bba132bd5d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 22 09:14:44 2025 +0300

        Поправил справку по функции

    commit 1bd21857cc
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 8 18:46:51 2025 +0300

        Teacher Control Plugin - возможность задать server.dat

    commit 0848a1b796
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 22:54:38 2025 +0300

        Исправление автоформатирования []

    commit d45b782a7b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 18:45:07 2025 +0300

        Rename PABCSistem in test suite

    commit c2347e604b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 14:44:51 2025 +0300

        Примеры - устранил неточности

        LightPT - имя сервера вынес в публичную секцию

    commit b68b8da970
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:52:18 2024 +0300

        Примеры Coords1.pas Coords2.pas.pas

    commit 8a9788e6f9
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:06:57 2024 +0300

        Перенес проверку set array на уровень парсера

        Немного поправил Intellisense по наведению для NewSet

        По точке там что то другое работает

    commit 874ddebad3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 21:00:38 2024 +0300

        Поправил грамматику []

        Теперь нельзя в режиме ## использовать атрибуты

        Зато можно [1,2,3].Print

    commit 080fb487e1
    Merge: a53dcd9ed a484b0e82
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:24 2024 +0300

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit a53dcd9ed2
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:16 2024 +0300

        SF Prm Cmb для строк

    commit a484b0e82d
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Thu Dec 12 13:49:17 2024 +0200

        fix (#3231)

    commit 6ef11f249c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 11:05:45 2024 +0300

        3.10.2

    commit db9679d89f
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 10:59:20 2024 +0300

        Закончил превращение синтаксиса [] по умолчанию в массивы

    commit 45fdde24b4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 18:08:00 2024 +0100

        #3229

    commit 494b47624d
    Merge: 5875b9929 7906d73da
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:42:07 2024 +0100

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit 5875b99296
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:41:53 2024 +0100

        platformtarget native - .NET 9.0

    commit 7906d73da3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 3 14:25:37 2024 +0300

        Небольшие изменения в реализации операций с множествами

    commit 087591c7b6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 27 11:37:07 2024 +0300

        3.10.1

        Coords - доработки

        Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

    commit d268d4f83b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Nov 21 22:24:07 2024 +0300

        NSToBytes переделал с исключением

    commit 2bacdc8c28
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 13:20:33 2024 +0300

        Комментарии к NewSet

    commit e917ac8eca
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 12:42:15 2024 +0300

        TypeName для set

    commit 206289c6a7
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 20:23:03 2024 +0300

        Везде заменил _hs на hs в NewSet

        Убрал вызовы методов расширений NewSet в PABCSystem.pas

        Убрал var в operator +

    commit d8262078f6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 13:56:47 2024 +0300

        Исправление мелких ошибок NewSet

        Все тесты проходят.

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

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

        Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

    commit f8819665ba
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 16 10:56:11 2024 +0300

        NS2

    commit 591d9ebe60
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:34:10 2024 +0100

        fix

    commit c6505634f4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:12:33 2024 +0100

        fix

    commit a6564df23c
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 20:52:29 2024 +0100

        fix in new sets

    commit 03be5bd931
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 13 22:13:41 2024 +0300

        Переставил operator:= в NewSet

    commit 96c68f1666
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Nov 12 21:38:07 2024 +0100

        #3223

    commit 82776f3c77
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 9 12:18:19 2024 +0300

        NewSet - много мелких исправлений.

        Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

    commit fbd63efa89
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Nov 3 16:59:48 2024 +0300

        NewSets
        Некоторые тесты надо исправить

    commit 746c4ae2c2
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Thu Oct 31 21:00:42 2024 +0100

        #3221

    commit 350d07326d
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Thu Oct 31 18:35:51 2024 +0100

        #3221

    commit aae9ab408b
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Thu Oct 31 18:25:06 2024 +0100

        #3221

    commit 1e4a811e04
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Oct 30 20:42:59 2024 +0100

        test for #3219

    commit d1a1247ecd
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Oct 30 20:24:16 2024 +0100

        #3219

    commit 13b3071d80
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Mon Oct 28 22:42:17 2024 +0300

        закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

    commit 6d5c18f457
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Oct 24 10:17:48 2024 +0300

        SF XLSX.pas

    commit 0c773a7ecb
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Oct 16 12:04:33 2024 +0300

        tree.xml с парой новых узлов для Питона

    commit 53b3fd0881
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Oct 9 14:09:01 2024 +0300

        Добавил временное преобразование от array of T в set of T

    commit 271d5792ce
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Tue Oct 8 10:00:14 2024 +0300

        Documentation (#3211)

        * Add Compiler documentation

        * Add Intellisense documentation

        * Move documentation folder to root directory

    commit 79f9ab73a0
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Oct 5 15:33:20 2024 +0300

        PT4_32

    commit 0a20c8d32c
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Thu Sep 26 09:02:31 2024 +0200

        Add `.DistinctBy` (#3122)

    commit 11981dbf47
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Sep 25 11:53:02 2024 +0300

        IndexMinBy, IndexMaxBy
        MinBy, MaxBy - более эффективная реализация
        GraphWPF - SaveToClipboard

    commit 3eb1d2bd85
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Sep 22 17:42:09 2024 +0200

        #3197

    commit 20edd487e3
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Sep 22 12:39:03 2024 +0200

        #3204

    commit 7261231c9c
    Merge: 7debbe702 9ab932977
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Sep 22 09:49:58 2024 +0200

        Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

        Fix linux version

    commit 9ab9329771
    Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
    Date:   Sun Sep 22 10:23:18 2024 +0300

        Add new projects in PascalACBNETLinux.sln

    commit 7debbe702a
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Sep 21 14:29:38 2024 +0300

        Критическое обновление LightPT

    commit 40335b873e
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Fri Sep 20 22:58:46 2024 +0300

        LightPT - OutputListIsClearedFromSpaces := False;
        Coords - DrawLine

    commit 078281db17
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Sep 19 22:42:44 2024 +0300

        coords suite

    commit 8d51f999a5
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Sep 19 20:28:28 2024 +0300

        Автоклассы - разрешение наследования от классов без полей

        Модуль Coords

    commit 8f7e92d418
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Mon Sep 16 08:25:43 2024 +0300

        Turtle переделал на паттерн Команда

    commit a6f6d8a90b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Sep 7 23:11:54 2024 +0300

        Правки рейтинга в TeacherPlugin

    commit 2365eb3633
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Sep 7 15:54:15 2024 +0300

        LinkLabel в TeacherControlPlugin

    commit 1835b811ef
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Sep 3 23:51:44 2024 +0300

        MathNet Signed

    commit b23d6df9e9
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Sep 3 23:16:15 2024 +0300

        MathNet.Numerics.dll

    commit 790fba67b8
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Aug 27 17:56:09 2024 +0300

        3.10.0

    commit 1ec4204fd2
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Mon Aug 26 09:20:27 2024 +0300

        `.Batch` cleanup (#3108)

    commit b5e674c311
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Mon Aug 26 09:12:14 2024 +0300

        3_10_0

    commit 7face043cf
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Mon Aug 26 09:11:08 2024 +0300

        ToSet

    commit e456ad528e
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Aug 24 23:13:57 2024 +0300

        3.9.0.3530

    commit 3247469e6d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Aug 24 22:55:27 2024 +0300

        Добавлен DrawPoints в Turtle

        Исправлена ошибка с отображением подписей в Y-координате

    commit 7548142623
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Aug 24 14:27:53 2024 +0300

        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 := ',')

    commit d94885b950
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Aug 24 12:13:09 2024 +0300

        randomElement для строк

        .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

        NumberFormat - функция, возвращающая nfi

    commit ae2e26acf8
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Fri Aug 23 19:33:55 2024 +0300

        PT4 - новые dll файлы старых заданий серий A

    commit 0f8aa6fa3c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Aug 18 17:28:05 2024 +0300

        SetOf как основной синоним HSet

    commit db4b53be20
    Merge: 86852e0a5 b9fd59a84
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Aug 18 16:05:42 2024 +0300

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit 86852e0a59
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Aug 18 16:05:14 2024 +0300

        School - ToBase(number: int64

    commit b9fd59a840
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Aug 13 15:08:44 2024 +0200

        #2830

    commit 4f0b0f8ba0
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Aug 13 14:43:49 2024 +0200

        #3194

    commit e3ee0fed4c
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Aug 13 13:49:30 2024 +0200

        #3097

    commit d396c4a9fe
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Aug 13 10:40:23 2024 +0200

        #3178

    commit 0d846d2335
    Merge: e91e35398 a65a86921
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Mon Aug 12 15:24:11 2024 +0200

        Merge pull request #3170 from samuraiGH/ForeachResolver-rework

        Foreach resolver rework

    commit a65a869211
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Mon Aug 12 15:50:42 2024 +0300

        increasing pcu file version

    commit e91e353984
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Aug 11 15:21:29 2024 +0300

        Обновленный модуль Turtle.pas

    commit c18238df39
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Aug 6 20:18:57 2024 +0300

        3.9.0.3523

    commit 1da2b524a6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Aug 6 19:34:10 2024 +0300

        School PrimeDivisors

    commit 47c61d8b14
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Fri Aug 2 10:48:07 2024 +0300

        New directive to disable linking pascal standard modules (#3186)

        * Add new 'disable standard units' directive and it's processing

        * Refactor InitializeNewUnit function

        * Improve disable standard units directive checks

        * Add null check in programs.cs to avoid error

        * Rename error related to disable standard units directive

        * Add referencing standard net libraries

        * Add checks for duplicates when injecting references

    commit fc3ab96cae
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Fri Aug 2 10:46:40 2024 +0300

        Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

        * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

        Достаточно их аналогов из CompilerOptions.

        * Add recreating CompilerOptions when reloading Compiler

        * Change Rebuild checkbox logic

        * Delete documented units fiels from CompilerInternalDebug

        * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

        This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

        * Exclude HelpBuilder

    commit 64acde6460
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jul 31 18:21:04 2024 +0300

        Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

        School - IsPrime(n)

    commit 3db5709101
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jul 31 10:56:18 2024 +0300

        ZipCartesianFuncs.pas

    commit c4fd47128b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Jul 30 22:56:03 2024 +0300

        Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
        Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
        Перегенерирована справка

    commit 7d66f26d4f
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Mon Jul 1 00:16:43 2024 +0300

        cleanup and more tests

    commit 464dc794a8
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Sun Jun 30 23:31:28 2024 +0300

        cleanup and more comments

    commit 32f126370c
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Sun Jun 30 21:35:06 2024 +0300

        attempt to fix GetEnumerator resolving for Pascal types

    commit fb3eeeb28b
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Sat Jun 29 16:26:35 2024 +0300

        fix tests

    commit 84b0dfe537
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Sat Jun 29 15:49:13 2024 +0300

        fix getting MethodInfo

    commit 5fa4d9fce7
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 22:45:07 2024 +0300

        cold fix set of T resolving

    commit 460ce636ab
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 22:21:06 2024 +0300

        hot fix set of T resolving

    commit 83c2f29ac6
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 21:53:11 2024 +0300

        fix method filtering again

    commit c840a1a47a
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 21:32:41 2024 +0300

        fix type recovery

    commit 2436627fdd
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 19:18:32 2024 +0300

        fixing method filtering

    commit 15a05360a4
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 17:25:39 2024 +0300

        attempt to fix GetEnumerator resolving for compiled types

    commit 4fd020d084
    Author: samuraiGH <anonimajzer3@mail.ru>
    Date:   Fri Jun 28 17:21:00 2024 +0300

        adding tests

* Squashed commit of the following:

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Fix Merge Commit

* Fix Assignment to Imported Variable

* Add Compound Comparison (alpha)

* Fix Compound Comparison False Positive

конструкция '(a == b) == c' теперь не считается CompoundComparison

* Reconstruct NameInterpreterVisiter

* Parser and Visitors Refactoring 1

* Fix Modules

* Parser and Visitors Refactoring 2

* Update RetainUsedGlobalVariablesVisitor

* Update RetainUsedGlobalVariablesVisitor 2

* Add Variable Declaration without InitValue

a: float
a = 1.23

* Add Global Variables in Units

In units all variables defined in outermost scope are global

* Add Template Types (list[int])

* Add Errors for Using PascalABCnet Types

* Add Power Binary Operation

* Fix SourceContext in Parser and ImportToUsesVisitor

* Add pass Statement

* Fix Nested List Generators

* Fix NameCorrectVisitors in Complex Cases

fix in nested dot_nodes and lambda's inside list generator

* Fix IdentArranger for Complex Cases

now it handles correctly cases such as follows:
print(a, b,
    c, d,
       e, f)

* Add Ternary Conditional Operator

* Fix Lexer and New Line Error

* Add End File Token to Fix Errors Positioning

* Fix Errors Positioning

* Move AddForwardDeclarationsVisitor Lower

* Update Comments in StandardSyntaxTreeConverter

* Update Examples

* Fix CompoundComparisonDesugarVisitor

* Update Comments

* Create compound_conditions_example.pys

* Separate ';' and End_Of_Line Token

* Fix Error Line Positioning

* Fix Lexer Error Message with COLON

* Fix Error Positioning

* Fix Colon Error Positionning

* Fix Error Next Token Hints

* Fix Errors with 'in' and 'import'

* Add UnsupportedConstructsVisitor

* Add Error for Using class and lambda

* Refactor IndentArranger

* Add programBeginWithIndentToken

* Squashed commit of the following:

commit 7751fe7e75
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Mar 16 13:28:03 2025 +0300

    generating language res file at build time (#3252)

commit d1fce63d69
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Mar 4 08:38:09 2025 +0300

    Сборка после pr SDK

commit d491e88aa7
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Mar 3 20:34:51 2025 +0300

    migration to new build system (#3241)

    * converting project files into sdk style
    * new build commands
    * adding new dll into nsis
    * removing unused .cs files

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Add units case sensitive search (Not implemented in Intellisense)

* Fix Functions Forward Declarations

* Update Wrong Module Name Error Positionning

* Fix Errors with Global Statements

* Fix Function Before Declaration Usage Error

* Add return_statement

* Add Return Wrong Usage Error

* Errors Hot Fix

* Add Bigint Type

* Squashed commit of the following:

commit 7751fe7e75
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Mar 16 13:28:03 2025 +0300

    generating language res file at build time (#3252)

commit d1fce63d69
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Mar 4 08:38:09 2025 +0300

    Сборка после pr SDK

commit d491e88aa7
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Mar 3 20:34:51 2025 +0300

    migration to new build system (#3241)

    * converting project files into sdk style
    * new build commands
    * adding new dll into nsis
    * removing unused .cs files

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Fix Types Names in Errors

* Update Examples

* Try To Add Python's list[T]

* Add BackSlash Support

* Add ANIM examples

* Fix compilation context instance assigning

* Squashed commit of the following:

commit 771ea7b445
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Apr 6 14:32:17 2025 +0200

    #3230

commit 28a1a03e8d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Apr 6 11:35:09 2025 +0200

    #3251

commit af7abc770b
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Apr 6 08:33:34 2025 +0300

    synchronization of namespaces and folders for TeacherControlPlugin (#3262)

commit aae723b982
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 12:00:04 2025 +0300

    Create default syntax tree converter class (#3216)

    Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева.

commit f9cc90e50f
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Apr 3 11:59:46 2025 +0300

    fix errors (#3260)

commit f85bfad60f
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 11:58:19 2025 +0300

    Intellisense memory leaks fix (#3257)

    * Fix memory leaks found for PABCSystem.pas

    Memory leaks of Interface and Implementation Unit Scopes fixed

    * Change open_files and recomp_files variables type to be Dictionary (not HashTable)

    * open_files Check simplification

    * Move TypeTable.Clear call to CodeCompletion Compile method

commit 7751fe7e75
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Mar 16 13:28:03 2025 +0300

    generating language res file at build time (#3252)

commit d1fce63d69
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Mar 4 08:38:09 2025 +0300

    Сборка после pr SDK

commit d491e88aa7
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Mar 3 20:34:51 2025 +0300

    migration to new build system (#3241)

    * converting project files into sdk style
    * new build commands
    * adding new dll into nsis
    * removing unused .cs files

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Fix DefaultSyntaxTreeConverter

* Update some comments in spython_syntax_tree_visitor

* Configure Intellisense - first step

* DomSyntaxTreeVisitor fixes

* Add implementation for parser methods used by Intellisense

* Add declarations_as_statement visit in DomSyntaxTreeVisitor implementation

* Refactor CodeCompletion.cs

* Fix Intellisense case sensitive units search

* Squashed commit of the following:

commit bb7962ff859946a71ded0df465d024c14559cb04
Merge: 71261ded1 aae723b98
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 12:23:21 2025 +0300

    Merge branch 'master' into intellisense_refactoring

commit 71261ded190a40dcf2301f37b4ac70356cfb35af
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Thu Apr 3 12:16:52 2025 +0300

    Update comments in PascalABCLanguageInformation

commit aae723b982
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 12:00:04 2025 +0300

    Create default syntax tree converter class (#3216)

    Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева.

commit f9cc90e50f
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Apr 3 11:59:46 2025 +0300

    fix errors (#3260)

commit f85bfad60f
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 11:58:19 2025 +0300

    Intellisense memory leaks fix (#3257)

    * Fix memory leaks found for PABCSystem.pas

    Memory leaks of Interface and Implementation Unit Scopes fixed

    * Change open_files and recomp_files variables type to be Dictionary (not HashTable)

    * open_files Check simplification

    * Move TypeTable.Clear call to CodeCompletion Compile method

commit d52ce0d4c86ec1fb6962db33a8dc774b69fddd69
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Thu Apr 3 11:15:02 2025 +0300

    Squashed commit of the following:

    commit 7751fe7e75
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Sun Mar 16 13:28:03 2025 +0300

        generating language res file at build time (#3252)

    commit d1fce63d69
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Mar 4 08:38:09 2025 +0300

        Сборка после pr SDK

    commit d491e88aa7
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Mon Mar 3 20:34:51 2025 +0300

        migration to new build system (#3241)

        * converting project files into sdk style
        * new build commands
        * adding new dll into nsis
        * removing unused .cs files

    commit 1fd348ec3c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Feb 23 20:49:26 2025 +0300

        NSIS New 3.10

        Ярлык в меню Пуск у всех пользователей

    commit 80b7182dc1
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Feb 19 11:50:00 2025 +0300

        _ in names

    commit a2b078960b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Feb 19 10:52:25 2025 +0300

        cnfc2

    commit 58f26d469d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Feb 18 22:28:13 2025 +0300

        перекомпиляция 3.10.3.3611

    commit b78a72977f
    Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
    Date:   Tue Feb 18 22:02:19 2025 +0300

        fix build on mono (#3249)

        * fix build on mono

        * remove local func

        * fix again

    commit c3557e388c
    Author: Nikolay Kuznetsov <adasoft@gmail.com>
    Date:   Sat Feb 15 20:32:46 2025 +0300

        Update GraphABC.pas (#3244)

        1. Быстрая реализация функции FloodFill
        Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

        2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

    commit 9dbac389e1
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Wed Feb 12 13:57:14 2025 +0300

        Add missing projects to pabcnetc.sln (#3247)

    commit 41dfb6f187
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Fri Feb 7 21:41:01 2025 +0300

        [] - преобразование во все контейнеры

        GraphABCHelper - теперь ABCObjects работает под Линукс

        School исправлен согласно последним веяниям []

    commit 79bbbd10ff
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Wed Jan 29 20:18:37 2025 +0300

        removing files for support fx4.0 (#3240)

    commit 88d5c409eb
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Tue Jan 28 20:41:55 2025 +0300

        Рефакторинг PascalABCNET.xshd (#3237)

        * refactoring PascalABCNET.xshd

        * removing extra characters

    commit 8fbd7fdfc3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Jan 26 23:42:48 2025 +0300

        3.10.3
        faststrings
        EmptyCollection и преобразование ее в List, Dictionary
        t: (real,real) := (1,2)

    commit bba132bd5d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 22 09:14:44 2025 +0300

        Поправил справку по функции

    commit 1bd21857cc
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 8 18:46:51 2025 +0300

        Teacher Control Plugin - возможность задать server.dat

    commit 0848a1b796
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 22:54:38 2025 +0300

        Исправление автоформатирования []

    commit d45b782a7b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 18:45:07 2025 +0300

        Rename PABCSistem in test suite

    commit c2347e604b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 14:44:51 2025 +0300

        Примеры - устранил неточности

        LightPT - имя сервера вынес в публичную секцию

    commit b68b8da970
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:52:18 2024 +0300

        Примеры Coords1.pas Coords2.pas.pas

    commit 8a9788e6f9
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:06:57 2024 +0300

        Перенес проверку set array на уровень парсера

        Немного поправил Intellisense по наведению для NewSet

        По точке там что то другое работает

    commit 874ddebad3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 21:00:38 2024 +0300

        Поправил грамматику []

        Теперь нельзя в режиме ## использовать атрибуты

        Зато можно [1,2,3].Print

    commit 080fb487e1
    Merge: a53dcd9ed a484b0e82
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:24 2024 +0300

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit a53dcd9ed2
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:16 2024 +0300

        SF Prm Cmb для строк

    commit a484b0e82d
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Thu Dec 12 13:49:17 2024 +0200

        fix (#3231)

    commit 6ef11f249c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 11:05:45 2024 +0300

        3.10.2

    commit db9679d89f
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 10:59:20 2024 +0300

        Закончил превращение синтаксиса [] по умолчанию в массивы

    commit 45fdde24b4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 18:08:00 2024 +0100

        #3229

    commit 494b47624d
    Merge: 5875b9929 7906d73da
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:42:07 2024 +0100

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit 5875b99296
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:41:53 2024 +0100

        platformtarget native - .NET 9.0

    commit 7906d73da3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 3 14:25:37 2024 +0300

        Небольшие изменения в реализации операций с множествами

    commit 087591c7b6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 27 11:37:07 2024 +0300

        3.10.1

        Coords - доработки

        Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

    commit d268d4f83b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Nov 21 22:24:07 2024 +0300

        NSToBytes переделал с исключением

    commit 2bacdc8c28
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 13:20:33 2024 +0300

        Комментарии к NewSet

    commit e917ac8eca
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 12:42:15 2024 +0300

        TypeName для set

    commit 206289c6a7
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 20:23:03 2024 +0300

        Везде заменил _hs на hs в NewSet

        Убрал вызовы методов расширений NewSet в PABCSystem.pas

        Убрал var в operator +

    commit d8262078f6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 13:56:47 2024 +0300

        Исправление мелких ошибок NewSet

        Все тесты проходят.

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

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

        Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

    commit f8819665ba
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 16 10:56:11 2024 +0300

        NS2

    commit 591d9ebe60
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:34:10 2024 +0100

        fix

    commit c6505634f4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:12:33 2024 +0100

        fix

    commit a6564df23c
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 20:52:29 2024 +0100

        fix in new sets

    commit 03be5bd931
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 13 22:13:41 2024 +0300

        Переставил operator:= в NewSet

    commit 96c68f1666
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Nov 12 21:38:07 2024 +0100

        #3223

    commit 82776f3c77
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 9 12:18:19 2024 +0300

        NewSet - много мелких исправлений.

        Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit 7751fe7e75
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Mar 16 13:28:03 2025 +0300

    generating language res file at build time (#3252)

commit d1fce63d69
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Mar 4 08:38:09 2025 +0300

    Сборка после pr SDK

commit d491e88aa7
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Mar 3 20:34:51 2025 +0300

    migration to new build system (#3241)

    * converting project files into sdk style
    * new build commands
    * adding new dll into nsis
    * removing unused .cs files

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit a11bb9e9c6271e359fde6050e95d98950e946fbd
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Nov 10 19:43:45 2024 +0300

    Fix encoding

commit 2c0fba643e45914b8f5350356e1c24b3c3cf3685
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Nov 10 19:21:54 2024 +0300

    Fix build error

commit f813a4ff99936dabdcfda40ce5beea2ba41aed53
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Nov 10 19:08:44 2024 +0300

    Update intellisense documentation

commit 8414c7ae1d6ed296a86e56975d84949a6e471a25
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Nov 10 19:08:03 2024 +0300

    Another iteration of refactoring in CodeCompletionProvider + comments

commit 340ef9a0e9bc40f7bda0cde8dccb86c94dc6c8cb
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Nov 10 14:51:56 2024 +0300

    Fix GetCompletionDataByFirst behaviour when getting symInfos after uses keyword

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit 8e9e7f94d094e528aeb9bd0db322005b08e31ee3
Merge: ea3c878eb fbd63efa8
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Fri Nov 8 14:47:33 2024 +0300

    Merge branch 'master' into intellisense_refactoring

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit ea3c878eb27a268d50272838a36508511f1096ee
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Oct 27 22:40:40 2024 +0300

    Refactor GetCompletionDataByFirst method

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0ae57063a798ec7dc4979a1cea32371034794907
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Tue Oct 22 12:54:05 2024 +0300

    Replace dollar service character in CodeCompletion by separate boolean (ctrlSpaceAfterDot))

commit 89a02c2867b41cb12020a31867667c89f9fbb848
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Tue Oct 22 10:48:21 2024 +0300

    Extract shift space actions in separate class

commit cb24d274969f67255c7cb253fbc36d25d6aaa2be
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Oct 20 22:54:32 2024 +0300

    Refactor CodeCompletionProvider (first iteration)

commit 10b16014b8e19fac339752466b1733359675a052
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Oct 20 18:14:06 2024 +0300

    Add check that we parsing PascalABC.NET in GetPopupHintText

    Временное решение, нужно будет вынести вторую попытку в интерфейс парсера.

commit 4057884d749788726bc095581d1519ff8fec7037
Merge: d95eab790 0c773a7ec
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Oct 20 17:33:07 2024 +0300

    Merge branch 'master' into intellisense_refactoring

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit d95eab790c41cb2f8ac38be997ca81af30ee22be
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Thu Oct 10 14:14:43 2024 +0300

    Delete other cases of ampersend inserting

commit b2aaa157c1ae1965ae2a20eb3e5454f4df37b1a8
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Oct 9 22:48:37 2024 +0300

    Basic refactoring of GetPopupHintText + delete ampersend inserting

commit 4554bd5581bdf61601e454650a34422c8bf93c0c
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Oct 9 18:56:23 2024 +0300

    Move ValidDirectives field to ILanguageInformation

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit d8b05d3d80500fc10cb964a5ec62c7244e4993f8
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Oct 9 09:53:35 2024 +0300

    Fix inaccuracy in BaseKeywords.cs

commit c45f66baf5a159d07ddc7ded63bad56387799fc1
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Oct 9 09:47:43 2024 +0300

    Manage references in PascalABCLanguageInfo project

commit 342cb23f2eb33948cc7d058e04a10fd4b5c1e2a4
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Oct 9 00:06:25 2024 +0300

    Fix string comparisons and null reference exception

commit 386f59d5fd5b29f010f59194ef1324d23a5651ca
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Tue Oct 8 23:18:53 2024 +0300

    Fix build error

commit 851936f02544879644b3284cf472c8c9c2ea8fa9
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Tue Oct 8 23:12:16 2024 +0300

    Refactor keywords managing to avoid repeating them twice

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Add BaseLanguageInformation and SPythonLanguageInformation

* Delete unnecessary TestSuite files

* Remove syntax_tree_visitor inner objects duplicates creation in spython_syntax_tree_visitor

* Move CompilationUnit.UnitFileName initialization to InitializeNewUnit function

* Override internal_reset method in spython_syntax_tree_visitor to fix pas test error

* Delete dll files from git

* Add standard SPython modules to compilation samples

* Add List Methods Names Mapping

* Add Grammar Rules for Intellisense

* Configure Intellisense - step 2

* Fix languages loading call position

* Change comments check in expression finding for SPython

* Add SPython standard types to SPythonSystem (implicitly)

* Add syntax tree converters calls for SPython in Intellisense

* Squash merge master branch

* Adapt SPython project files to new build system

* Update FunctionsWithNamedParametersDesugarVisitor.cs

* Fix output paths in SPython projects

* Update _ReBuild.bat

* Fix Main Function source_context

* Extract converters for Intellisense only usage

* Implement import statements in Intellisense

Алиасы пока не поддерживаются

* Remove Result varible for SPython in Intellisense

* Remove standard modules and net namespaces from user scope

* Adjust standard units to achieve not adding PABCSystem and Extenstions names to their scope

* Add Set, Operator in/not in

* Add Dict

* Add len Function and dict/set types

* Add list and set Functions

* Comment out TypeCorrectVisitor for Intellisense

* Fix New Types Names in Error Messages

* Add Set Methods

* Add special names renaming and excluding function in ILanguageInformation

Используется для убирания подсказки PABCSystem, корректирования типа biginteger в SPython.

* Add aliases support for import and from import in Intellisense

* Fix list_generator Desugaring in Intellisence

* Add dict Methods

* Fix List Generator

* Fix Assignment Declaration

* Move math And time Libs to bin\Lib

* Rename list_generator to generator_object

* Fix Parser to Use generator_object

* Add set generator

* Add any and all Functions

* Add Function Calls for generator objects

* Add dict generator

* Add empty containers initializations

* Fix empty_list/set/dict error message

* Fix type(obj) Function in Standard Library

* Add Error if Initialize with No Type Specification and Empty Collection

* Fix Initialization with Empty Collection for Global Variables

* Add round Function

* Add map Function

* Revert "Add map Function"

This reverts commit 4fb787a0122a6f404a4061fb6647561f0117739a.

* Fix map Function

* Update Visitor Name

* Add Bitwise Operators

* Add Bitwise Assignment Operations

* Fix Set Binary Operations

* Fix Global Assignments

* Add f-string for Strings without Format

* Update SPythonParser.dat

* Add Expression-Support in f-string

* Fix f-string Inner-Parser Call

* Add int and float Formats for f-string ('x', 'X', 'b', 'd', '.[num]f')

* Fix f-string regex

* Fix result Local Variable

* Add cont_int with Underscore

* Add Empty itertools.pas Unit

* Add args Parameters

* Add kvargs Function Declaration (pre-alpha)

* Update StandardSyntaxTreeConverter.cs

* Fix kvargs-functions Forward Declarations

* Add kvargs-functions Call (pre-alpha)

* Add kvargs-parameters Usage

* Add kvargs-function Call with no kvargs-arguments

* Move Standard print Function to Unit Written in SPython

* Update .dll's

* Hot Fix

* Update spython_syntax_tree_visitor.cs

* Add Multi-Variables foreach

* Fix create Name

* Big Kwarg-Update

* Change Create name in StringConstants and fix check in syntax_tree_visitor

* Update buildandruntests.yml

* Squashed commit of the following:

commit f7834348258fd70cb34949908f157a37c4e013db
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Thu Jun 12 15:55:53 2025 +0300

    Delete language kits directory creation while installing PascalABC.NET

commit 78f40b7377fa6c62fbdd9a19754d8c14ae68cf7f
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Jun 12 15:35:30 2025 +0300

    Create time1.pas

commit ba6cc457366a96efa650eeb2ffb90c5735de13f3
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Jun 12 14:54:36 2025 +0300

    Move TypeCorrectVisitor

commit f9ae902f0df63aa2916683869ac0cff4dd71bd91
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Jun 12 13:39:42 2025 +0300

    Fix Mutual Functions Calls

commit da3b502df1b889c0b02a00815aa8a9df1bcbe31e
Author: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com>
Date:   Thu Jun 12 13:10:49 2025 +0300

    Add Itertools Examples and fix Kwargs

commit a6d2f593a0e54b50d8b4b27fb56026b9ede740d0
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 23:23:28 2025 +0300

    Add special modules aliases support in Intellisense and switch off unit hints for import statements

commit 0d5122eef93cb2dbd9728b1877b0bfb0544ef9b8
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 19:23:36 2025 +0300

    Create FindScopeByLocation modification for SPython

    Для нахождения вложенных в MAIN функций

commit af7235ce8bee4b45ffd6c3b479f8e828932f69b4
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 17:59:22 2025 +0300

    Add ExitParamVisitor in visitors pipeline

commit 3f5a4f4950a3d3f2035ec2b18081a01c734c1a96
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 17:35:30 2025 +0300

    Small fixes

commit 3f32348b2f4dd66edd372d3989d7651ac56a5d93
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 17:11:07 2025 +0300

    Fix merge error

commit 684d6a36912ef5c5ad82d4de0807683eac87debf
Merge: 8e506f409 eeb3116ae
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 17:06:42 2025 +0300

    Merge branch 'master' into Spython_refactoring

commit 8e506f409e4b34ad81620bf352813ab507e6134e
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 16:44:37 2025 +0300

    Implement visitors pipeline for PascalABC.NET

commit 0e8e4d5c786cbad5257804ce495fe410546ddf4c
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Wed Jun 11 14:10:22 2025 +0300

    Refactor SPython StandardSyntaxTreeConverter to use pipeline approach

commit eeb3116aea
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jun 10 21:30:20 2025 +0300

    3.10.3.3634

commit ea338d6bfe
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jun 10 20:30:42 2025 +0300

    2025 in GlobalAssemblyInfo.cs

commit 4dc6bd72ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jun 10 20:19:18 2025 +0300

    chm восстановил

commit fd139b4700
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jun 10 20:09:10 2025 +0300

    fix SemanticTreeConverter.cs encoding (#3273)

commit d11674efc2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jun 10 19:56:16 2025 +0300

    Вернул старый css для справки

commit 9aee28f4f0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jun 10 19:54:57 2025 +0300

    2025

commit 07370e365f
Author: Sun Serega <sunserega2@gmail.com>
Date:   Tue Jun 10 19:18:02 2025 +0300

    Upgrade windows runner for CI/CD (#3271)

    * Try upgrade windows runner for CI/CD

    * Update names and BOM

commit 50fd3cb1ee
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed May 28 23:01:09 2025 +0300

    * adding supports enumeration check for Pascal types in foreach resolver (#3272)

    * fix naming

commit 5fec52615a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat May 24 21:36:36 2025 +0300

    Распаковка KeyValuePair| И в foreach

commit fbb5dec9a9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat May 17 19:34:33 2025 +0300

    Внешний Between

commit a914ab6ef5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri May 16 16:57:00 2025 +0300

    InRange изменение поведения и внешний

commit 04059ab235
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed May 14 19:57:30 2025 +0300

    Исправлены библиотеки PT4Exam

commit 40bfc046a8
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed May 14 19:40:04 2025 +0300

    Fix shift space action in Intellisense (#3269)

commit e3a64850ef
Author: dmkwketx <dmkwketx@gmail.com>
Date:   Mon May 12 21:14:21 2025 +0300

    Update GraphWPF.pas (#3270)

    если title больше одной строки, показывалась только последняя. теперь все строки будут показаны.

commit e9cf278fdd
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon May 12 10:24:04 2025 +0300

    IsOrdered в разных воплощениях

commit 255533f407
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri May 9 16:39:12 2025 +0300

    IsOrdered метод расширения

commit 4c56298bfb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu May 8 22:53:34 2025 +0300

    exit(param)

commit c22dee65fa
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed May 7 10:57:41 2025 +0300

    sp2

commit 3f37c2cc4f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed May 7 10:56:51 2025 +0300

    sp

commit cdfde69281
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri May 2 21:44:57 2025 +0300

    2 chars

commit 2e27beef48
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 10 13:14:04 2025 +0300

    Create generic instances cache (#3259)

    * First attempt to create generic instances cache

    * Change TypeScope equality check and add instance cache clearing

    * Move instance cache clearing call to CodeCompletion Compile funciton

    Шаблонные типы в instance_cache не должны пересекаться для различных модулей. Для улучшения производительности вызов очистки кэша расположен перед вызовом компиляции всех модулей.

    * Squashed commit of the following:

    commit 771ea7b445
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Apr 6 14:32:17 2025 +0200

        #3230

    commit 28a1a03e8d
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Apr 6 11:35:09 2025 +0200

        #3251

    commit af7abc770b
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Sun Apr 6 08:33:34 2025 +0300

        synchronization of namespaces and folders for TeacherControlPlugin (#3262)

    commit aae723b982
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Thu Apr 3 12:00:04 2025 +0300

        Create default syntax tree converter class (#3216)

        Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева.

    commit f9cc90e50f
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Thu Apr 3 11:59:46 2025 +0300

        fix errors (#3260)

    commit f85bfad60f
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Thu Apr 3 11:58:19 2025 +0300

        Intellisense memory leaks fix (#3257)

        * Fix memory leaks found for PABCSystem.pas

        Memory leaks of Interface and Implementation Unit Scopes fixed

        * Change open_files and recomp_files variables type to be Dictionary (not HashTable)

        * open_files Check simplification

        * Move TypeTable.Clear call to CodeCompletion Compile method

    * Fix incorrect dictionary iteration

    * Add one more dictionary keys copying

commit 69149f8c44
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 10 13:13:17 2025 +0300

    Refactor intellisense (#3213)

    * Refactor keywords managing to avoid repeating them twice

    * Fix build error

    * Fix string comparisons and null reference exception

    * Manage references in PascalABCLanguageInfo project

    * Fix inaccuracy in BaseKeywords.cs

    * Move ValidDirectives field to ILanguageInformation

    * Basic refactoring of GetPopupHintText + delete ampersend inserting

    * Delete other cases of ampersend inserting

    * Add check that we parsing PascalABC.NET in GetPopupHintText

    Временное решение, нужно будет вынести вторую попытку в интерфейс парсера.

    * Refactor CodeCompletionProvider (first iteration)

    * Extract shift space actions in separate class

    * Replace dollar service character in CodeCompletion by separate boolean (ctrlSpaceAfterDot))

    * Refactor GetCompletionDataByFirst method

    * Fix GetCompletionDataByFirst behaviour when getting symInfos after uses keyword

    * Another iteration of refactoring in CodeCompletionProvider + comments

    * Update intellisense documentation

    * Fix build error

    * Fix encoding

    * Squashed commit of the following:

    commit 7751fe7e75
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Sun Mar 16 13:28:03 2025 +0300

        generating language res file at build time (#3252)

    commit d1fce63d69
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Mar 4 08:38:09 2025 +0300

        Сборка после pr SDK

    commit d491e88aa7
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Mon Mar 3 20:34:51 2025 +0300

        migration to new build system (#3241)

        * converting project files into sdk style
        * new build commands
        * adding new dll into nsis
        * removing unused .cs files

    commit 1fd348ec3c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Feb 23 20:49:26 2025 +0300

        NSIS New 3.10

        Ярлык в меню Пуск у всех пользователей

    commit 80b7182dc1
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Feb 19 11:50:00 2025 +0300

        _ in names

    commit a2b078960b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Feb 19 10:52:25 2025 +0300

        cnfc2

    commit 58f26d469d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Feb 18 22:28:13 2025 +0300

        перекомпиляция 3.10.3.3611

    commit b78a72977f
    Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
    Date:   Tue Feb 18 22:02:19 2025 +0300

        fix build on mono (#3249)

        * fix build on mono

        * remove local func

        * fix again

    commit c3557e388c
    Author: Nikolay Kuznetsov <adasoft@gmail.com>
    Date:   Sat Feb 15 20:32:46 2025 +0300

        Update GraphABC.pas (#3244)

        1. Быстрая реализация функции FloodFill
        Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

        2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

    commit 9dbac389e1
    Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
    Date:   Wed Feb 12 13:57:14 2025 +0300

        Add missing projects to pabcnetc.sln (#3247)

    commit 41dfb6f187
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Fri Feb 7 21:41:01 2025 +0300

        [] - преобразование во все контейнеры

        GraphABCHelper - теперь ABCObjects работает под Линукс

        School исправлен согласно последним веяниям []

    commit 79bbbd10ff
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Wed Jan 29 20:18:37 2025 +0300

        removing files for support fx4.0 (#3240)

    commit 88d5c409eb
    Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
    Date:   Tue Jan 28 20:41:55 2025 +0300

        Рефакторинг PascalABCNET.xshd (#3237)

        * refactoring PascalABCNET.xshd

        * removing extra characters

    commit 8fbd7fdfc3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sun Jan 26 23:42:48 2025 +0300

        3.10.3
        faststrings
        EmptyCollection и преобразование ее в List, Dictionary
        t: (real,real) := (1,2)

    commit bba132bd5d
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 22 09:14:44 2025 +0300

        Поправил справку по функции

    commit 1bd21857cc
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Jan 8 18:46:51 2025 +0300

        Teacher Control Plugin - возможность задать server.dat

    commit 0848a1b796
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 22:54:38 2025 +0300

        Исправление автоформатирования []

    commit d45b782a7b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 18:45:07 2025 +0300

        Rename PABCSistem in test suite

    commit c2347e604b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Jan 4 14:44:51 2025 +0300

        Примеры - устранил неточности

        LightPT - имя сервера вынес в публичную секцию

    commit b68b8da970
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:52:18 2024 +0300

        Примеры Coords1.pas Coords2.pas.pas

    commit 8a9788e6f9
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 17 15:06:57 2024 +0300

        Перенес проверку set array на уровень парсера

        Немного поправил Intellisense по наведению для NewSet

        По точке там что то другое работает

    commit 874ddebad3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 21:00:38 2024 +0300

        Поправил грамматику []

        Теперь нельзя в режиме ## использовать атрибуты

        Зато можно [1,2,3].Print

    commit 080fb487e1
    Merge: a53dcd9ed a484b0e82
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:24 2024 +0300

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit a53dcd9ed2
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Dec 14 15:25:16 2024 +0300

        SF Prm Cmb для строк

    commit a484b0e82d
    Author: Sun Serega <sunserega2@gmail.com>
    Date:   Thu Dec 12 13:49:17 2024 +0200

        fix (#3231)

    commit 6ef11f249c
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 11:05:45 2024 +0300

        3.10.2

    commit db9679d89f
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 10 10:59:20 2024 +0300

        Закончил превращение синтаксиса [] по умолчанию в массивы

    commit 45fdde24b4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 18:08:00 2024 +0100

        #3229

    commit 494b47624d
    Merge: 5875b9929 7906d73da
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:42:07 2024 +0100

        Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

    commit 5875b99296
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Sun Dec 8 10:41:53 2024 +0100

        platformtarget native - .NET 9.0

    commit 7906d73da3
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Dec 3 14:25:37 2024 +0300

        Небольшие изменения в реализации операций с множествами

    commit 087591c7b6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 27 11:37:07 2024 +0300

        3.10.1

        Coords - доработки

        Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

    commit d268d4f83b
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Thu Nov 21 22:24:07 2024 +0300

        NSToBytes переделал с исключением

    commit 2bacdc8c28
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 13:20:33 2024 +0300

        Комментарии к NewSet

    commit e917ac8eca
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 20 12:42:15 2024 +0300

        TypeName для set

    commit 206289c6a7
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 20:23:03 2024 +0300

        Везде заменил _hs на hs в NewSet

        Убрал вызовы методов расширений NewSet в PABCSystem.pas

        Убрал var в operator +

    commit d8262078f6
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Tue Nov 19 13:56:47 2024 +0300

        Исправление мелких ошибок NewSet

        Все тесты проходят.

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

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

        Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

    commit f8819665ba
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 16 10:56:11 2024 +0300

        NS2

    commit 591d9ebe60
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:34:10 2024 +0100

        fix

    commit c6505634f4
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 21:12:33 2024 +0100

        fix

    commit a6564df23c
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Wed Nov 13 20:52:29 2024 +0100

        fix in new sets

    commit 03be5bd931
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Wed Nov 13 22:13:41 2024 +0300

        Переставил operator:= в NewSet

    commit 96c68f1666
    Author: Ivan Bondarev <ibond84@googlemail.com>
    Date:   Tue Nov 12 21:38:07 2024 +0100

        #3223

    commit 82776f3c77
    Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
    Date:   Sat Nov 9 12:18:19 2024 +0300

        NewSet - много мелких исправлений.

        Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

    * Update comments in PascalABCLanguageInformation

commit cc7d4472c6
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 10 12:19:31 2025 +0300

    Write developer guide for integrating new language (#3264)

commit 5d842153a5
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Apr 10 12:17:52 2025 +0300

    Add NSIS binaries to .gitignore exclude (#3265)

commit ee31ed94b3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Apr 10 12:06:40 2025 +0300

    TeacherControlPlugin.cs - шифрованные модули

commit ba23a01e29
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Apr 9 10:59:16 2025 +0300

    Закомментировал неверный обработчик

commit 3f70700d2b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Apr 7 22:07:13 2025 +0300

    nsis новый - папка bin

    TeacherControlPlugin.cs - добавление обработчика для последующей шифровки Tasks.pas

commit 0353abf57c
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Apr 7 08:35:22 2025 +0300

    fix caching Localization assembly (#3263)

commit 771ea7b445
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Apr 6 14:32:17 2025 +0200

    #3230

commit 28a1a03e8d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Apr 6 11:35:09 2025 +0200

    #3251

commit af7abc770b
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Apr 6 08:33:34 2025 +0300

    synchronization of namespaces and folders for TeacherControlPlugin (#3262)

commit aae723b982
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 12:00:04 2025 +0300

    Create default syntax tree converter class (#3216)

    Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева.

commit f9cc90e50f
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Apr 3 11:59:46 2025 +0300

    fix errors (#3260)

commit f85bfad60f
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Thu Apr 3 11:58:19 2025 +0300

    Intellisense memory leaks fix (#3257)

    * Fix memory leaks found for PABCSystem.pas

    Memory leaks of Interface and Implementation Unit Scopes fixed

    * Change open_files and recomp_files variables type to be Dictionary (not HashTable)

    * open_files Check simplification

    * Move TypeTable.Clear call to CodeCompletion Compile method

commit 7751fe7e75
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Sun Mar 16 13:28:03 2025 +0300

    generating language res file at build time (#3252)

commit d1fce63d69
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Mar 4 08:38:09 2025 +0300

    Сборка после pr SDK

commit d491e88aa7
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Mon Mar 3 20:34:51 2025 +0300

    migration to new build system (#3241)

    * converting project files into sdk style
    * new build commands
    * adding new dll into nsis
    * removing unused .cs files

commit 1fd348ec3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Feb 23 20:49:26 2025 +0300

    NSIS New 3.10

    Ярлык в меню Пуск у всех пользователей

commit 80b7182dc1
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 11:50:00 2025 +0300

    _ in names

commit a2b078960b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Feb 19 10:52:25 2025 +0300

    cnfc2

commit 58f26d469d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Feb 18 22:28:13 2025 +0300

    перекомпиляция 3.10.3.3611

commit b78a72977f
Author: nevermind322 <81963698+nevermind322@users.noreply.github.com>
Date:   Tue Feb 18 22:02:19 2025 +0300

    fix build on mono (#3249)

    * fix build on mono

    * remove local func

    * fix again

commit c3557e388c
Author: Nikolay Kuznetsov <adasoft@gmail.com>
Date:   Sat Feb 15 20:32:46 2025 +0300

    Update GraphABC.pas (#3244)

    1. Быстрая реализация функции FloodFill
    Для этого добавлена процедура BitmapFloodFill, которая вызывается из метода Picture.FloodFill и процедуры FloodFill

    2.Добавлена поддержка LockDrawing/UnlockDrawing в процедуру FloodFill

commit 9dbac389e1
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Wed Feb 12 13:57:14 2025 +0300

    Add missing projects to pabcnetc.sln (#3247)

commit 41dfb6f187
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Feb 7 21:41:01 2025 +0300

    [] - преобразование во все контейнеры

    GraphABCHelper - теперь ABCObjects работает под Линукс

    School исправлен согласно последним веяниям []

commit 79bbbd10ff
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Wed Jan 29 20:18:37 2025 +0300

    removing files for support fx4.0 (#3240)

commit 88d5c409eb
Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com>
Date:   Tue Jan 28 20:41:55 2025 +0300

    Рефакторинг PascalABCNET.xshd (#3237)

    * refactoring PascalABCNET.xshd

    * removing extra characters

commit 8fbd7fdfc3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Jan 26 23:42:48 2025 +0300

    3.10.3
    faststrings
    EmptyCollection и преобразование ее в List, Dictionary
    t: (real,real) := (1,2)

commit bba132bd5d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 22 09:14:44 2025 +0300

    Поправил справку по функции

commit 1bd21857cc
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jan 8 18:46:51 2025 +0300

    Teacher Control Plugin - возможность задать server.dat

commit 0848a1b796
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 22:54:38 2025 +0300

    Исправление автоформатирования []

commit d45b782a7b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 18:45:07 2025 +0300

    Rename PABCSistem in test suite

commit c2347e604b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Jan 4 14:44:51 2025 +0300

    Примеры - устранил неточности

    LightPT - имя сервера вынес в публичную секцию

commit b68b8da970
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:52:18 2024 +0300

    Примеры Coords1.pas Coords2.pas.pas

commit 8a9788e6f9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 17 15:06:57 2024 +0300

    Перенес проверку set array на уровень парсера

    Немного поправил Intellisense по наведению для NewSet

    По точке там что то другое работает

commit 874ddebad3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 21:00:38 2024 +0300

    Поправил грамматику []

    Теперь нельзя в режиме ## использовать атрибуты

    Зато можно [1,2,3].Print

commit 080fb487e1
Merge: a53dcd9ed a484b0e82
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:24 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit a53dcd9ed2
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Dec 14 15:25:16 2024 +0300

    SF Prm Cmb для строк

commit a484b0e82d
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Dec 12 13:49:17 2024 +0200

    fix (#3231)

commit 6ef11f249c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 11:05:45 2024 +0300

    3.10.2

commit db9679d89f
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 10 10:59:20 2024 +0300

    Закончил превращение синтаксиса [] по умолчанию в массивы

commit 45fdde24b4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 18:08:00 2024 +0100

    #3229

commit 494b47624d
Merge: 5875b9929 7906d73da
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:42:07 2024 +0100

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 5875b99296
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Dec 8 10:41:53 2024 +0100

    platformtarget native - .NET 9.0

commit 7906d73da3
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Dec 3 14:25:37 2024 +0300

    Небольшие изменения в реализации операций с множествами

commit 087591c7b6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 27 11:37:07 2024 +0300

    3.10.1

    Coords - доработки

    Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки

commit d268d4f83b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Nov 21 22:24:07 2024 +0300

    NSToBytes переделал с исключением

commit 2bacdc8c28
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 13:20:33 2024 +0300

    Комментарии к NewSet

commit e917ac8eca
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 20 12:42:15 2024 +0300

    TypeName для set

commit 206289c6a7
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 20:23:03 2024 +0300

    Везде заменил _hs на hs в NewSet

    Убрал вызовы методов расширений NewSet в PABCSystem.pas

    Убрал var в operator +

commit d8262078f6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Nov 19 13:56:47 2024 +0300

    Исправление мелких ошибок NewSet

    Все тесты проходят.

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

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

    Причина - из dll не вызывается конструктор записи без параметров, хотя он определён. В C# вообще у записей не может быть конструктора по умолчанию - наверное потому. Но для NewSet надо бы сделать исключение

commit f8819665ba
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 16 10:56:11 2024 +0300

    NS2

commit 591d9ebe60
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:34:10 2024 +0100

    fix

commit c6505634f4
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 21:12:33 2024 +0100

    fix

commit a6564df23c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Nov 13 20:52:29 2024 +0100

    fix in new sets

commit 03be5bd931
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Nov 13 22:13:41 2024 +0300

    Переставил operator:= в NewSet

commit 96c68f1666
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Nov 12 21:38:07 2024 +0100

    #3223

commit 82776f3c77
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Nov 9 12:18:19 2024 +0300

    NewSet - много мелких исправлений.

    Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll

commit fbd63efa89
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Nov 3 16:59:48 2024 +0300

    NewSets
    Некоторые тесты надо исправить

commit 746c4ae2c2
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 21:00:42 2024 +0100

    #3221

commit 350d07326d
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:35:51 2024 +0100

    #3221

commit aae9ab408b
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Thu Oct 31 18:25:06 2024 +0100

    #3221

commit 1e4a811e04
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:42:59 2024 +0100

    test for #3219

commit d1a1247ecd
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Wed Oct 30 20:24:16 2024 +0100

    #3219

commit 13b3071d80
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Oct 28 22:42:17 2024 +0300

    закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить

commit 6d5c18f457
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Oct 24 10:17:48 2024 +0300

    SF XLSX.pas

commit 0c773a7ecb
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 16 12:04:33 2024 +0300

    tree.xml с парой новых узлов для Питона

commit 53b3fd0881
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Oct 9 14:09:01 2024 +0300

    Добавил временное преобразование от array of T в set of T

commit 271d5792ce
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Tue Oct 8 10:00:14 2024 +0300

    Documentation (#3211)

    * Add Compiler documentation

    * Add Intellisense documentation

    * Move documentation folder to root directory

commit 79f9ab73a0
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Oct 5 15:33:20 2024 +0300

    PT4_32

commit 0a20c8d32c
Author: Sun Serega <sunserega2@gmail.com>
Date:   Thu Sep 26 09:02:31 2024 +0200

    Add `.DistinctBy` (#3122)

commit 11981dbf47
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Sep 25 11:53:02 2024 +0300

    IndexMinBy, IndexMaxBy
    MinBy, MaxBy - более эффективная реализация
    GraphWPF - SaveToClipboard

commit 3eb1d2bd85
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 17:42:09 2024 +0200

    #3197

commit 20edd487e3
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 12:39:03 2024 +0200

    #3204

commit 7261231c9c
Merge: 7debbe702 9ab932977
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Sun Sep 22 09:49:58 2024 +0200

    Merge pull request #3207 from AlexanderZemlyak/fix_linux_version

    Fix linux version

commit 9ab9329771
Author: AlexanderZemlyak <zemlyaksanya@mail.ru>
Date:   Sun Sep 22 10:23:18 2024 +0300

    Add new projects in PascalACBNETLinux.sln

commit 7debbe702a
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 21 14:29:38 2024 +0300

    Критическое обновление LightPT

commit 40335b873e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Sep 20 22:58:46 2024 +0300

    LightPT - OutputListIsClearedFromSpaces := False;
    Coords - DrawLine

commit 078281db17
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 22:42:44 2024 +0300

    coords suite

commit 8d51f999a5
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Thu Sep 19 20:28:28 2024 +0300

    Автоклассы - разрешение наследования от классов без полей

    Модуль Coords

commit 8f7e92d418
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Sep 16 08:25:43 2024 +0300

    Turtle переделал на паттерн Команда

commit a6f6d8a90b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 23:11:54 2024 +0300

    Правки рейтинга в TeacherPlugin

commit 2365eb3633
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Sep 7 15:54:15 2024 +0300

    LinkLabel в TeacherControlPlugin

commit 1835b811ef
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:51:44 2024 +0300

    MathNet Signed

commit b23d6df9e9
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Sep 3 23:16:15 2024 +0300

    MathNet.Numerics.dll

commit 790fba67b8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 27 17:56:09 2024 +0300

    3.10.0

commit 1ec4204fd2
Author: Sun Serega <sunserega2@gmail.com>
Date:   Mon Aug 26 09:20:27 2024 +0300

    `.Batch` cleanup (#3108)

commit b5e674c311
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:12:14 2024 +0300

    3_10_0

commit 7face043cf
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Mon Aug 26 09:11:08 2024 +0300

    ToSet

commit e456ad528e
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 23:13:57 2024 +0300

    3.9.0.3530

commit 3247469e6d
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 22:55:27 2024 +0300

    Добавлен DrawPoints в Turtle

    Исправлена ошибка с отображением подписей в Y-координате

commit 7548142623
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 14:27:53 2024 +0300

    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 := ',')

commit d94885b950
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sat Aug 24 12:13:09 2024 +0300

    randomElement для строк

    .ToReals - разделителями могут быть пробел табуляция и переход на новую строку

    NumberFormat - функция, возвращающая nfi

commit ae2e26acf8
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Fri Aug 23 19:33:55 2024 +0300

    PT4 - новые dll файлы старых заданий серий A

commit 0f8aa6fa3c
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 17:28:05 2024 +0300

    SetOf как основной синоним HSet

commit db4b53be20
Merge: 86852e0a5 b9fd59a84
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:42 2024 +0300

    Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet

commit 86852e0a59
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 18 16:05:14 2024 +0300

    School - ToBase(number: int64

commit b9fd59a840
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 15:08:44 2024 +0200

    #2830

commit 4f0b0f8ba0
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 14:43:49 2024 +0200

    #3194

commit e3ee0fed4c
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 13:49:30 2024 +0200

    #3097

commit d396c4a9fe
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Tue Aug 13 10:40:23 2024 +0200

    #3178

commit 0d846d2335
Merge: e91e35398 a65a86921
Author: Ivan Bondarev <ibond84@googlemail.com>
Date:   Mon Aug 12 15:24:11 2024 +0200

    Merge pull request #3170 from samuraiGH/ForeachResolver-rework

    Foreach resolver rework

commit a65a869211
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Aug 12 15:50:42 2024 +0300

    increasing pcu file version

commit e91e353984
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Sun Aug 11 15:21:29 2024 +0300

    Обновленный модуль Turtle.pas

commit c18238df39
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 20:18:57 2024 +0300

    3.9.0.3523

commit 1da2b524a6
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Aug 6 19:34:10 2024 +0300

    School PrimeDivisors

commit 47c61d8b14
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:48:07 2024 +0300

    New directive to disable linking pascal standard modules (#3186)

    * Add new 'disable standard units' directive and it's processing

    * Refactor InitializeNewUnit function

    * Improve disable standard units directive checks

    * Add null check in programs.cs to avoid error

    * Rename error related to disable standard units directive

    * Add referencing standard net libraries

    * Add checks for duplicates when injecting references

commit fc3ab96cae
Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Date:   Fri Aug 2 10:46:40 2024 +0300

    Delete DocumentedUnits option and Exclude HelpBuilder project (#3192)

    * Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug

    Достаточно их аналогов из CompilerOptions.

    * Add recreating CompilerOptions when reloading Compiler

    * Change Rebuild checkbox logic

    * Delete documented units fiels from CompilerInternalDebug

    * Revert "Delete CodeGeneration and PCUGenerate options from CompilerInternalDebug"

    This reverts commit 25e92b22722b7e251ab0156148fdf28ee3175c27.

    * Exclude HelpBuilder

commit 64acde6460
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 18:21:04 2024 +0300

    Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса)

    School - IsPrime(n)

commit 3db5709101
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Wed Jul 31 10:56:18 2024 +0300

    ZipCartesianFuncs.pas

commit c4fd47128b
Author: Mikhalkovich Stanislav <miks@math.sfedu.ru>
Date:   Tue Jul 30 22:56:03 2024 +0300

    Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией
    Zip, Cartesian - методы расширения дополнены чтобы было как во внешних
    Перегенерирована справка

commit 7d66f26d4f
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Mon Jul 1 00:16:43 2024 +0300

    cleanup and more tests

commit 464dc794a8
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 23:31:28 2024 +0300

    cleanup and more comments

commit 32f126370c
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sun Jun 30 21:35:06 2024 +0300

    attempt to fix GetEnumerator resolving for Pascal types

commit fb3eeeb28b
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 16:26:35 2024 +0300

    fix tests

commit 84b0dfe537
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Sat Jun 29 15:49:13 2024 +0300

    fix getting MethodInfo

commit 5fa4d9fce7
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:45:07 2024 +0300

    cold fix set of T resolving

commit 460ce636ab
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 22:21:06 2024 +0300

    hot fix set of T resolving

commit 83c2f29ac6
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:53:11 2024 +0300

    fix method filtering again

commit c840a1a47a
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 21:32:41 2024 +0300

    fix type recovery

commit 2436627fdd
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 19:18:32 2024 +0300

    fixing method filtering

commit 15a05360a4
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:25:39 2024 +0300

    attempt to fix GetEnumerator resolving for compiled types

commit 4fd020d084
Author: samuraiGH <anonimajzer3@mail.ru>
Date:   Fri Jun 28 17:21:00 2024 +0300

    adding tests

* Fix merge error

* Delete extra files

* Move Examples to pascalabcnet\PABCNetHelp\Examples\SPython

* Update .dll

* Move examples to pascalabcnet\CodeExamples\SPython

* Revert pipeline visitors architecture for Pascal

* Add AssignIntegerDivisionOperation

* Revert pipeline visitors architecture for SPython

* Add len(str)

* Fix inaccuracies

* Fix case sensitive string comparison in some lambda classes

* Small fix in BaseLanguageInformation

* Revert changing Create string to constant in Pascal visitors

* Resolve some pull request issues

* Add Tuple-Type to Right Part of Assignment

* Add Tuple-Assignments a, b = 1, 2

* Delete unused function in DomSyntaxTreeVisitor

* Fix Tuple Assignment

* Add tuple TypeName

* Add turbo_tuple_expr to return_stmt

* Add Tuple-related Errors

* Update pabcnetc_clear/CommandConsoleCompiler.cs encoding

Co-authored-by: Sun Serega <sunserega2@gmail.com>

* Delete IndentArranger.exe

* Fix Generator in for Loop

* Fix Char-Assignment Type Inference

* Fix Collections Method Error Handling

* Fix result variable case sensitive comparing

* Fix Result Name Constants in Visitors

* Fix merge errors

* Resolve some pull request conversations

* Add SPython projects in pabcnetc.sln and PascalABCNETLinux.sln

* Delete Gplex.exe and Gppg.exe in SPython project

* Fix tuple-type Name in Errors

* Move time1.pas and Fix _ReBuild.bat

* Update _ReBuild.bat

* Fix method calls without parentheses in SPython

* Fix Localizations Files

* Remove SPythonParser.sln

* Refactor TipPainterTools to support inner parentheses in function parameters

* Update Linux TipPainterTools

* Fix dict Type Specialization

* Add GetDescriptionForCompiledMethod in SPython

---------

Co-authored-by: AlexanderZemlyak <zemlyaksanya@mail.ru>
Co-authored-by: Владислав Крылов <krylov@sfedu.ru>
Co-authored-by: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com>
Co-authored-by: Sun Serega <sunserega2@gmail.com>
2025-06-22 20:56:22 +03:00

1622 lines
93 KiB
C#

// This code was generated by the Gardens Point Parser Generator
// Copyright (c) Wayne Kelly, QUT 2005-2010
// (see accompanying GPPGcopyright.rtf)
// GPPG version 1.3.6
// Machine: DESKTOP-56159VE
// DateTime: 17.06.2025 14:06:30
// UserName: ????
// Input file <SPythonParser.y>
// options: no-lines gplex
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Text;
using QUT.Gppg;
using PascalABCCompiler.SyntaxTree;
using PascalABCCompiler.ParserTools;
using PascalABCCompiler.Errors;
using System.Linq;
using System.Collections.Generic;
using System.IO;
using SPythonParser;
namespace SPythonParserYacc
{
public enum Tokens {
error=1,EOF=2,FOR=3,IN=4,WHILE=5,IF=6,
ELSE=7,ELIF=8,DEF=9,RETURN=10,BREAK=11,CONTINUE=12,
IMPORT=13,FROM=14,GLOBAL=15,AS=16,PASS=17,CLASS=18,
LAMBDA=19,EXIT=20,NEW=21,IS=22,INDENT=23,UNINDENT=24,
END_OF_FILE=25,END_OF_LINE=26,DECLTYPE=27,INTNUM=28,REALNUM=29,TRUE=30,
FALSE=31,BIGINT=32,FSTRINGNUM=33,LPAR=34,RPAR=35,LBRACE=36,
RBRACE=37,LBRACKET=38,RBRACKET=39,DOT=40,COMMA=41,COLON=42,
SEMICOLON=43,ARROW=44,STRINGNUM=45,ASSIGN=46,PLUSEQUAL=47,MINUSEQUAL=48,
STAREQUAL=49,DIVEQUAL=50,BINXOREQUAL=51,SHLEQUAL=52,SHREQUAL=53,BINANDEQUAL=54,
BINOREQUAL=55,INTDIVISIONEQUAL=56,PLUS=57,MINUS=58,STAR=59,DIVIDE=60,
SLASHSLASH=61,PERCENTAGE=62,ID=63,LESS=64,GREATER=65,LESSEQUAL=66,
GREATEREQUAL=67,EQUAL=68,NOTEQUAL=69,AND=70,OR=71,NOT=72,
STARSTAR=73,BINNOT=74,BINXOR=75,SHL=76,SHR=77,BINAND=78,
BINOR=79,tkParseModeExpression=80,tkParseModeStatement=81,tkParseModeType=82};
public partial struct ValueType
{
public expression ex;
public ident id;
public Object ob;
public op_type_node op;
public syntax_tree_node stn;
public token_info ti;
public type_definition td;
}
// Abstract base class for GPLEX scanners
public abstract class ScanBase : AbstractScanner<ValueType,LexLocation> {
private LexLocation __yylloc = new LexLocation();
public override LexLocation yylloc { get { return __yylloc; } set { __yylloc = value; } }
protected virtual bool yywrap() { return true; }
}
public partial class SPythonGPPGParser: ShiftReduceParser<ValueType, LexLocation>
{
// Verbatim content from SPythonParser.y
public syntax_tree_node root;
public List<Error> errors;
// public string current_file_name;
// public int max_errors = 10;
public SPythonParserTools parserTools;
public List<compiler_directive> CompilerDirectives;
public ParserLambdaHelper lambdaHelper = new ParserLambdaHelper();
public bool is_unit_to_be_parsed = false;
public SPythonGPPGParser(AbstractScanner<ValueType, LexLocation> scanner, SPythonParserTools parserTools,
bool isUnitToBeParsed) : base(scanner)
{
this.parserTools = parserTools;
this.is_unit_to_be_parsed = isUnitToBeParsed;
}
// End verbatim content from SPythonParser.y
#pragma warning disable 649
private static Dictionary<int, string> aliasses;
#pragma warning restore 649
private static Rule[] rules = new Rule[182];
private static State[] states = new State[337];
private static string[] nonTerms = new string[] {
"ident", "dotted_ident", "func_name_ident", "type_decl_identifier", "expr",
"proc_func_call", "const_value", "variable", "optional_condition", "act_param",
"new_expr", "is_expr", "variable_as_type", "act_param_list", "optional_act_param_list",
"proc_func_decl", "return_stmt", "break_stmt", "continue_stmt", "global_stmt",
"pass_stmt", "var_stmt", "assign_stmt", "if_stmt", "stmt", "proc_func_call_stmt",
"while_stmt", "for_stmt", "optional_else", "optional_elif", "exit_stmt",
"expr_list", "stmt_list", "block", "program", "param_name", "form_param_sect",
"form_param_list", "optional_form_param_list", "dotted_ident_list", "ident_as_ident",
"ident_as_ident_list", "ident_list", "proc_func_header", "type_ref", "simple_type_identifier",
"template_type", "import_clause", "template_type_params", "template_param_list",
"parts", "stmt_or_expression", "expr_mapping_list", "optional_semicolon",
"end_of_line", "variable_list", "assign_type", "expr_mapping", "list_constant",
"set_constant", "dict_constant", "generator_object", "generator_object_for_dict",
"tuple_expr", "assign_right_part", "turbo_tuple_expr", "$accept", };
static SPythonGPPGParser() {
states[0] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,34,198,6,207,5,227,3,232,10,248,11,251,12,253,15,255,17,264,20,266,9,273,13,300,14,308,80,319,82,325,81,329},new int[]{-35,1,-33,3,-25,315,-23,8,-8,9,-1,79,-6,197,-7,181,-59,92,-60,98,-61,109,-22,205,-24,206,-26,225,-27,226,-28,231,-17,247,-18,250,-19,252,-20,254,-21,263,-31,265,-16,270,-44,271,-48,299,-51,317});
states[1] = new State(new int[]{2,2});
states[2] = new State(-1);
states[3] = new State(new int[]{43,316,26,313,25,-181},new int[]{-54,4,-55,6});
states[4] = new State(new int[]{25,5});
states[5] = new State(-2);
states[6] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,34,198,6,207,5,227,3,232,10,248,11,251,12,253,15,255,17,264,20,266,9,273,13,300,14,308},new int[]{-25,7,-23,8,-8,9,-1,79,-6,197,-7,181,-59,92,-60,98,-61,109,-22,205,-24,206,-26,225,-27,226,-28,231,-17,247,-18,250,-19,252,-20,254,-21,263,-31,265,-16,270,-44,271,-48,299});
states[7] = new State(-16);
states[8] = new State(-17);
states[9] = new State(new int[]{46,10,34,69,40,163,38,165,41,175,42,183,47,187,48,188,49,189,50,190,51,191,52,192,53,193,54,194,55,195,56,196},new int[]{-57,173});
states[10] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-65,11,-5,12,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-66,172});
states[11] = new State(-53);
states[12] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,170,43,-51,26,-51,25,-51});
states[13] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,14,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[14] = new State(new int[]{7,15,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[15] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,16,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[16] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-67,43,-67,26,-67,25,-67,7,-67,3,-67,35,-67,39,-67,37,-67,42,-67});
states[17] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,18,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[18] = new State(new int[]{6,13,57,-68,59,19,60,21,58,-68,64,-68,65,-68,66,-68,67,-68,68,-68,69,-68,70,-68,71,-68,61,41,62,43,76,-68,77,-68,78,-68,79,-68,75,-68,73,55,4,57,72,-68,41,-68,43,-68,26,-68,25,-68,7,-68,3,-68,35,-68,39,-68,37,-68,42,-68});
states[19] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,20,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[20] = new State(new int[]{6,13,57,-69,59,-69,60,-69,58,-69,64,-69,65,-69,66,-69,67,-69,68,-69,69,-69,70,-69,71,-69,61,-69,62,-69,76,-69,77,-69,78,-69,79,-69,75,-69,73,55,4,57,72,-69,41,-69,43,-69,26,-69,25,-69,7,-69,3,-69,35,-69,39,-69,37,-69,42,-69});
states[21] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,22,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[22] = new State(new int[]{6,13,57,-70,59,-70,60,-70,58,-70,64,-70,65,-70,66,-70,67,-70,68,-70,69,-70,70,-70,71,-70,61,-70,62,-70,76,-70,77,-70,78,-70,79,-70,75,-70,73,55,4,57,72,-70,41,-70,43,-70,26,-70,25,-70,7,-70,3,-70,35,-70,39,-70,37,-70,42,-70});
states[23] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,24,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[24] = new State(new int[]{6,13,57,-71,59,19,60,21,58,-71,64,-71,65,-71,66,-71,67,-71,68,-71,69,-71,70,-71,71,-71,61,41,62,43,76,-71,77,-71,78,-71,79,-71,75,-71,73,55,4,57,72,-71,41,-71,43,-71,26,-71,25,-71,7,-71,3,-71,35,-71,39,-71,37,-71,42,-71});
states[25] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,26,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[26] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-72,65,-72,66,-72,67,-72,68,-72,69,-72,70,-72,71,-72,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-72,41,-72,43,-72,26,-72,25,-72,7,-72,3,-72,35,-72,39,-72,37,-72,42,-72});
states[27] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,28,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[28] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-73,65,-73,66,-73,67,-73,68,-73,69,-73,70,-73,71,-73,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-73,41,-73,43,-73,26,-73,25,-73,7,-73,3,-73,35,-73,39,-73,37,-73,42,-73});
states[29] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,30,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[30] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-74,65,-74,66,-74,67,-74,68,-74,69,-74,70,-74,71,-74,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-74,41,-74,43,-74,26,-74,25,-74,7,-74,3,-74,35,-74,39,-74,37,-74,42,-74});
states[31] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,32,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[32] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-75,65,-75,66,-75,67,-75,68,-75,69,-75,70,-75,71,-75,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-75,41,-75,43,-75,26,-75,25,-75,7,-75,3,-75,35,-75,39,-75,37,-75,42,-75});
states[33] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,34,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[34] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-76,65,-76,66,-76,67,-76,68,-76,69,-76,70,-76,71,-76,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-76,41,-76,43,-76,26,-76,25,-76,7,-76,3,-76,35,-76,39,-76,37,-76,42,-76});
states[35] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,36,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[36] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-77,65,-77,66,-77,67,-77,68,-77,69,-77,70,-77,71,-77,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-77,41,-77,43,-77,26,-77,25,-77,7,-77,3,-77,35,-77,39,-77,37,-77,42,-77});
states[37] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,38,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[38] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,-78,71,-78,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-78,43,-78,26,-78,25,-78,7,-78,3,-78,35,-78,39,-78,37,-78,42,-78});
states[39] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,40,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[40] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,-79,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-79,43,-79,26,-79,25,-79,7,-79,3,-79,35,-79,39,-79,37,-79,42,-79});
states[41] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,42,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[42] = new State(new int[]{6,13,57,-80,59,-80,60,-80,58,-80,64,-80,65,-80,66,-80,67,-80,68,-80,69,-80,70,-80,71,-80,61,-80,62,-80,76,-80,77,-80,78,-80,79,-80,75,-80,73,55,4,57,72,-80,41,-80,43,-80,26,-80,25,-80,7,-80,3,-80,35,-80,39,-80,37,-80,42,-80});
states[43] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,44,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[44] = new State(new int[]{6,13,57,-81,59,-81,60,-81,58,-81,64,-81,65,-81,66,-81,67,-81,68,-81,69,-81,70,-81,71,-81,61,-81,62,-81,76,-81,77,-81,78,-81,79,-81,75,-81,73,55,4,57,72,-81,41,-81,43,-81,26,-81,25,-81,7,-81,3,-81,35,-81,39,-81,37,-81,42,-81});
states[45] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,46,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[46] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-82,65,-82,66,-82,67,-82,68,-82,69,-82,70,-82,71,-82,61,41,62,43,76,-82,77,-82,78,-82,79,-82,75,-82,73,55,4,57,72,-82,41,-82,43,-82,26,-82,25,-82,7,-82,3,-82,35,-82,39,-82,37,-82,42,-82});
states[47] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,48,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[48] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-83,65,-83,66,-83,67,-83,68,-83,69,-83,70,-83,71,-83,61,41,62,43,76,-83,77,-83,78,-83,79,-83,75,-83,73,55,4,57,72,-83,41,-83,43,-83,26,-83,25,-83,7,-83,3,-83,35,-83,39,-83,37,-83,42,-83});
states[49] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,50,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[50] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-84,65,-84,66,-84,67,-84,68,-84,69,-84,70,-84,71,-84,61,41,62,43,76,45,77,47,78,-84,79,-84,75,-84,73,55,4,57,72,-84,41,-84,43,-84,26,-84,25,-84,7,-84,3,-84,35,-84,39,-84,37,-84,42,-84});
states[51] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,52,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[52] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-85,65,-85,66,-85,67,-85,68,-85,69,-85,70,-85,71,-85,61,41,62,43,76,45,77,47,78,49,79,-85,75,53,73,55,4,57,72,-85,41,-85,43,-85,26,-85,25,-85,7,-85,3,-85,35,-85,39,-85,37,-85,42,-85});
states[53] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,54,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[54] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,-86,65,-86,66,-86,67,-86,68,-86,69,-86,70,-86,71,-86,61,41,62,43,76,45,77,47,78,49,79,-86,75,-86,73,55,4,57,72,-86,41,-86,43,-86,26,-86,25,-86,7,-86,3,-86,35,-86,39,-86,37,-86,42,-86});
states[55] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,56,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[56] = new State(new int[]{6,13,57,-87,59,-87,60,-87,58,-87,64,-87,65,-87,66,-87,67,-87,68,-87,69,-87,70,-87,71,-87,61,-87,62,-87,76,-87,77,-87,78,-87,79,-87,75,-87,73,55,4,57,72,-87,41,-87,43,-87,26,-87,25,-87,7,-87,3,-87,35,-87,39,-87,37,-87,42,-87});
states[57] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,58,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[58] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-88,43,-88,26,-88,25,-88,7,-88,3,-88,35,-88,39,-88,37,-88,42,-88});
states[59] = new State(new int[]{4,60});
states[60] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,61,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[61] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-89,43,-89,26,-89,25,-89,7,-89,3,-89,35,-89,39,-89,37,-89,42,-89});
states[62] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,63,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[63] = new State(new int[]{6,13,57,-90,59,19,60,21,58,-90,64,-90,65,-90,66,-90,67,-90,68,-90,69,-90,70,-90,71,-90,61,41,62,43,76,-90,77,-90,78,-90,79,-90,75,-90,73,55,4,57,72,-90,41,-90,43,-90,26,-90,25,-90,7,-90,3,-90,35,-90,39,-90,37,-90,42,-90});
states[64] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,65,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[65] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,-91,71,-91,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,-91,41,-91,43,-91,26,-91,25,-91,7,-91,3,-91,35,-91,39,-91,37,-91,42,-91});
states[66] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,67,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[67] = new State(new int[]{6,13,57,-92,59,-92,60,-92,58,-92,64,-92,65,-92,66,-92,67,-92,68,-92,69,-92,70,-92,71,-92,61,-92,62,-92,76,-92,77,-92,78,-92,79,-92,75,-92,73,-92,4,57,72,-92,41,-92,43,-92,26,-92,25,-92,7,-92,3,-92,35,-92,39,-92,37,-92,42,-92});
states[68] = new State(new int[]{34,69,40,163,38,165,22,168,6,-93,57,-93,59,-93,60,-93,58,-93,64,-93,65,-93,66,-93,67,-93,68,-93,69,-93,70,-93,71,-93,61,-93,62,-93,76,-93,77,-93,78,-93,79,-93,75,-93,73,-93,4,-93,72,-93,41,-93,43,-93,26,-93,25,-93,7,-93,3,-93,35,-93,39,-93,37,-93,42,-93});
states[69] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127,35,-177},new int[]{-15,70,-14,72,-10,116,-5,117,-8,68,-1,76,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-62,134});
states[70] = new State(new int[]{35,71});
states[71] = new State(-154);
states[72] = new State(new int[]{41,73,35,-175});
states[73] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-10,74,-5,75,-8,68,-1,76,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[74] = new State(-174);
states[75] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-171,35,-171});
states[76] = new State(new int[]{46,77,34,-128,40,-128,38,-128,22,-128,6,-128,57,-128,59,-128,60,-128,58,-128,64,-128,65,-128,66,-128,67,-128,68,-128,69,-128,70,-128,71,-128,61,-128,62,-128,76,-128,77,-128,78,-128,79,-128,75,-128,73,-128,4,-128,72,-128,3,-128,41,-128,35,-128});
states[77] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,78,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[78] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,41,-172,35,-172});
states[79] = new State(-128);
states[80] = new State(-37);
states[81] = new State(-129);
states[82] = new State(new int[]{40,83,6,-94,57,-94,59,-94,60,-94,58,-94,64,-94,65,-94,66,-94,67,-94,68,-94,69,-94,70,-94,71,-94,61,-94,62,-94,76,-94,77,-94,78,-94,79,-94,75,-94,73,-94,4,-94,72,-94,41,-94,43,-94,26,-94,25,-94,7,-94,3,-94,35,-94,39,-94,37,-94,42,-94});
states[83] = new State(new int[]{63,80},new int[]{-1,84});
states[84] = new State(-131);
states[85] = new State(-103);
states[86] = new State(-104);
states[87] = new State(-105);
states[88] = new State(-106);
states[89] = new State(-107);
states[90] = new State(-108);
states[91] = new State(-109);
states[92] = new State(-132);
states[93] = new State(new int[]{39,159,58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-32,94,-62,160,-5,162,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[94] = new State(new int[]{39,95,41,96});
states[95] = new State(-146);
states[96] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,97,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[97] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,39,-111,41,-111,37,-111,35,-111,43,-111,26,-111,25,-111});
states[98] = new State(-133);
states[99] = new State(new int[]{37,147,58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-32,100,-53,102,-62,148,-63,150,-5,152,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-58,153});
states[100] = new State(new int[]{37,101,41,96});
states[101] = new State(-145);
states[102] = new State(new int[]{37,103,41,104});
states[103] = new State(-143);
states[104] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-58,105,-5,106,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[105] = new State(-48);
states[106] = new State(new int[]{42,107,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[107] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,108,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[108] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,3,-46,37,-46,41,-46});
states[109] = new State(-134);
states[110] = new State(-95);
states[111] = new State(new int[]{63,80},new int[]{-45,112,-46,135,-1,144,-47,145});
states[112] = new State(new int[]{34,113});
states[113] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127,35,-177},new int[]{-15,114,-14,72,-10,116,-5,117,-8,68,-1,76,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-62,134});
states[114] = new State(new int[]{35,115});
states[115] = new State(-102);
states[116] = new State(-173);
states[117] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,3,118,41,-171,35,-171});
states[118] = new State(new int[]{63,80},new int[]{-1,119});
states[119] = new State(new int[]{4,120});
states[120] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,121,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[121] = new State(new int[]{6,123,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,35,-148,39,-148,37,-148},new int[]{-9,122});
states[122] = new State(-141);
states[123] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,124,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[124] = new State(new int[]{7,15,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,35,-149,39,-149,37,-149});
states[125] = new State(-96);
states[126] = new State(-97);
states[127] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,128,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[128] = new State(new int[]{41,129,35,133,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[129] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-32,130,-5,132,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[130] = new State(new int[]{35,131,41,96});
states[131] = new State(-99);
states[132] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,35,-110,41,-110,43,-110,26,-110,25,-110});
states[133] = new State(-98);
states[134] = new State(-176);
states[135] = new State(new int[]{40,136,38,139,34,-157,39,-157,41,-157,6,-157,57,-157,59,-157,60,-157,58,-157,64,-157,65,-157,66,-157,67,-157,68,-157,69,-157,70,-157,71,-157,61,-157,62,-157,76,-157,77,-157,78,-157,79,-157,75,-157,73,-157,4,-157,72,-157,43,-157,26,-157,25,-157,7,-157,3,-157,35,-157,37,-157,42,-157,46,-157},new int[]{-49,138});
states[136] = new State(new int[]{63,80},new int[]{-1,137});
states[137] = new State(-156);
states[138] = new State(-159);
states[139] = new State(new int[]{63,80},new int[]{-50,140,-45,146,-46,135,-1,144,-47,145});
states[140] = new State(new int[]{39,141,41,142});
states[141] = new State(-160);
states[142] = new State(new int[]{63,80},new int[]{-45,143,-46,135,-1,144,-47,145});
states[143] = new State(-162);
states[144] = new State(-155);
states[145] = new State(-158);
states[146] = new State(-161);
states[147] = new State(-144);
states[148] = new State(new int[]{37,149});
states[149] = new State(-137);
states[150] = new State(new int[]{37,151});
states[151] = new State(-138);
states[152] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,42,107,3,118,37,-110,41,-110});
states[153] = new State(new int[]{3,154,37,-47,41,-47});
states[154] = new State(new int[]{63,80},new int[]{-1,155});
states[155] = new State(new int[]{4,156});
states[156] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,157,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[157] = new State(new int[]{6,123,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,37,-148},new int[]{-9,158});
states[158] = new State(-142);
states[159] = new State(-147);
states[160] = new State(new int[]{39,161});
states[161] = new State(-136);
states[162] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,3,118,39,-110,41,-110});
states[163] = new State(new int[]{63,80},new int[]{-1,164});
states[164] = new State(-130);
states[165] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,166,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[166] = new State(new int[]{39,167,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[167] = new State(-135);
states[168] = new State(new int[]{63,80},new int[]{-45,169,-46,135,-1,144,-47,145});
states[169] = new State(-101);
states[170] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-32,171,-5,132,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[171] = new State(new int[]{41,96,43,-100,26,-100,25,-100});
states[172] = new State(-52);
states[173] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-65,174,-5,12,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-66,172});
states[174] = new State(-54);
states[175] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99},new int[]{-56,176,-8,182,-1,79,-6,81,-7,181,-59,92,-60,98,-61,109});
states[176] = new State(new int[]{46,177,41,179});
states[177] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-65,178,-5,12,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-66,172});
states[178] = new State(-56);
states[179] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99},new int[]{-8,180,-1,79,-6,81,-7,181,-59,92,-60,98,-61,109});
states[180] = new State(new int[]{34,69,40,163,38,165,46,-140,41,-140,35,-140});
states[181] = new State(new int[]{40,83});
states[182] = new State(new int[]{34,69,40,163,38,165,46,-139,41,-139,35,-139});
states[183] = new State(new int[]{63,80},new int[]{-45,184,-46,135,-1,144,-47,145});
states[184] = new State(new int[]{46,185,43,-49,26,-49,25,-49});
states[185] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,186,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[186] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,43,-50,26,-50,25,-50});
states[187] = new State(-57);
states[188] = new State(-58);
states[189] = new State(-59);
states[190] = new State(-60);
states[191] = new State(-61);
states[192] = new State(-62);
states[193] = new State(-63);
states[194] = new State(-64);
states[195] = new State(-65);
states[196] = new State(-66);
states[197] = new State(new int[]{46,-129,34,-129,40,-129,38,-129,41,-129,42,-129,47,-129,48,-129,49,-129,50,-129,51,-129,52,-129,53,-129,54,-129,55,-129,56,-129,43,-127,26,-127,25,-127});
states[198] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99},new int[]{-8,199,-1,79,-6,81,-7,181,-59,92,-60,98,-61,109});
states[199] = new State(new int[]{41,200,34,69,40,163,38,165});
states[200] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99},new int[]{-56,201,-8,182,-1,79,-6,81,-7,181,-59,92,-60,98,-61,109});
states[201] = new State(new int[]{35,202,41,179});
states[202] = new State(new int[]{46,203});
states[203] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-65,204,-5,12,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-66,172});
states[204] = new State(-55);
states[205] = new State(-18);
states[206] = new State(-19);
states[207] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,208,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[208] = new State(new int[]{42,209,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[209] = new State(new int[]{23,221},new int[]{-34,210});
states[210] = new State(new int[]{8,212,7,218,43,-116,26,-116,25,-116},new int[]{-30,211,-29,217});
states[211] = new State(-112);
states[212] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,213,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[213] = new State(new int[]{42,214,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[214] = new State(new int[]{23,221},new int[]{-34,215});
states[215] = new State(new int[]{8,212,7,218,43,-116,26,-116,25,-116},new int[]{-30,216,-29,217});
states[216] = new State(-113);
states[217] = new State(-114);
states[218] = new State(new int[]{42,219});
states[219] = new State(new int[]{23,221},new int[]{-34,220});
states[220] = new State(-115);
states[221] = new State(new int[]{63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,34,198,6,207,5,227,3,232,10,248,11,251,12,253,15,255,17,264,20,266,9,273,13,300,14,308},new int[]{-33,222,-25,315,-23,8,-8,9,-1,79,-6,197,-7,181,-59,92,-60,98,-61,109,-22,205,-24,206,-26,225,-27,226,-28,231,-17,247,-18,250,-19,252,-20,254,-21,263,-31,265,-16,270,-44,271,-48,299});
states[222] = new State(new int[]{26,313,43,314},new int[]{-55,223});
states[223] = new State(new int[]{24,224,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,34,198,6,207,5,227,3,232,10,248,11,251,12,253,15,255,17,264,20,266,9,273,13,300,14,308},new int[]{-25,7,-23,8,-8,9,-1,79,-6,197,-7,181,-59,92,-60,98,-61,109,-22,205,-24,206,-26,225,-27,226,-28,231,-17,247,-18,250,-19,252,-20,254,-21,263,-31,265,-16,270,-44,271,-48,299});
states[224] = new State(-150);
states[225] = new State(-20);
states[226] = new State(-21);
states[227] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,228,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[228] = new State(new int[]{42,229,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[229] = new State(new int[]{23,221},new int[]{-34,230});
states[230] = new State(-117);
states[231] = new State(-22);
states[232] = new State(new int[]{63,80},new int[]{-1,233});
states[233] = new State(new int[]{4,234,41,238});
states[234] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,235,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[235] = new State(new int[]{42,236,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[236] = new State(new int[]{23,221},new int[]{-34,237});
states[237] = new State(-118);
states[238] = new State(new int[]{63,80},new int[]{-43,239,-1,246});
states[239] = new State(new int[]{4,240,41,244});
states[240] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,241,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[241] = new State(new int[]{42,242,6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59});
states[242] = new State(new int[]{23,221},new int[]{-34,243});
states[243] = new State(-119);
states[244] = new State(new int[]{63,80},new int[]{-1,245});
states[245] = new State(-121);
states[246] = new State(-120);
states[247] = new State(-23);
states[248] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127,43,-124,26,-124,25,-124},new int[]{-65,249,-5,12,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-66,172});
states[249] = new State(-123);
states[250] = new State(-24);
states[251] = new State(-125);
states[252] = new State(-25);
states[253] = new State(-126);
states[254] = new State(-26);
states[255] = new State(new int[]{63,80},new int[]{-40,256,-2,262,-1,261});
states[256] = new State(new int[]{41,257,43,-36,26,-36,25,-36});
states[257] = new State(new int[]{63,80},new int[]{-2,258,-1,261});
states[258] = new State(new int[]{40,259,41,-41,43,-41,26,-41,25,-41});
states[259] = new State(new int[]{63,80},new int[]{-1,260});
states[260] = new State(-39);
states[261] = new State(-38);
states[262] = new State(new int[]{40,259,41,-40,43,-40,26,-40,25,-40});
states[263] = new State(-27);
states[264] = new State(-34);
states[265] = new State(-28);
states[266] = new State(new int[]{34,267});
states[267] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127,35,-177},new int[]{-15,268,-14,72,-10,116,-5,117,-8,68,-1,76,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-62,134});
states[268] = new State(new int[]{35,269});
states[269] = new State(-35);
states[270] = new State(-29);
states[271] = new State(new int[]{23,221},new int[]{-34,272});
states[272] = new State(-151);
states[273] = new State(new int[]{63,80},new int[]{-3,274,-1,298});
states[274] = new State(new int[]{34,275});
states[275] = new State(new int[]{63,80,59,289,73,293,35,-170},new int[]{-39,276,-38,282,-37,297,-36,285,-1,288});
states[276] = new State(new int[]{35,277});
states[277] = new State(new int[]{42,278,44,279});
states[278] = new State(-152);
states[279] = new State(new int[]{63,80},new int[]{-45,280,-46,135,-1,144,-47,145});
states[280] = new State(new int[]{42,281});
states[281] = new State(-153);
states[282] = new State(new int[]{41,283,35,-169});
states[283] = new State(new int[]{63,80,59,289,73,293},new int[]{-37,284,-36,285,-1,288});
states[284] = new State(-168);
states[285] = new State(new int[]{42,286});
states[286] = new State(new int[]{63,80},new int[]{-45,287,-46,135,-1,144,-47,145});
states[287] = new State(-164);
states[288] = new State(-163);
states[289] = new State(new int[]{63,80},new int[]{-36,290,-1,288});
states[290] = new State(new int[]{42,291});
states[291] = new State(new int[]{63,80},new int[]{-45,292,-46,135,-1,144,-47,145});
states[292] = new State(-165);
states[293] = new State(new int[]{63,80},new int[]{-36,294,-1,288});
states[294] = new State(new int[]{42,295});
states[295] = new State(new int[]{63,80},new int[]{-45,296,-46,135,-1,144,-47,145});
states[296] = new State(-166);
states[297] = new State(-167);
states[298] = new State(-122);
states[299] = new State(-30);
states[300] = new State(new int[]{63,80},new int[]{-42,301,-41,307,-1,304});
states[301] = new State(new int[]{41,302,43,-31,26,-31,25,-31});
states[302] = new State(new int[]{63,80},new int[]{-41,303,-1,304});
states[303] = new State(-45);
states[304] = new State(new int[]{16,305,41,-43,43,-43,26,-43,25,-43});
states[305] = new State(new int[]{63,80},new int[]{-1,306});
states[306] = new State(-42);
states[307] = new State(-44);
states[308] = new State(new int[]{63,80},new int[]{-1,309});
states[309] = new State(new int[]{13,310});
states[310] = new State(new int[]{59,312,63,80},new int[]{-42,311,-41,307,-1,304});
states[311] = new State(new int[]{41,302,43,-32,26,-32,25,-32});
states[312] = new State(-33);
states[313] = new State(-178);
states[314] = new State(-179);
states[315] = new State(-15);
states[316] = new State(new int[]{25,-180,63,-179,28,-179,29,-179,30,-179,31,-179,45,-179,33,-179,32,-179,38,-179,36,-179,34,-179,6,-179,5,-179,3,-179,10,-179,11,-179,12,-179,15,-179,17,-179,20,-179,9,-179,13,-179,14,-179});
states[317] = new State(new int[]{25,318});
states[318] = new State(-3);
states[319] = new State(new int[]{27,321,58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,320,-8,68,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[320] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,25,-4});
states[321] = new State(new int[]{63,80},new int[]{-4,322,-1,323});
states[322] = new State(-5);
states[323] = new State(new int[]{38,139,25,-8},new int[]{-49,324});
states[324] = new State(-9);
states[325] = new State(new int[]{63,80},new int[]{-13,326,-2,327,-1,261});
states[326] = new State(-6);
states[327] = new State(new int[]{40,259,38,139,25,-10},new int[]{-49,328});
states[328] = new State(-11);
states[329] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,333},new int[]{-52,330,-5,331,-8,332,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126,-23,335,-22,336});
states[330] = new State(-7);
states[331] = new State(new int[]{6,13,57,17,59,19,60,21,58,23,64,25,65,27,66,29,67,31,68,33,69,35,70,37,71,39,61,41,62,43,76,45,77,47,78,49,79,51,75,53,73,55,4,57,72,59,25,-12});
states[332] = new State(new int[]{34,69,40,163,38,165,22,168,46,10,41,175,42,183,47,187,48,188,49,189,50,190,51,191,52,192,53,193,54,194,55,195,56,196,6,-93,57,-93,59,-93,60,-93,58,-93,64,-93,65,-93,66,-93,67,-93,68,-93,69,-93,70,-93,71,-93,61,-93,62,-93,76,-93,77,-93,78,-93,79,-93,75,-93,73,-93,4,-93,72,-93,25,-93},new int[]{-57,173});
states[333] = new State(new int[]{58,62,72,64,74,66,63,80,28,85,29,86,30,87,31,88,45,89,33,90,32,91,38,93,36,99,21,111,34,127},new int[]{-5,128,-8,334,-1,79,-6,81,-7,82,-59,92,-60,98,-61,109,-11,110,-12,125,-64,126});
states[334] = new State(new int[]{41,200,34,69,40,163,38,165,22,168,35,-93,6,-93,57,-93,59,-93,60,-93,58,-93,64,-93,65,-93,66,-93,67,-93,68,-93,69,-93,70,-93,71,-93,61,-93,62,-93,76,-93,77,-93,78,-93,79,-93,75,-93,73,-93,4,-93,72,-93});
states[335] = new State(-13);
states[336] = new State(-14);
rules[1] = new Rule(-67, new int[]{-35,2});
rules[2] = new Rule(-35, new int[]{-33,-54,25});
rules[3] = new Rule(-35, new int[]{-51,25});
rules[4] = new Rule(-51, new int[]{80,-5});
rules[5] = new Rule(-51, new int[]{80,27,-4});
rules[6] = new Rule(-51, new int[]{82,-13});
rules[7] = new Rule(-51, new int[]{81,-52});
rules[8] = new Rule(-4, new int[]{-1});
rules[9] = new Rule(-4, new int[]{-1,-49});
rules[10] = new Rule(-13, new int[]{-2});
rules[11] = new Rule(-13, new int[]{-2,-49});
rules[12] = new Rule(-52, new int[]{-5});
rules[13] = new Rule(-52, new int[]{-23});
rules[14] = new Rule(-52, new int[]{-22});
rules[15] = new Rule(-33, new int[]{-25});
rules[16] = new Rule(-33, new int[]{-33,-55,-25});
rules[17] = new Rule(-25, new int[]{-23});
rules[18] = new Rule(-25, new int[]{-22});
rules[19] = new Rule(-25, new int[]{-24});
rules[20] = new Rule(-25, new int[]{-26});
rules[21] = new Rule(-25, new int[]{-27});
rules[22] = new Rule(-25, new int[]{-28});
rules[23] = new Rule(-25, new int[]{-17});
rules[24] = new Rule(-25, new int[]{-18});
rules[25] = new Rule(-25, new int[]{-19});
rules[26] = new Rule(-25, new int[]{-20});
rules[27] = new Rule(-25, new int[]{-21});
rules[28] = new Rule(-25, new int[]{-31});
rules[29] = new Rule(-25, new int[]{-16});
rules[30] = new Rule(-25, new int[]{-48});
rules[31] = new Rule(-48, new int[]{13,-42});
rules[32] = new Rule(-48, new int[]{14,-1,13,-42});
rules[33] = new Rule(-48, new int[]{14,-1,13,59});
rules[34] = new Rule(-21, new int[]{17});
rules[35] = new Rule(-31, new int[]{20,34,-15,35});
rules[36] = new Rule(-20, new int[]{15,-40});
rules[37] = new Rule(-1, new int[]{63});
rules[38] = new Rule(-2, new int[]{-1});
rules[39] = new Rule(-2, new int[]{-2,40,-1});
rules[40] = new Rule(-40, new int[]{-2});
rules[41] = new Rule(-40, new int[]{-40,41,-2});
rules[42] = new Rule(-41, new int[]{-1,16,-1});
rules[43] = new Rule(-41, new int[]{-1});
rules[44] = new Rule(-42, new int[]{-41});
rules[45] = new Rule(-42, new int[]{-42,41,-41});
rules[46] = new Rule(-58, new int[]{-5,42,-5});
rules[47] = new Rule(-53, new int[]{-58});
rules[48] = new Rule(-53, new int[]{-53,41,-58});
rules[49] = new Rule(-22, new int[]{-8,42,-45});
rules[50] = new Rule(-22, new int[]{-8,42,-45,46,-5});
rules[51] = new Rule(-65, new int[]{-5});
rules[52] = new Rule(-65, new int[]{-66});
rules[53] = new Rule(-23, new int[]{-8,46,-65});
rules[54] = new Rule(-23, new int[]{-8,-57,-65});
rules[55] = new Rule(-23, new int[]{34,-8,41,-56,35,46,-65});
rules[56] = new Rule(-23, new int[]{-8,41,-56,46,-65});
rules[57] = new Rule(-57, new int[]{47});
rules[58] = new Rule(-57, new int[]{48});
rules[59] = new Rule(-57, new int[]{49});
rules[60] = new Rule(-57, new int[]{50});
rules[61] = new Rule(-57, new int[]{51});
rules[62] = new Rule(-57, new int[]{52});
rules[63] = new Rule(-57, new int[]{53});
rules[64] = new Rule(-57, new int[]{54});
rules[65] = new Rule(-57, new int[]{55});
rules[66] = new Rule(-57, new int[]{56});
rules[67] = new Rule(-5, new int[]{-5,6,-5,7,-5});
rules[68] = new Rule(-5, new int[]{-5,57,-5});
rules[69] = new Rule(-5, new int[]{-5,59,-5});
rules[70] = new Rule(-5, new int[]{-5,60,-5});
rules[71] = new Rule(-5, new int[]{-5,58,-5});
rules[72] = new Rule(-5, new int[]{-5,64,-5});
rules[73] = new Rule(-5, new int[]{-5,65,-5});
rules[74] = new Rule(-5, new int[]{-5,66,-5});
rules[75] = new Rule(-5, new int[]{-5,67,-5});
rules[76] = new Rule(-5, new int[]{-5,68,-5});
rules[77] = new Rule(-5, new int[]{-5,69,-5});
rules[78] = new Rule(-5, new int[]{-5,70,-5});
rules[79] = new Rule(-5, new int[]{-5,71,-5});
rules[80] = new Rule(-5, new int[]{-5,61,-5});
rules[81] = new Rule(-5, new int[]{-5,62,-5});
rules[82] = new Rule(-5, new int[]{-5,76,-5});
rules[83] = new Rule(-5, new int[]{-5,77,-5});
rules[84] = new Rule(-5, new int[]{-5,78,-5});
rules[85] = new Rule(-5, new int[]{-5,79,-5});
rules[86] = new Rule(-5, new int[]{-5,75,-5});
rules[87] = new Rule(-5, new int[]{-5,73,-5});
rules[88] = new Rule(-5, new int[]{-5,4,-5});
rules[89] = new Rule(-5, new int[]{-5,72,4,-5});
rules[90] = new Rule(-5, new int[]{58,-5});
rules[91] = new Rule(-5, new int[]{72,-5});
rules[92] = new Rule(-5, new int[]{74,-5});
rules[93] = new Rule(-5, new int[]{-8});
rules[94] = new Rule(-5, new int[]{-7});
rules[95] = new Rule(-5, new int[]{-11});
rules[96] = new Rule(-5, new int[]{-12});
rules[97] = new Rule(-5, new int[]{-64});
rules[98] = new Rule(-5, new int[]{34,-5,35});
rules[99] = new Rule(-64, new int[]{34,-5,41,-32,35});
rules[100] = new Rule(-66, new int[]{-5,41,-32});
rules[101] = new Rule(-12, new int[]{-8,22,-45});
rules[102] = new Rule(-11, new int[]{21,-45,34,-15,35});
rules[103] = new Rule(-7, new int[]{28});
rules[104] = new Rule(-7, new int[]{29});
rules[105] = new Rule(-7, new int[]{30});
rules[106] = new Rule(-7, new int[]{31});
rules[107] = new Rule(-7, new int[]{45});
rules[108] = new Rule(-7, new int[]{33});
rules[109] = new Rule(-7, new int[]{32});
rules[110] = new Rule(-32, new int[]{-5});
rules[111] = new Rule(-32, new int[]{-32,41,-5});
rules[112] = new Rule(-24, new int[]{6,-5,42,-34,-30});
rules[113] = new Rule(-30, new int[]{8,-5,42,-34,-30});
rules[114] = new Rule(-30, new int[]{-29});
rules[115] = new Rule(-29, new int[]{7,42,-34});
rules[116] = new Rule(-29, new int[]{});
rules[117] = new Rule(-27, new int[]{5,-5,42,-34});
rules[118] = new Rule(-28, new int[]{3,-1,4,-5,42,-34});
rules[119] = new Rule(-28, new int[]{3,-1,41,-43,4,-5,42,-34});
rules[120] = new Rule(-43, new int[]{-1});
rules[121] = new Rule(-43, new int[]{-43,41,-1});
rules[122] = new Rule(-3, new int[]{-1});
rules[123] = new Rule(-17, new int[]{10,-65});
rules[124] = new Rule(-17, new int[]{10});
rules[125] = new Rule(-18, new int[]{11});
rules[126] = new Rule(-19, new int[]{12});
rules[127] = new Rule(-26, new int[]{-6});
rules[128] = new Rule(-8, new int[]{-1});
rules[129] = new Rule(-8, new int[]{-6});
rules[130] = new Rule(-8, new int[]{-8,40,-1});
rules[131] = new Rule(-8, new int[]{-7,40,-1});
rules[132] = new Rule(-8, new int[]{-59});
rules[133] = new Rule(-8, new int[]{-60});
rules[134] = new Rule(-8, new int[]{-61});
rules[135] = new Rule(-8, new int[]{-8,38,-5,39});
rules[136] = new Rule(-8, new int[]{38,-62,39});
rules[137] = new Rule(-8, new int[]{36,-62,37});
rules[138] = new Rule(-8, new int[]{36,-63,37});
rules[139] = new Rule(-56, new int[]{-8});
rules[140] = new Rule(-56, new int[]{-56,41,-8});
rules[141] = new Rule(-62, new int[]{-5,3,-1,4,-5,-9});
rules[142] = new Rule(-63, new int[]{-58,3,-1,4,-5,-9});
rules[143] = new Rule(-61, new int[]{36,-53,37});
rules[144] = new Rule(-61, new int[]{36,37});
rules[145] = new Rule(-60, new int[]{36,-32,37});
rules[146] = new Rule(-59, new int[]{38,-32,39});
rules[147] = new Rule(-59, new int[]{38,39});
rules[148] = new Rule(-9, new int[]{});
rules[149] = new Rule(-9, new int[]{6,-5});
rules[150] = new Rule(-34, new int[]{23,-33,-55,24});
rules[151] = new Rule(-16, new int[]{-44,-34});
rules[152] = new Rule(-44, new int[]{9,-3,34,-39,35,42});
rules[153] = new Rule(-44, new int[]{9,-3,34,-39,35,44,-45,42});
rules[154] = new Rule(-6, new int[]{-8,34,-15,35});
rules[155] = new Rule(-46, new int[]{-1});
rules[156] = new Rule(-46, new int[]{-46,40,-1});
rules[157] = new Rule(-45, new int[]{-46});
rules[158] = new Rule(-45, new int[]{-47});
rules[159] = new Rule(-47, new int[]{-46,-49});
rules[160] = new Rule(-49, new int[]{38,-50,39});
rules[161] = new Rule(-50, new int[]{-45});
rules[162] = new Rule(-50, new int[]{-50,41,-45});
rules[163] = new Rule(-36, new int[]{-1});
rules[164] = new Rule(-37, new int[]{-36,42,-45});
rules[165] = new Rule(-37, new int[]{59,-36,42,-45});
rules[166] = new Rule(-37, new int[]{73,-36,42,-45});
rules[167] = new Rule(-38, new int[]{-37});
rules[168] = new Rule(-38, new int[]{-38,41,-37});
rules[169] = new Rule(-39, new int[]{-38});
rules[170] = new Rule(-39, new int[]{});
rules[171] = new Rule(-10, new int[]{-5});
rules[172] = new Rule(-10, new int[]{-1,46,-5});
rules[173] = new Rule(-14, new int[]{-10});
rules[174] = new Rule(-14, new int[]{-14,41,-10});
rules[175] = new Rule(-15, new int[]{-14});
rules[176] = new Rule(-15, new int[]{-62});
rules[177] = new Rule(-15, new int[]{});
rules[178] = new Rule(-55, new int[]{26});
rules[179] = new Rule(-55, new int[]{43});
rules[180] = new Rule(-54, new int[]{43});
rules[181] = new Rule(-54, new int[]{});
}
protected override void Initialize() {
this.InitSpecialTokens((int)Tokens.error, (int)Tokens.EOF);
this.InitStates(states);
this.InitRules(rules);
this.InitNonTerminals(nonTerms);
}
protected override void DoAction(int action)
{
switch (action)
{
case 2: // program -> stmt_list, optional_semicolon, END_OF_FILE
{
// main program
if (!is_unit_to_be_parsed) {
var stl = ValueStack[ValueStack.Depth-3].stn as statement_list;
stl.left_logical_bracket = new token_info("");
stl.right_logical_bracket = new token_info("");
var bl = new block(new declarations(), stl, CurrentLocationSpan);
root = CurrentSemanticValue.stn = NewProgramModule(null, null, new uses_list(), bl, ValueStack[ValueStack.Depth-2].ob, CurrentLocationSpan);
root.source_context = bl.source_context;
}
// unit
else {
var interface_part = new interface_node(new declarations(), new uses_list(), null, null);
var initialization_part = new initfinal_part(null, ValueStack[ValueStack.Depth-3].stn as statement_list, null, null, null, CurrentLocationSpan);
root = CurrentSemanticValue.stn = new unit_module(
new unit_name(new ident(Path.GetFileNameWithoutExtension(parserTools.currentFileName)),
UnitHeaderKeyword.Unit, CurrentLocationSpan), interface_part, null,
initialization_part.initialization_sect,
initialization_part.finalization_sect, null, CurrentLocationSpan);
}
}
break;
case 3: // program -> parts, END_OF_FILE
{
root = ValueStack[ValueStack.Depth-2].stn;
}
break;
case 4: // parts -> tkParseModeExpression, expr
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].ex; }
break;
case 5: // parts -> tkParseModeExpression, DECLTYPE, type_decl_identifier
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].id; }
break;
case 6: // parts -> tkParseModeType, variable_as_type
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].ex; }
break;
case 7: // parts -> tkParseModeStatement, stmt_or_expression
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; }
break;
case 8: // type_decl_identifier -> ident
{
CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id;
}
break;
case 9: // type_decl_identifier -> ident, template_type_params
{
CurrentSemanticValue.id = new template_type_name(ValueStack[ValueStack.Depth-2].id.name, ValueStack[ValueStack.Depth-1].stn as ident_list, CurrentLocationSpan);
}
break;
case 10: // variable_as_type -> dotted_ident
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id;
}
break;
case 11: // variable_as_type -> dotted_ident, template_type_params
{
CurrentSemanticValue.ex = new ident_with_templateparams(ValueStack[ValueStack.Depth-2].id as addressed_value, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan);
}
break;
case 12: // stmt_or_expression -> expr
{ CurrentSemanticValue.stn = new expression_as_statement(ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan);}
break;
case 13: // stmt_or_expression -> assign_stmt
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; }
break;
case 14: // stmt_or_expression -> var_stmt
{ CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; }
break;
case 15: // stmt_list -> stmt
{
CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan);
}
break;
case 16: // stmt_list -> stmt_list, end_of_line, stmt
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as statement_list).Add(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan);
}
break;
case 17: // stmt -> assign_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 18: // stmt -> var_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 19: // stmt -> if_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 20: // stmt -> proc_func_call_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 21: // stmt -> while_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 22: // stmt -> for_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 23: // stmt -> return_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 24: // stmt -> break_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 25: // stmt -> continue_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 26: // stmt -> global_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 27: // stmt -> pass_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 28: // stmt -> exit_stmt
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 29: // stmt -> proc_func_decl
{
CurrentSemanticValue.stn = new declarations_as_statement(new declarations(ValueStack[ValueStack.Depth-1].stn as procedure_definition, CurrentLocationSpan), CurrentLocationSpan);
}
break;
case 30: // stmt -> import_clause
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 31: // import_clause -> IMPORT, ident_as_ident_list
{
CurrentSemanticValue.stn = new import_statement(ValueStack[ValueStack.Depth-1].stn as as_statement_list, CurrentLocationSpan);
}
break;
case 32: // import_clause -> FROM, ident, IMPORT, ident_as_ident_list
{
CurrentSemanticValue.stn = new from_import_statement(ValueStack[ValueStack.Depth-3].id as ident, false, ValueStack[ValueStack.Depth-1].stn as as_statement_list, CurrentLocationSpan);
}
break;
case 33: // import_clause -> FROM, ident, IMPORT, STAR
{
CurrentSemanticValue.stn = new from_import_statement(ValueStack[ValueStack.Depth-3].id as ident, true, null, CurrentLocationSpan);
}
break;
case 34: // pass_stmt -> PASS
{
CurrentSemanticValue.stn = new empty_statement();
}
break;
case 35: // exit_stmt -> EXIT, LPAR, optional_act_param_list, RPAR
{
parserTools.AddErrorFromResource("UNSUPPORTED_CONSTRUCTION_{0}", CurrentLocationSpan, "exit");
}
break;
case 36: // global_stmt -> GLOBAL, dotted_ident_list
{
CurrentSemanticValue.stn = new global_statement(ValueStack[ValueStack.Depth-1].stn as ident_list, CurrentLocationSpan);
}
break;
case 37: // ident -> ID
{
CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id;
}
break;
case 38: // dotted_ident -> ident
{
CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id;
}
break;
case 39: // dotted_ident -> dotted_ident, DOT, ident
{
CurrentSemanticValue.id = new ident(ValueStack[ValueStack.Depth-3].id.name + "." + ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan);
}
break;
case 40: // dotted_ident_list -> dotted_ident
{
CurrentSemanticValue.stn = new ident_list(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 41: // dotted_ident_list -> dotted_ident_list, COMMA, dotted_ident
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as ident_list).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 42: // ident_as_ident -> ident, AS, ident
{
CurrentSemanticValue.stn = new as_statement(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 43: // ident_as_ident -> ident
{
CurrentSemanticValue.stn = new as_statement(ValueStack[ValueStack.Depth-1].id, ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 44: // ident_as_ident_list -> ident_as_ident
{
CurrentSemanticValue.stn = new as_statement_list(ValueStack[ValueStack.Depth-1].stn as as_statement, CurrentLocationSpan);
}
break;
case 45: // ident_as_ident_list -> ident_as_ident_list, COMMA, ident_as_ident
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as as_statement_list).Add(ValueStack[ValueStack.Depth-1].stn as as_statement, CurrentLocationSpan);
}
break;
case 46: // expr_mapping -> expr, COLON, expr
{
expression_list el = new expression_list(new List<expression> { ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex }, CurrentLocationSpan);
CurrentSemanticValue.ex = new tuple_node(el, CurrentLocationSpan);
}
break;
case 47: // expr_mapping_list -> expr_mapping
{
CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 48: // expr_mapping_list -> expr_mapping_list, COMMA, expr_mapping
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 49: // var_stmt -> variable, COLON, type_ref
{
var vds = new var_def_statement(new ident_list(ValueStack[ValueStack.Depth-3].ex as ident, LocationStack[LocationStack.Depth-3]), ValueStack[ValueStack.Depth-1].td, null, definition_attribute.None, false, CurrentLocationSpan);
CurrentSemanticValue.stn = new var_statement(vds, CurrentLocationSpan);
}
break;
case 50: // var_stmt -> variable, COLON, type_ref, ASSIGN, expr
{
var vds = new var_def_statement(new ident_list(ValueStack[ValueStack.Depth-5].ex as ident, LocationStack[LocationStack.Depth-5]), ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].ex, definition_attribute.None, false, CurrentLocationSpan);
CurrentSemanticValue.stn = new var_statement(vds, CurrentLocationSpan);
}
break;
case 51: // assign_right_part -> expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 52: // assign_right_part -> turbo_tuple_expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 53: // assign_stmt -> variable, ASSIGN, assign_right_part
{
if (!(ValueStack[ValueStack.Depth-3].ex is addressed_value))
parserTools.AddErrorFromResource("LEFT_SIDE_CANNOT_BE_ASSIGNED_TO", CurrentLocationSpan);
CurrentSemanticValue.stn = new assign(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 54: // assign_stmt -> variable, assign_type, assign_right_part
{
if (!(ValueStack[ValueStack.Depth-3].ex is addressed_value))
parserTools.AddErrorFromResource("LEFT_SIDE_CANNOT_BE_ASSIGNED_TO", CurrentLocationSpan);
CurrentSemanticValue.stn = new assign(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 55: // assign_stmt -> LPAR, variable, COMMA, variable_list, RPAR, ASSIGN,
// assign_right_part
{
// if False:
if (ValueStack[ValueStack.Depth-2].op.type != Operators.Assignment)
parserTools.AddErrorFromResource("ONLY_BASE_ASSIGNMENT_FOR_TUPLE", LocationStack[LocationStack.Depth-2]);
(ValueStack[ValueStack.Depth-4].ob as addressed_value_list).Insert(0, ValueStack[ValueStack.Depth-6].ex as addressed_value);
(ValueStack[ValueStack.Depth-4].ob as syntax_tree_node).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-7], LocationStack[LocationStack.Depth-6], LocationStack[LocationStack.Depth-5], LocationStack[LocationStack.Depth-4], LocationStack[LocationStack.Depth-3]);
CurrentSemanticValue.stn = new assign_tuple(ValueStack[ValueStack.Depth-4].ob as addressed_value_list, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 56: // assign_stmt -> variable, COMMA, variable_list, ASSIGN, assign_right_part
{
// if False:
if (ValueStack[ValueStack.Depth-2].op.type != Operators.Assignment)
parserTools.AddErrorFromResource("ONLY_BASE_ASSIGNMENT_FOR_TUPLE", LocationStack[LocationStack.Depth-2]);
(ValueStack[ValueStack.Depth-3].ob as addressed_value_list).Insert(0, ValueStack[ValueStack.Depth-5].ex as addressed_value);
(ValueStack[ValueStack.Depth-3].ob as syntax_tree_node).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-5], LocationStack[LocationStack.Depth-4], LocationStack[LocationStack.Depth-3]);
CurrentSemanticValue.stn = new assign_tuple(ValueStack[ValueStack.Depth-3].ob as addressed_value_list, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 57: // assign_type -> PLUSEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 58: // assign_type -> MINUSEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 59: // assign_type -> STAREQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 60: // assign_type -> DIVEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 61: // assign_type -> BINXOREQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 62: // assign_type -> SHLEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 63: // assign_type -> SHREQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 64: // assign_type -> BINANDEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 65: // assign_type -> BINOREQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 66: // assign_type -> INTDIVISIONEQUAL
{
CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op;
}
break;
case 67: // expr -> expr, IF, expr, ELSE, expr
{
CurrentSemanticValue.ex = new question_colon_expression(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 68: // expr -> expr, PLUS, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 69: // expr -> expr, STAR, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 70: // expr -> expr, DIVIDE, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 71: // expr -> expr, MINUS, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 72: // expr -> expr, LESS, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 73: // expr -> expr, GREATER, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 74: // expr -> expr, LESSEQUAL, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 75: // expr -> expr, GREATEREQUAL, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 76: // expr -> expr, EQUAL, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 77: // expr -> expr, NOTEQUAL, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 78: // expr -> expr, AND, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 79: // expr -> expr, OR, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 80: // expr -> expr, SLASHSLASH, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 81: // expr -> expr, PERCENTAGE, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 82: // expr -> expr, SHL, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 83: // expr -> expr, SHR, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 84: // expr -> expr, BINAND, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 85: // expr -> expr, BINOR, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 86: // expr -> expr, BINXOR, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 87: // expr -> expr, STARSTAR, expr
{
addressed_value method_name = new ident("!pow", CurrentLocationSpan);
expression_list el = new expression_list(new List<expression> { ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex }, CurrentLocationSpan);
CurrentSemanticValue.ex = new method_call(method_name, el, CurrentLocationSpan);
}
break;
case 88: // expr -> expr, IN, expr
{
CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, Operators.In, CurrentLocationSpan);
}
break;
case 89: // expr -> expr, NOT, IN, expr
{
// $$ = new bin_expr($1, $4, Operators.NotIn, @$);
CurrentSemanticValue.ex = new un_expr(new bin_expr(ValueStack[ValueStack.Depth-4].ex, ValueStack[ValueStack.Depth-1].ex, Operators.In, CurrentLocationSpan),Operators.LogicalNOT,CurrentLocationSpan);
}
break;
case 90: // expr -> MINUS, expr
{
CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 91: // expr -> NOT, expr
{
CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 92: // expr -> BINNOT, expr
{
CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan);
}
break;
case 93: // expr -> variable
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 94: // expr -> const_value
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 95: // expr -> new_expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 96: // expr -> is_expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 97: // expr -> tuple_expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 98: // expr -> LPAR, expr, RPAR
{
CurrentSemanticValue.ex = new bracket_expr(ValueStack[ValueStack.Depth-2].ex, CurrentLocationSpan);
}
break;
case 99: // tuple_expr -> LPAR, expr, COMMA, expr_list, RPAR
{
// inherited from PABC
if ((ValueStack[ValueStack.Depth-2].stn as expression_list).Count > 6)
parserTools.AddErrorFromResource("TUPLE_ELEMENTS_COUNT_MUST_BE_LESSEQUAL_7", CurrentLocationSpan);
(ValueStack[ValueStack.Depth-2].stn as expression_list).Insert(0, ValueStack[ValueStack.Depth-4].ex);
CurrentSemanticValue.ex = new tuple_node(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan);
}
break;
case 100: // turbo_tuple_expr -> expr, COMMA, expr_list
{
// inherited from PABC
if ((ValueStack[ValueStack.Depth-1].stn as expression_list).Count > 6)
parserTools.AddErrorFromResource("TUPLE_ELEMENTS_COUNT_MUST_BE_LESSEQUAL_7", CurrentLocationSpan);
(ValueStack[ValueStack.Depth-1].stn as expression_list).Insert(0, ValueStack[ValueStack.Depth-3].ex);
CurrentSemanticValue.ex = new tuple_node(ValueStack[ValueStack.Depth-1].stn as expression_list, CurrentLocationSpan);
}
break;
case 101: // is_expr -> variable, IS, type_ref
{
CurrentSemanticValue.ex = parserTools.NewAsIsExpr(ValueStack[ValueStack.Depth-3].ex, op_typecast.is_op, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan);
}
break;
case 102: // new_expr -> NEW, type_ref, LPAR, optional_act_param_list, RPAR
{
CurrentSemanticValue.ex = new new_expr(ValueStack[ValueStack.Depth-4].td, ValueStack[ValueStack.Depth-2].stn as expression_list, false, null, CurrentLocationSpan);
}
break;
case 103: // const_value -> INTNUM
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 104: // const_value -> REALNUM
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 105: // const_value -> TRUE
{
CurrentSemanticValue.ex = new ident("true", CurrentLocationSpan);
}
break;
case 106: // const_value -> FALSE
{
CurrentSemanticValue.ex = new ident("false", CurrentLocationSpan);
}
break;
case 107: // const_value -> STRINGNUM
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].stn as literal;
}
break;
case 108: // const_value -> FSTRINGNUM
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 109: // const_value -> BIGINT
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 110: // expr_list -> expr
{
CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 111: // expr_list -> expr_list, COMMA, expr
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 112: // if_stmt -> IF, expr, COLON, block, optional_elif
{
CurrentSemanticValue.stn = new if_node(ValueStack[ValueStack.Depth-4].ex, ValueStack[ValueStack.Depth-2].stn as statement, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan);
}
break;
case 113: // optional_elif -> ELIF, expr, COLON, block, optional_elif
{
CurrentSemanticValue.stn = new if_node(ValueStack[ValueStack.Depth-4].ex, ValueStack[ValueStack.Depth-2].stn as statement, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan);
}
break;
case 114: // optional_elif -> optional_else
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 115: // optional_else -> ELSE, COLON, block
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 116: // optional_else -> /* empty */
{
CurrentSemanticValue.stn = null;
}
break;
case 117: // while_stmt -> WHILE, expr, COLON, block
{
CurrentSemanticValue.stn = new while_node(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, WhileCycleType.While, CurrentLocationSpan);
}
break;
case 118: // for_stmt -> FOR, ident, IN, expr, COLON, block
{
CurrentSemanticValue.stn = new foreach_stmt(ValueStack[ValueStack.Depth-5].id, new no_type_foreach(), ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, null, CurrentLocationSpan);
}
break;
case 119: // for_stmt -> FOR, ident, COMMA, ident_list, IN, expr, COLON, block
{
(ValueStack[ValueStack.Depth-5].stn as ident_list).AddFirst(ValueStack[ValueStack.Depth-7].id);
var id = parserTools.NewId("#fe",LocationStack[LocationStack.Depth-5]);
var tttt = new assign_var_tuple(ValueStack[ValueStack.Depth-5].stn as ident_list, id, CurrentLocationSpan);
statement_list nine = ValueStack[ValueStack.Depth-1].stn is statement_list ? ValueStack[ValueStack.Depth-1].stn as statement_list : new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, LocationStack[LocationStack.Depth-1]);
nine.Insert(0, tttt);
var fe = new foreach_stmt(id, new no_type_foreach(), ValueStack[ValueStack.Depth-3].ex, nine, null, CurrentLocationSpan);
fe.ext = ValueStack[ValueStack.Depth-5].stn as ident_list;
CurrentSemanticValue.stn = fe;
}
break;
case 120: // ident_list -> ident
{
CurrentSemanticValue.stn = new ident_list(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 121: // ident_list -> ident_list, COMMA, ident
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as ident_list).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 122: // func_name_ident -> ident
{
CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id;
}
break;
case 123: // return_stmt -> RETURN, assign_right_part
{
CurrentSemanticValue.stn = new return_statement(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 124: // return_stmt -> RETURN
{
CurrentSemanticValue.stn = new return_statement(null, CurrentLocationSpan);
}
break;
case 125: // break_stmt -> BREAK
{
CurrentSemanticValue.stn = new procedure_call(new ident("break", CurrentLocationSpan), true, CurrentLocationSpan);
}
break;
case 126: // continue_stmt -> CONTINUE
{
CurrentSemanticValue.stn = new procedure_call(new ident("continue", CurrentLocationSpan), true, CurrentLocationSpan);
}
break;
case 127: // proc_func_call_stmt -> proc_func_call
{
CurrentSemanticValue.stn = new procedure_call(ValueStack[ValueStack.Depth-1].ex as addressed_value, ValueStack[ValueStack.Depth-1].ex is ident, CurrentLocationSpan);
}
break;
case 128: // variable -> ident
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id;
}
break;
case 129: // variable -> proc_func_call
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 130: // variable -> variable, DOT, ident
{
CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan);
}
break;
case 131: // variable -> const_value, DOT, ident
{
CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan);
}
break;
case 132: // variable -> list_constant
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 133: // variable -> set_constant
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 134: // variable -> dict_constant
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 135: // variable -> variable, LBRACKET, expr, RBRACKET
{
var el = new expression_list(ValueStack[ValueStack.Depth-2].ex as expression, CurrentLocationSpan);
CurrentSemanticValue.ex = new indexer(ValueStack[ValueStack.Depth-4].ex as addressed_value, el, CurrentLocationSpan);
}
break;
case 136: // variable -> LBRACKET, generator_object, RBRACKET
{
dot_node dn = new dot_node(ValueStack[ValueStack.Depth-2].ex as addressed_value, (new ident("ToList")) as addressed_value, ValueStack[ValueStack.Depth-2].ex.source_context);
CurrentSemanticValue.ex = new method_call(dn as addressed_value, null, ValueStack[ValueStack.Depth-2].ex.source_context);
}
break;
case 137: // variable -> LBRACE, generator_object, RBRACE
{
dot_node dn = new dot_node(ValueStack[ValueStack.Depth-2].ex as addressed_value, (new ident("ToSet")) as addressed_value, ValueStack[ValueStack.Depth-2].ex.source_context);
CurrentSemanticValue.ex = new method_call(dn as addressed_value, null, ValueStack[ValueStack.Depth-2].ex.source_context);
}
break;
case 138: // variable -> LBRACE, generator_object_for_dict, RBRACE
{
dot_node dn = new dot_node(ValueStack[ValueStack.Depth-2].ex as addressed_value, (new ident("ToDictionary")) as addressed_value, ValueStack[ValueStack.Depth-2].ex.source_context);
CurrentSemanticValue.ex = new method_call(dn as addressed_value, null, ValueStack[ValueStack.Depth-2].ex.source_context);
}
break;
case 139: // variable_list -> variable
{
CurrentSemanticValue.ob = new addressed_value_list(ValueStack[ValueStack.Depth-1].ex as addressed_value,LocationStack[LocationStack.Depth-1]);
}
break;
case 140: // variable_list -> variable_list, COMMA, variable
{
(ValueStack[ValueStack.Depth-3].ob as addressed_value_list).Add(ValueStack[ValueStack.Depth-1].ex as addressed_value);
(ValueStack[ValueStack.Depth-3].ob as syntax_tree_node).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-3],LocationStack[LocationStack.Depth-2],LocationStack[LocationStack.Depth-1]);
CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-3].ob;
}
break;
case 141: // generator_object -> expr, FOR, ident, IN, expr, optional_condition
{
CurrentSemanticValue.ex = new generator_object(ValueStack[ValueStack.Depth-6].ex, ValueStack[ValueStack.Depth-4].id, ValueStack[ValueStack.Depth-2].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 142: // generator_object_for_dict -> expr_mapping, FOR, ident, IN, expr,
// optional_condition
{
CurrentSemanticValue.ex = new generator_object(ValueStack[ValueStack.Depth-6].ex, ValueStack[ValueStack.Depth-4].id, ValueStack[ValueStack.Depth-2].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 143: // dict_constant -> LBRACE, expr_mapping_list, RBRACE
{
CurrentSemanticValue.ex = new method_call(new ident("Dict", CurrentLocationSpan), ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan);
}
break;
case 144: // dict_constant -> LBRACE, RBRACE
{
CurrentSemanticValue.ex = new method_call(new ident("!empty_dict", CurrentLocationSpan), null, CurrentLocationSpan);
}
break;
case 145: // set_constant -> LBRACE, expr_list, RBRACE
{
CurrentSemanticValue.ex = new pascal_set_constant(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan);
}
break;
case 146: // list_constant -> LBRACKET, expr_list, RBRACKET
{
var acn = new array_const_new(ValueStack[ValueStack.Depth-2].stn as expression_list, '|', CurrentLocationSpan);
var dn = new dot_node(acn as addressed_value, (new ident("ToList", CurrentLocationSpan)) as addressed_value, CurrentLocationSpan);
CurrentSemanticValue.ex = new method_call(dn as addressed_value, null, CurrentLocationSpan);
}
break;
case 147: // list_constant -> LBRACKET, RBRACKET
{
CurrentSemanticValue.ex = new method_call(new ident("!empty_list", CurrentLocationSpan), null, CurrentLocationSpan);
}
break;
case 148: // optional_condition -> /* empty */
{
CurrentSemanticValue.ex = null;
}
break;
case 149: // optional_condition -> IF, expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 150: // block -> INDENT, stmt_list, end_of_line, UNINDENT
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-3].stn as statement_list;
(CurrentSemanticValue.stn as statement_list).left_logical_bracket = ValueStack[ValueStack.Depth-4].ti;
(CurrentSemanticValue.stn as statement_list).right_logical_bracket = ValueStack[ValueStack.Depth-1].ti;
CurrentSemanticValue.stn.source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-3], LocationStack[LocationStack.Depth-2]);
}
break;
case 151: // proc_func_decl -> proc_func_header, block
{
CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-2].td as procedure_header, new block(null, ValueStack[ValueStack.Depth-1].stn as statement_list, LocationStack[LocationStack.Depth-1]), CurrentLocationSpan);
}
break;
case 152: // proc_func_header -> DEF, func_name_ident, LPAR, optional_form_param_list, RPAR,
// COLON
{
CurrentSemanticValue.td = new procedure_header(ValueStack[ValueStack.Depth-3].stn as formal_parameters, new procedure_attributes_list(new List<procedure_attribute>()), new method_name(null,null, ValueStack[ValueStack.Depth-5].id, null, LocationStack[LocationStack.Depth-5]), null, CurrentLocationSpan);
}
break;
case 153: // proc_func_header -> DEF, func_name_ident, LPAR, optional_form_param_list, RPAR,
// ARROW, type_ref, COLON
{
CurrentSemanticValue.td = new function_header(ValueStack[ValueStack.Depth-5].stn as formal_parameters, new procedure_attributes_list(new List<procedure_attribute>()), new method_name(null,null, ValueStack[ValueStack.Depth-7].id, null, LocationStack[LocationStack.Depth-7]), null, ValueStack[ValueStack.Depth-2].td as type_definition, CurrentLocationSpan);
}
break;
case 154: // proc_func_call -> variable, LPAR, optional_act_param_list, RPAR
{
CurrentSemanticValue.ex = new method_call(ValueStack[ValueStack.Depth-4].ex as addressed_value, ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan);
}
break;
case 155: // simple_type_identifier -> ident
{
CurrentSemanticValue.td = new named_type_reference(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 156: // simple_type_identifier -> simple_type_identifier, DOT, ident
{
CurrentSemanticValue.td = (ValueStack[ValueStack.Depth-3].td as named_type_reference).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 157: // type_ref -> simple_type_identifier
{
CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td as named_type_reference;
}
break;
case 158: // type_ref -> template_type
{
CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td;
}
break;
case 159: // template_type -> simple_type_identifier, template_type_params
{
CurrentSemanticValue.td = new template_type_reference(ValueStack[ValueStack.Depth-2].td as named_type_reference, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan);
}
break;
case 160: // template_type_params -> LBRACKET, template_param_list, RBRACKET
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn;
CurrentSemanticValue.stn.source_context = CurrentLocationSpan;
}
break;
case 161: // template_param_list -> type_ref
{
CurrentSemanticValue.stn = new template_param_list(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan);
}
break;
case 162: // template_param_list -> template_param_list, COMMA, type_ref
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as template_param_list).Add(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan);
}
break;
case 163: // param_name -> ident
{
CurrentSemanticValue.stn = new ident_list(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan);
}
break;
case 164: // form_param_sect -> param_name, COLON, type_ref
{
CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.none, null, CurrentLocationSpan);
}
break;
case 165: // form_param_sect -> STAR, param_name, COLON, type_ref
{
var at = new array_type(null, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan);
CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, at, parametr_kind.params_parametr, null, CurrentLocationSpan);
}
break;
case 166: // form_param_sect -> STARSTAR, param_name, COLON, type_ref
{
CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.kwargs_parameter, null, CurrentLocationSpan);
}
break;
case 167: // form_param_list -> form_param_sect
{
CurrentSemanticValue.stn = new formal_parameters(ValueStack[ValueStack.Depth-1].stn as typed_parameters, CurrentLocationSpan);
}
break;
case 168: // form_param_list -> form_param_list, COMMA, form_param_sect
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as formal_parameters).Add(ValueStack[ValueStack.Depth-1].stn as typed_parameters, CurrentLocationSpan);
}
break;
case 169: // optional_form_param_list -> form_param_list
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 170: // optional_form_param_list -> /* empty */
{
CurrentSemanticValue.stn = null;
}
break;
case 171: // act_param -> expr
{
CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;
}
break;
case 172: // act_param -> ident, ASSIGN, expr
{
CurrentSemanticValue.ex = new name_assign_expr(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 173: // act_param_list -> act_param
{
CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 174: // act_param_list -> act_param_list, COMMA, act_param
{
CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 175: // optional_act_param_list -> act_param_list
{
CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn;
}
break;
case 176: // optional_act_param_list -> generator_object
{
CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan);
}
break;
case 177: // optional_act_param_list -> /* empty */
{
CurrentSemanticValue.stn = null;
}
break;
case 178: // end_of_line -> END_OF_LINE
{
CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ti;
}
break;
case 179: // end_of_line -> SEMICOLON
{
CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ti;
}
break;
case 180: // optional_semicolon -> SEMICOLON
{
CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ti;
}
break;
case 181: // optional_semicolon -> /* empty */
{
CurrentSemanticValue.ob = null;
}
break;
}
}
protected override string TerminalToString(int terminal)
{
if (aliasses != null && aliasses.ContainsKey(terminal))
return aliasses[terminal];
else if (((Tokens)terminal).ToString() != terminal.ToString(CultureInfo.InvariantCulture))
return ((Tokens)terminal).ToString();
else
return CharToString((char)terminal);
}
public program_module NewProgramModule(program_name progName, Object optHeadCompDirs, uses_list mainUsesClose, syntax_tree_node progBlock, Object optPoint, LexLocation loc)
{
var progModule = new program_module(progName, mainUsesClose, progBlock as block, null, loc);
progModule.Language = "SPython";
if (optPoint == null && progBlock != null)
{
var fp = progBlock.source_context.end_position;
var err_stn = progBlock;
if ((progBlock is block) && (progBlock as block).program_code != null && (progBlock as block).program_code.subnodes != null && (progBlock as block).program_code.subnodes.Count > 0)
err_stn = (progBlock as block).program_code.subnodes[(progBlock as block).program_code.subnodes.Count - 1];
//parserTools.errors.Add(new SPythonUnexpectedToken(parserTools.currentFileName, StringResources.Get("TKPOINT"), new SourceContext(fp.line_num, fp.column_num + 1, fp.line_num, fp.column_num + 1, 0, 0), err_stn));
}
return progModule;
}
}
}