* 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: commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:21:00 2024 +0300 adding tests * Squashed commit of the following: commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit771ea7b445Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 14:32:17 2025 +0200 #3230 commit28a1a03e8dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 11:35:09 2025 +0200 #3251 commitaf7abc770bAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Apr 6 08:33:34 2025 +0300 synchronization of namespaces and folders for TeacherControlPlugin (#3262) commitaae723b982Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Apr 3 12:00:04 2025 +0300 Create default syntax tree converter class (#3216) Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева. commitf9cc90e50fAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Apr 3 11:59:46 2025 +0300 fix errors (#3260) commitf85bfad60fAuthor: 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 commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: 71261ded1aae723b98Author: 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 commitaae723b982Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Apr 3 12:00:04 2025 +0300 Create default syntax tree converter class (#3216) Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева. commitf9cc90e50fAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Apr 3 11:59:46 2025 +0300 fix errors (#3260) commitf85bfad60fAuthor: 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: commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: 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 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commit 8e9e7f94d094e528aeb9bd0db322005b08e31ee3 Merge: ea3c878ebfbd63efa8Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Fri Nov 8 14:47:33 2024 +0300 Merge branch 'master' into intellisense_refactoring commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: 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 commit6d5c18f457Author: 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: d95eab7900c773a7ecAuthor: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Oct 20 17:33:07 2024 +0300 Merge branch 'master' into intellisense_refactoring commit0c773a7ecbAuthor: 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 commit53b3fd0881Author: 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 commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: 8e506f409eeb3116aeAuthor: 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 commiteeb3116aeaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jun 10 21:30:20 2025 +0300 3.10.3.3634 commitea338d6bfeAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jun 10 20:30:42 2025 +0300 2025 in GlobalAssemblyInfo.cs commit4dc6bd72efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jun 10 20:19:18 2025 +0300 chm восстановил commitfd139b4700Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Tue Jun 10 20:09:10 2025 +0300 fix SemanticTreeConverter.cs encoding (#3273) commitd11674efc2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jun 10 19:56:16 2025 +0300 Вернул старый css для справки commit9aee28f4f0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jun 10 19:54:57 2025 +0300 2025 commit07370e365fAuthor: 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 commit50fd3cb1eeAuthor: 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 commit5fec52615aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat May 24 21:36:36 2025 +0300 Распаковка KeyValuePair| И в foreach commitfbb5dec9a9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat May 17 19:34:33 2025 +0300 Внешний Between commita914ab6ef5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri May 16 16:57:00 2025 +0300 InRange изменение поведения и внешний commit04059ab235Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed May 14 19:57:30 2025 +0300 Исправлены библиотеки PT4Exam commit40bfc046a8Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed May 14 19:40:04 2025 +0300 Fix shift space action in Intellisense (#3269) commite3a64850efAuthor: dmkwketx <dmkwketx@gmail.com> Date: Mon May 12 21:14:21 2025 +0300 Update GraphWPF.pas (#3270) если title больше одной строки, показывалась только последняя. теперь все строки будут показаны. commite9cf278fddAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon May 12 10:24:04 2025 +0300 IsOrdered в разных воплощениях commit255533f407Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri May 9 16:39:12 2025 +0300 IsOrdered метод расширения commit4c56298bfbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu May 8 22:53:34 2025 +0300 exit(param) commitc22dee65faAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed May 7 10:57:41 2025 +0300 sp2 commit3f37c2cc4fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed May 7 10:56:51 2025 +0300 sp commitcdfde69281Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri May 2 21:44:57 2025 +0300 2 chars commit2e27beef48Author: 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: commit771ea7b445Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 14:32:17 2025 +0200 #3230 commit28a1a03e8dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 11:35:09 2025 +0200 #3251 commitaf7abc770bAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Apr 6 08:33:34 2025 +0300 synchronization of namespaces and folders for TeacherControlPlugin (#3262) commitaae723b982Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Apr 3 12:00:04 2025 +0300 Create default syntax tree converter class (#3216) Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева. commitf9cc90e50fAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Apr 3 11:59:46 2025 +0300 fix errors (#3260) commitf85bfad60fAuthor: 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 commit69149f8c44Author: 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: commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll * Update comments in PascalABCLanguageInformation commitcc7d4472c6Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Apr 10 12:19:31 2025 +0300 Write developer guide for integrating new language (#3264) commit5d842153a5Author: Sun Serega <sunserega2@gmail.com> Date: Thu Apr 10 12:17:52 2025 +0300 Add NSIS binaries to .gitignore exclude (#3265) commitee31ed94b3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Apr 10 12:06:40 2025 +0300 TeacherControlPlugin.cs - шифрованные модули commitba23a01e29Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Apr 9 10:59:16 2025 +0300 Закомментировал неверный обработчик commit3f70700d2bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Apr 7 22:07:13 2025 +0300 nsis новый - папка bin TeacherControlPlugin.cs - добавление обработчика для последующей шифровки Tasks.pas commit0353abf57cAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Mon Apr 7 08:35:22 2025 +0300 fix caching Localization assembly (#3263) commit771ea7b445Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 14:32:17 2025 +0200 #3230 commit28a1a03e8dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Apr 6 11:35:09 2025 +0200 #3251 commitaf7abc770bAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Apr 6 08:33:34 2025 +0300 synchronization of namespaces and folders for TeacherControlPlugin (#3262) commitaae723b982Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Apr 3 12:00:04 2025 +0300 Create default syntax tree converter class (#3216) Для удобства разработчиков простых языков, которым не требуются дополнительные обходы синтаксического дерева. commitf9cc90e50fAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Apr 3 11:59:46 2025 +0300 fix errors (#3260) commitf85bfad60fAuthor: 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 commit7751fe7e75Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sun Mar 16 13:28:03 2025 +0300 generating language res file at build time (#3252) commitd1fce63d69Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Mar 4 08:38:09 2025 +0300 Сборка после pr SDK commitd491e88aa7Author: 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 commit1fd348ec3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Feb 23 20:49:26 2025 +0300 NSIS New 3.10 Ярлык в меню Пуск у всех пользователей commit80b7182dc1Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 11:50:00 2025 +0300 _ in names commita2b078960bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Feb 19 10:52:25 2025 +0300 cnfc2 commit58f26d469dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Feb 18 22:28:13 2025 +0300 перекомпиляция 3.10.3.3611 commitb78a72977fAuthor: 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 commitc3557e388cAuthor: 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 commit9dbac389e1Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Wed Feb 12 13:57:14 2025 +0300 Add missing projects to pabcnetc.sln (#3247) commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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 * Squashed commit of the following: commitbf3ba7d288Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 4 12:51:30 2025 +0300 interface у Turtle.pas Команда изменения цвета и ширины commit59ed71f459Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 4 10:29:08 2025 +0300 Команды ПоменятьЦвет и ПоменятьШиринуПера теперь учитываются в Черепахе commit160dd58195Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Jul 20 17:00:28 2025 +0300 fix #3324 commit6218cc8723Merge:cabe8f85e89e02b504Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jul 19 20:06:38 2025 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commitcabe8f85eeAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jul 19 20:06:25 2025 +0300 Min(1) Max(1) commit89e02b504eAuthor: Nikolay Kuznetsov <adasoft@gmail.com> Date: Thu Jul 17 10:08:54 2025 +0300 Update CodeCompletionActions.cs (#3323) Показ Code Completion Window по Ctrl-Space, если курсор находится сразу после точки (как сделано в Win версии). Текущее поведение - после точки ccw не показывать, только если курсор переместить на несколько символов вправо от точки. commitc080feba89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 15 16:06:58 2025 +0300 RayTracer/RayTracer3.pas commitcc266b3863Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Mon Jul 14 19:08:55 2025 +0300 Поправки в LanguageInformation (#3322) * Fix inaccuracy * Delete useless variable * Implement refreshing description before showing it in Intellisense windows * Fix inaccuracies * Add GetDescriptionForArray and GetDescriptionForDelegate in SPythonLanguageInfo * Exclude Read Write Async and Await from keywords list in Intellisense commit56d1eb5648Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sun Jul 13 18:44:29 2025 +0300 Обновление описания сущностей в Intellisense (#3321) * Implement refreshing description before showing it in Intellisense windows * Change BuildDescription in ProcScope * Fix description rebuild bug commit4cec1e7c43Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Jul 13 13:13:29 2025 +0300 fix #3299 Revert incorrect pr intellisense commit20a1436129Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sun Jul 13 10:19:40 2025 +0300 Исправление неправильных изменений в LanguageInformation (#3319) * Fix inaccuracy * Delete useless variable * Implement refreshing description before showing it in Intellisense windows * Fix inaccuracies * Add GetDescriptionForArray and GetDescriptionForDelegate in SPythonLanguageInfo commit9e9a0469b3Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Jul 10 18:35:07 2025 +0300 Добавление обновления описания сущностей из Intellisense перед выводом их в окошке (#3320) * Implement refreshing description before showing it in Intellisense windows * Change BuildDescription in ProcScope commite14b517e9dAuthor: Nikolay Kuznetsov <adasoft@gmail.com> Date: Sat Jul 5 11:09:00 2025 +0300 Update ProcessRunner.cs -- fix for space chars in running app file name (#3317) fix pascalabcnet/pascalabcnet#ISSUE-3315 commit6fa1caa034Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sat Jul 5 11:05:34 2025 +0300 Учет случая params в TipPainterTools при подсветке (#3318) * Refactor LanguageInformation classes * Improve extension check in TipPainterTools * Refactor parsing parameters for signature help * Fix TipPainterTools Linux version * Add Params check in TipPainterTools commita1584f4f90Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Sat Jul 5 11:05:10 2025 +0300 Update RobotField.pas (#3310) Адаптировано для Linux версии PABC * показываются надписи на форме в Ubuntu * шрифт надписей приведён к совместимому Sans Serif * Помощь - замена #10#13 на NewLine определяемый платформой commit19f78930edAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Thu Jul 3 20:42:47 2025 +0300 removing hard code (#3313) commitef795bbb64Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Thu Jul 3 20:39:09 2025 +0300 renaming method and adding comments (#3312) commit9d57c427acAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 30 19:33:04 2025 +0300 MainForm.Load += commit9927a0e305Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Mon Jun 30 19:19:24 2025 +0300 fix type name comparsion (#3309) commit7614931f06Author: dmkwketx <dmkwketx@gmail.com> Date: Mon Jun 30 19:18:05 2025 +0300 Update WhatsNew 3_10_4 files: exit_param2.pas & exit_param3.pas (#3305) * Update exit_param3.pas Добавлена проверка, что числа меньше числа 2 не простые. особенно единица * Update exit_param2.pas Добавлена проверка что числа меньше числа 2 не простые. commitdccd7942b7Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Mon Jun 30 19:17:09 2025 +0300 Added ABCObjects samples to Linux build (#3306) commit0b3471daa0Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Mon Jun 30 19:16:51 2025 +0300 Delete InstallerSamples/Graphics/GraphABCLinux directory (#3307) Удалить как неиспользуемую commitd4173b0becAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sat Jun 28 16:12:28 2025 +0300 removing hard code (#3304) commit0972d09837Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sat Jun 28 16:10:29 2025 +0300 Return break, continue и exit in completion list (#3298) commit5abe6333baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Jun 26 13:25:24 2025 +0300 опечатка в комменте commitaa42e80c7fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 22:27:48 2025 +0300 2025 by commitae16484db7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 20:06:03 2025 +0300 Пересобрал commit0646c80e4aMerge:107f2c49ba389183efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 20:05:20 2025 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit107f2c49bbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:11:42 2025 +0300 Сделал ошибку при передаче в качестве делегата параметром обобщенной функции commitd2440264e8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:09:36 2025 +0300 Перенес из ошибок назад в правильные. Вернул странное недокументированное поведение присваивания обобщенной функции делегату commitda16d41c58Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:07:18 2025 +0300 Удалил два файла с ошибками - обобщенная функция присваивается делегату commita389183efeAuthor: Sun Serega <sunserega2@gmail.com> Date: Mon Jun 23 23:49:48 2025 +0300 Improve GitIgnoreTester output (#3295) commit63274c3c5eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 22:28:17 2025 +0300 Пересобрал 3.11.0.3641 commit34187755deAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 22:02:24 2025 +0300 fix #3290 commit6eccd661aeAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 16:36:58 2025 +0300 3.11 version with SPython (not in installer!) commit080fca15bbAuthor: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com> Date: Sun Jun 22 20:56:22 2025 +0300 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: commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas … * Add rest of GetDesctiption methods to SPythonLanguageInformation * Add extended_new_expr allowing use without brackets for Intellisense * Add new intellisense_dotted_ident non-terminal symbol * Fix OperatorCanNotBeAppliedToThisTypes error throwing for SPython * Squashed commit of the following: commit6d15540895Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 31 17:21:18 2025 +0300 SPython в 3.11 commit1dc78980b2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Aug 27 11:23:19 2025 +0300 Flag commit0483c2dca0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 25 23:04:15 2025 +0300 Sign для беззнаковых commitdc4cbb2547Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 25 00:16:12 2025 +0300 Флаг в Graph3D.pas commit6a6c3553c2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 4 13:59:32 2025 +0300 LightPT - задачи перенес commitbf3ba7d288Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 4 12:51:30 2025 +0300 interface у Turtle.pas Команда изменения цвета и ширины commit59ed71f459Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 4 10:29:08 2025 +0300 Команды ПоменятьЦвет и ПоменятьШиринуПера теперь учитываются в Черепахе commit160dd58195Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Jul 20 17:00:28 2025 +0300 fix #3324 commit6218cc8723Merge:cabe8f85e89e02b504Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jul 19 20:06:38 2025 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commitcabe8f85eeAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jul 19 20:06:25 2025 +0300 Min(1) Max(1) commit89e02b504eAuthor: Nikolay Kuznetsov <adasoft@gmail.com> Date: Thu Jul 17 10:08:54 2025 +0300 Update CodeCompletionActions.cs (#3323) Показ Code Completion Window по Ctrl-Space, если курсор находится сразу после точки (как сделано в Win версии). Текущее поведение - после точки ccw не показывать, только если курсор переместить на несколько символов вправо от точки. commitc080feba89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 15 16:06:58 2025 +0300 RayTracer/RayTracer3.pas commitcc266b3863Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Mon Jul 14 19:08:55 2025 +0300 Поправки в LanguageInformation (#3322) * Fix inaccuracy * Delete useless variable * Implement refreshing description before showing it in Intellisense windows * Fix inaccuracies * Add GetDescriptionForArray and GetDescriptionForDelegate in SPythonLanguageInfo * Exclude Read Write Async and Await from keywords list in Intellisense commit56d1eb5648Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sun Jul 13 18:44:29 2025 +0300 Обновление описания сущностей в Intellisense (#3321) * Implement refreshing description before showing it in Intellisense windows * Change BuildDescription in ProcScope * Fix description rebuild bug commit4cec1e7c43Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Jul 13 13:13:29 2025 +0300 fix #3299 Revert incorrect pr intellisense commit20a1436129Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sun Jul 13 10:19:40 2025 +0300 Исправление неправильных изменений в LanguageInformation (#3319) * Fix inaccuracy * Delete useless variable * Implement refreshing description before showing it in Intellisense windows * Fix inaccuracies * Add GetDescriptionForArray and GetDescriptionForDelegate in SPythonLanguageInfo commit9e9a0469b3Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Thu Jul 10 18:35:07 2025 +0300 Добавление обновления описания сущностей из Intellisense перед выводом их в окошке (#3320) * Implement refreshing description before showing it in Intellisense windows * Change BuildDescription in ProcScope commite14b517e9dAuthor: Nikolay Kuznetsov <adasoft@gmail.com> Date: Sat Jul 5 11:09:00 2025 +0300 Update ProcessRunner.cs -- fix for space chars in running app file name (#3317) fix pascalabcnet/pascalabcnet#ISSUE-3315 commit6fa1caa034Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sat Jul 5 11:05:34 2025 +0300 Учет случая params в TipPainterTools при подсветке (#3318) * Refactor LanguageInformation classes * Improve extension check in TipPainterTools * Refactor parsing parameters for signature help * Fix TipPainterTools Linux version * Add Params check in TipPainterTools commita1584f4f90Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Sat Jul 5 11:05:10 2025 +0300 Update RobotField.pas (#3310) Адаптировано для Linux версии PABC * показываются надписи на форме в Ubuntu * шрифт надписей приведён к совместимому Sans Serif * Помощь - замена #10#13 на NewLine определяемый платформой commit19f78930edAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Thu Jul 3 20:42:47 2025 +0300 removing hard code (#3313) commitef795bbb64Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Thu Jul 3 20:39:09 2025 +0300 renaming method and adding comments (#3312) commit9d57c427acAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 30 19:33:04 2025 +0300 MainForm.Load += commit9927a0e305Author: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Mon Jun 30 19:19:24 2025 +0300 fix type name comparsion (#3309) commit7614931f06Author: dmkwketx <dmkwketx@gmail.com> Date: Mon Jun 30 19:18:05 2025 +0300 Update WhatsNew 3_10_4 files: exit_param2.pas & exit_param3.pas (#3305) * Update exit_param3.pas Добавлена проверка, что числа меньше числа 2 не простые. особенно единица * Update exit_param2.pas Добавлена проверка что числа меньше числа 2 не простые. commitdccd7942b7Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Mon Jun 30 19:17:09 2025 +0300 Added ABCObjects samples to Linux build (#3306) commit0b3471daa0Author: Nikolay Kuznetsov <adasoft@gmail.com> Date: Mon Jun 30 19:16:51 2025 +0300 Delete InstallerSamples/Graphics/GraphABCLinux directory (#3307) Удалить как неиспользуемую commitd4173b0becAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Sat Jun 28 16:12:28 2025 +0300 removing hard code (#3304) commit0972d09837Author: AlexanderZemlyak <92867056+AlexanderZemlyak@users.noreply.github.com> Date: Sat Jun 28 16:10:29 2025 +0300 Return break, continue и exit in completion list (#3298) commit5abe6333baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Jun 26 13:25:24 2025 +0300 опечатка в комменте commitaa42e80c7fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 22:27:48 2025 +0300 2025 by commitae16484db7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 20:06:03 2025 +0300 Пересобрал commit0646c80e4aMerge:107f2c49ba389183efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 20:05:20 2025 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit107f2c49bbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:11:42 2025 +0300 Сделал ошибку при передаче в качестве делегата параметром обобщенной функции commitd2440264e8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:09:36 2025 +0300 Перенес из ошибок назад в правильные. Вернул странное недокументированное поведение присваивания обобщенной функции делегату commitda16d41c58Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jun 25 19:07:18 2025 +0300 Удалил два файла с ошибками - обобщенная функция присваивается делегату commita389183efeAuthor: Sun Serega <sunserega2@gmail.com> Date: Mon Jun 23 23:49:48 2025 +0300 Improve GitIgnoreTester output (#3295) commit63274c3c5eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 22:28:17 2025 +0300 Пересобрал 3.11.0.3641 commit34187755deAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 22:02:24 2025 +0300 fix #3290 commit6eccd661aeAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Jun 23 16:36:58 2025 +0300 3.11 version with SPython (not in installer!) commit080fca15bbAuthor: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com> Date: Sun Jun 22 20:56:22 2025 +0300 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: commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Nov 21 22:24:07 2024 +0300 NSToBytes переделал с исключением commit2bacdc8c28Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 13:20:33 2024 +0300 Комментарии к NewSet commite917ac8ecaAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 20 12:42:15 2024 +0300 TypeName для set commit206289c6a7Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Nov 19 20:23:03 2024 +0300 Везде заменил _hs на hs в NewSet Убрал вызовы методов расширений NewSet в PABCSystem.pas Убрал var в operator + commitd8262078f6Author: 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 надо бы сделать исключение commitf8819665baAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 16 10:56:11 2024 +0300 NS2 commit591d9ebe60Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:34:10 2024 +0100 fix commitc6505634f4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 21:12:33 2024 +0100 fix commita6564df23cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Nov 13 20:52:29 2024 +0100 fix in new sets commit03be5bd931Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 13 22:13:41 2024 +0300 Переставил operator:= в NewSet commit96c68f1666Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Nov 12 21:38:07 2024 +0100 #3223 commit82776f3c77Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Nov 9 12:18:19 2024 +0300 NewSet - много мелких исправлений. Все тесты проходят кроме Tests 5 - видимо с pabcrtl.dll commitfbd63efa89Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Nov 3 16:59:48 2024 +0300 NewSets Некоторые тесты надо исправить commit746c4ae2c2Author: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 21:00:42 2024 +0100 #3221 commit350d07326dAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:35:51 2024 +0100 #3221 commitaae9ab408bAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Thu Oct 31 18:25:06 2024 +0100 #3221 commit1e4a811e04Author: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:42:59 2024 +0100 test for #3219 commitd1a1247ecdAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Wed Oct 30 20:24:16 2024 +0100 #3219 commit13b3071d80Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Oct 28 22:42:17 2024 +0300 закомментировал extensions преобразования arr to set. Надеюсь в новой реализации всё исправить commit6d5c18f457Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Oct 24 10:17:48 2024 +0300 SF XLSX.pas commit0c773a7ecbAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 16 12:04:33 2024 +0300 tree.xml с парой новых узлов для Питона commit53b3fd0881Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Oct 9 14:09:01 2024 +0300 Добавил временное преобразование от array of T в set of T commit271d5792ceAuthor: 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 commit79f9ab73a0Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Oct 5 15:33:20 2024 +0300 PT4_32 commit0a20c8d32cAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Sep 26 09:02:31 2024 +0200 Add `.DistinctBy` (#3122) commit11981dbf47Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Sep 25 11:53:02 2024 +0300 IndexMinBy, IndexMaxBy MinBy, MaxBy - более эффективная реализация GraphWPF - SaveToClipboard commit3eb1d2bd85Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 17:42:09 2024 +0200 #3197 commit20edd487e3Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Sep 22 12:39:03 2024 +0200 #3204 commit7261231c9cMerge:7debbe7029ab932977Author: 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 commit9ab9329771Author: AlexanderZemlyak <zemlyaksanya@mail.ru> Date: Sun Sep 22 10:23:18 2024 +0300 Add new projects in PascalACBNETLinux.sln commit7debbe702aAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 21 14:29:38 2024 +0300 Критическое обновление LightPT commit40335b873eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Sep 20 22:58:46 2024 +0300 LightPT - OutputListIsClearedFromSpaces := False; Coords - DrawLine commit078281db17Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 22:42:44 2024 +0300 coords suite commit8d51f999a5Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Thu Sep 19 20:28:28 2024 +0300 Автоклассы - разрешение наследования от классов без полей Модуль Coords commit8f7e92d418Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Sep 16 08:25:43 2024 +0300 Turtle переделал на паттерн Команда commita6f6d8a90bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 23:11:54 2024 +0300 Правки рейтинга в TeacherPlugin commit2365eb3633Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Sep 7 15:54:15 2024 +0300 LinkLabel в TeacherControlPlugin commit1835b811efAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:51:44 2024 +0300 MathNet Signed commitb23d6df9e9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Sep 3 23:16:15 2024 +0300 MathNet.Numerics.dll commit790fba67b8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 27 17:56:09 2024 +0300 3.10.0 commit1ec4204fd2Author: Sun Serega <sunserega2@gmail.com> Date: Mon Aug 26 09:20:27 2024 +0300 `.Batch` cleanup (#3108) commitb5e674c311Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:12:14 2024 +0300 3_10_0 commit7face043cfAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Mon Aug 26 09:11:08 2024 +0300 ToSet commite456ad528eAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 23:13:57 2024 +0300 3.9.0.3530 commit3247469e6dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 22:55:27 2024 +0300 Добавлен DrawPoints в Turtle Исправлена ошибка с отображением подписей в Y-координате commit7548142623Author: 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 := ',') commitd94885b950Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Aug 24 12:13:09 2024 +0300 randomElement для строк .ToReals - разделителями могут быть пробел табуляция и переход на новую строку NumberFormat - функция, возвращающая nfi commitae2e26acf8Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Aug 23 19:33:55 2024 +0300 PT4 - новые dll файлы старых заданий серий A commit0f8aa6fa3cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 17:28:05 2024 +0300 SetOf как основной синоним HSet commitdb4b53be20Merge:86852e0a5b9fd59a84Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:42 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit86852e0a59Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 18 16:05:14 2024 +0300 School - ToBase(number: int64 commitb9fd59a840Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 15:08:44 2024 +0200 #2830 commit4f0b0f8ba0Author: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 14:43:49 2024 +0200 #3194 commite3ee0fed4cAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 13:49:30 2024 +0200 #3097 commitd396c4a9feAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Tue Aug 13 10:40:23 2024 +0200 #3178 commit0d846d2335Merge:e91e35398a65a86921Author: 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 commita65a869211Author: samuraiGH <anonimajzer3@mail.ru> Date: Mon Aug 12 15:50:42 2024 +0300 increasing pcu file version commite91e353984Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sun Aug 11 15:21:29 2024 +0300 Обновленный модуль Turtle.pas commitc18238df39Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 20:18:57 2024 +0300 3.9.0.3523 commit1da2b524a6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Aug 6 19:34:10 2024 +0300 School PrimeDivisors commit47c61d8b14Author: 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 commitfc3ab96caeAuthor: 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 commit64acde6460Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 18:21:04 2024 +0300 Сделал возможным неявное приведение некоторого типа к array of T (при описании оператора в виде статической функции класса) School - IsPrime(n) commit3db5709101Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jul 31 10:56:18 2024 +0300 ZipCartesianFuncs.pas commitc4fd47128bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Jul 30 22:56:03 2024 +0300 Zip, Cartesian - сделаны внешние функции до 5 параметров, в т.ч. с проекцией Zip, Cartesian - методы расширения дополнены чтобы было как во внешних Перегенерирована справка commit7d66f26d4fAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Mon Jul 1 00:16:43 2024 +0300 cleanup and more tests commit464dc794a8Author: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 23:31:28 2024 +0300 cleanup and more comments commit32f126370cAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sun Jun 30 21:35:06 2024 +0300 attempt to fix GetEnumerator resolving for Pascal types commitfb3eeeb28bAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 16:26:35 2024 +0300 fix tests commit84b0dfe537Author: samuraiGH <anonimajzer3@mail.ru> Date: Sat Jun 29 15:49:13 2024 +0300 fix getting MethodInfo commit5fa4d9fce7Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:45:07 2024 +0300 cold fix set of T resolving commit460ce636abAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 22:21:06 2024 +0300 hot fix set of T resolving commit83c2f29ac6Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:53:11 2024 +0300 fix method filtering again commitc840a1a47aAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 21:32:41 2024 +0300 fix type recovery commit2436627fddAuthor: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 19:18:32 2024 +0300 fixing method filtering commit15a05360a4Author: samuraiGH <anonimajzer3@mail.ru> Date: Fri Jun 28 17:25:39 2024 +0300 attempt to fix GetEnumerator resolving for compiled types commit4fd020d084Author: 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: commit41dfb6f187Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Fri Feb 7 21:41:01 2025 +0300 [] - преобразование во все контейнеры GraphABCHelper - теперь ABCObjects работает под Линукс School исправлен согласно последним веяниям [] commit79bbbd10ffAuthor: samuraiGH <87191377+samuraiGH@users.noreply.github.com> Date: Wed Jan 29 20:18:37 2025 +0300 removing files for support fx4.0 (#3240) commit88d5c409ebAuthor: 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 commit8fbd7fdfc3Author: 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) commitbba132bd5dAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 22 09:14:44 2025 +0300 Поправил справку по функции commit1bd21857ccAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Jan 8 18:46:51 2025 +0300 Teacher Control Plugin - возможность задать server.dat commit0848a1b796Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 22:54:38 2025 +0300 Исправление автоформатирования [] commitd45b782a7bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 18:45:07 2025 +0300 Rename PABCSistem in test suite commitc2347e604bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Jan 4 14:44:51 2025 +0300 Примеры - устранил неточности LightPT - имя сервера вынес в публичную секцию commitb68b8da970Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:52:18 2024 +0300 Примеры Coords1.pas Coords2.pas.pas commit8a9788e6f9Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 17 15:06:57 2024 +0300 Перенес проверку set array на уровень парсера Немного поправил Intellisense по наведению для NewSet По точке там что то другое работает commit874ddebad3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 21:00:38 2024 +0300 Поправил грамматику [] Теперь нельзя в режиме ## использовать атрибуты Зато можно [1,2,3].Print commit080fb487e1Merge:a53dcd9eda484b0e82Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:24 2024 +0300 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commita53dcd9ed2Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Sat Dec 14 15:25:16 2024 +0300 SF Prm Cmb для строк commita484b0e82dAuthor: Sun Serega <sunserega2@gmail.com> Date: Thu Dec 12 13:49:17 2024 +0200 fix (#3231) commit6ef11f249cAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 11:05:45 2024 +0300 3.10.2 commitdb9679d89fAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 10 10:59:20 2024 +0300 Закончил превращение синтаксиса [] по умолчанию в массивы commit45fdde24b4Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 18:08:00 2024 +0100 #3229 commit494b47624dMerge:5875b99297906d73daAuthor: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:42:07 2024 +0100 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet commit5875b99296Author: Ivan Bondarev <ibond84@googlemail.com> Date: Sun Dec 8 10:41:53 2024 +0100 platformtarget native - .NET 9.0 commit7906d73da3Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Tue Dec 3 14:25:37 2024 +0300 Небольшие изменения в реализации операций с множествами commit087591c7b6Author: Mikhalkovich Stanislav <miks@math.sfedu.ru> Date: Wed Nov 27 11:37:07 2024 +0300 3.10.1 Coords - доработки Distance, Middle, DrawText с фоном и рамкой. Глобальные переменные настройки commitd268d4f83bAuthor: Mikhalkovich Stanislav <miks@math.sfedu.ru> … * Fix %%MAIN%% function source context * Fix case sensitivity for CompiledScope search methods * Fix imported aliases hints * Implement list standard container as wrapper * Implement set standard container as wrapper * Implement dict standard container as wrapper * Improve set operations speed * Move list, set and dict functions to SPythonHidden Нужно будет перенести куда-то в другое место потом для красоты * Fix type function in SPythonSystem * Increase the priority of functions over the type conversion operation in ExpressionVisitor * Fix generic type search in SymScope internal find * Toggle AddStandardNetNamespacesToUserScope for SPython Пришлось включить подсказку пр-в имен для корректной работы семантического Intellisense. * Fix itertools --------- Co-authored-by: MovchanGitHub <92666028+MovchanGitHub@users.noreply.github.com> Co-authored-by: Владислав Крылов <krylov@sfedu.ru> Co-authored-by: Sun Serega <sunserega2@gmail.com>
2097 lines
80 KiB
C#
2097 lines
80 KiB
C#
// Copyright (c) Ivan Bondarev, Stanislav Mikhalkovich (for details please see \doc\copyright.txt)
|
||
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||
using System;
|
||
using System.Linq;
|
||
using System.Collections.Generic;
|
||
using System.Text;
|
||
using PascalABCCompiler.SyntaxTree;
|
||
using System.Reflection;
|
||
using PascalABCCompiler;
|
||
using PascalABCCompiler.TreeConverter;
|
||
//using PascalABCCompiler.TreeRealization;
|
||
using SymbolTable;
|
||
using PascalABCCompiler.Parsers;
|
||
|
||
namespace CodeCompletion
|
||
{
|
||
|
||
/// <summary>
|
||
/// Парсит выражение до точки, скобки и проч.
|
||
/// </summary>
|
||
public class ExpressionVisitor : PascalABCCompiler.SyntaxTree.AbstractVisitor
|
||
{
|
||
private expression expr;
|
||
public SymScope returned_scope;
|
||
private List<SymScope> returned_scopes = new List<SymScope>();
|
||
private bool search_all = false;
|
||
public SymScope entry_scope;
|
||
private bool by_dot = false;
|
||
private bool on_bracket;
|
||
internal bool mouse_hover = false;
|
||
private DomSyntaxTreeVisitor stv = null;
|
||
private SymScope[] selected_methods = null;
|
||
private Dictionary<method_call, SymScope> method_call_cache = new Dictionary<method_call, SymScope>();
|
||
|
||
public ExpressionVisitor(SymScope entry_scope, DomSyntaxTreeVisitor stv)
|
||
{
|
||
this.entry_scope = entry_scope;
|
||
this.stv = stv;
|
||
}
|
||
|
||
public ExpressionVisitor(expression expr, SymScope entry_scope, DomSyntaxTreeVisitor stv)
|
||
{
|
||
this.expr = expr;
|
||
this.entry_scope = entry_scope;
|
||
this.stv = stv;
|
||
}
|
||
|
||
public SymScope GetScopeOfExpression()
|
||
{
|
||
if (expr is const_node && !(expr is string_const) && !(expr is char_const) && !(expr is bool_const))
|
||
return null;
|
||
if (mouse_hover && (expr is typeof_operator || expr is sizeof_operator))
|
||
return null;
|
||
try
|
||
{
|
||
expr.visit(this);
|
||
}
|
||
catch (Exception e)
|
||
{
|
||
returned_scope = null;
|
||
}
|
||
if (returned_scope is ProcScope && (expr is ident || expr is dot_node))
|
||
{
|
||
try
|
||
{
|
||
expr = new method_call(expr as addressed_value, new expression_list());
|
||
expr.visit(this);
|
||
}
|
||
catch (Exception e)
|
||
{
|
||
}
|
||
}
|
||
if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcScope)
|
||
{
|
||
if ((returned_scope as ElementScope).si.kind == SymbolKind.Delegate)
|
||
returned_scope = (returned_scope as ElementScope).sc;
|
||
}
|
||
//else ret_scope = (ret_scope as ElementScope).sc as ProcScope;
|
||
return returned_scope;
|
||
}
|
||
|
||
public SymScope GetScopeOfExpression(bool by_dot, bool on_bracket)
|
||
{
|
||
if (expr is const_node && !(expr is string_const) && !(expr is char_const) && !(expr is bool_const))
|
||
return null;
|
||
this.on_bracket = on_bracket;
|
||
try
|
||
{
|
||
expr.visit(this);
|
||
}
|
||
catch (Exception)
|
||
{
|
||
returned_scope = null;
|
||
}
|
||
if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcType && expr is method_call)
|
||
{
|
||
if (by_dot)
|
||
if (((returned_scope as ElementScope).sc as ProcType).target.return_type != null)
|
||
returned_scope = new ElementScope(((returned_scope as ElementScope).sc as ProcType).target.return_type);
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcScope)
|
||
{
|
||
ProcScope ps = (returned_scope as ElementScope).sc as ProcScope;
|
||
TypeScope return_type = ps.return_type;
|
||
if (ps.is_constructor)
|
||
return_type = ps.declaringType;
|
||
if (by_dot)
|
||
if (return_type != null)
|
||
returned_scope = new ElementScope(return_type);
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is CompiledScope && ((returned_scope as ElementScope).sc as CompiledScope).CompiledType.BaseType == typeof(MulticastDelegate) && expr is method_call)
|
||
{
|
||
ProcScope invoke_meth = ((returned_scope as ElementScope).sc as CompiledScope).FindNameOnlyInThisType("Invoke") as ProcScope;
|
||
if (invoke_meth != null)
|
||
returned_scope = new ElementScope(invoke_meth.return_type);
|
||
}
|
||
else if (returned_scope != null && returned_scope is ProcScope)
|
||
{
|
||
ProcScope ps = returned_scope as ProcScope;
|
||
TypeScope return_type = ps.return_type;
|
||
if (ps.is_constructor)
|
||
return_type = ps.declaringType;
|
||
if (return_type == null)
|
||
{
|
||
if (by_dot) returned_scope = null;
|
||
}
|
||
else if (by_dot)
|
||
returned_scope = new ElementScope(return_type);
|
||
}
|
||
return returned_scope;
|
||
}
|
||
|
||
public List<ProcScope> GetOverloadScopes()
|
||
{
|
||
if (expr is const_node && !(expr is string_const) && !(expr is char_const) && !(expr is bool_const))
|
||
return null;
|
||
this.search_all = true;
|
||
this.on_bracket = true;
|
||
List<ProcScope> proces = new List<ProcScope>();
|
||
try
|
||
{
|
||
expr.visit(this);
|
||
}
|
||
catch (Exception e)
|
||
{
|
||
returned_scope = null;
|
||
}
|
||
if (returned_scopes != null)
|
||
for (int i = 0; i < returned_scopes.Count; i++)
|
||
{
|
||
if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is ProcScope)
|
||
{
|
||
ProcScope tmp = (returned_scopes[i] as ElementScope).sc as ProcScope;
|
||
if (tmp != null)
|
||
proces.Add(tmp);
|
||
}
|
||
else
|
||
if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is ProcType)
|
||
{
|
||
ProcScope tmp = ((returned_scopes[i] as ElementScope).sc as ProcType).target;
|
||
if (tmp != null)
|
||
proces.Add(tmp);
|
||
}
|
||
else if (returned_scopes[i] is ProcScope)
|
||
{
|
||
if (!((returned_scopes[i] as ProcScope).is_constructor && returned_scopes[i].is_static))
|
||
proces.Add(returned_scopes[i] as ProcScope);
|
||
}
|
||
else if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is CompiledScope)
|
||
{
|
||
//ProcType pt = new ProcType();
|
||
CompiledScope cs = (returned_scopes[i] as ElementScope).sc as CompiledScope;
|
||
ProcScope ps = cs.FindNameOnlyInThisType("Invoke") as ProcScope;
|
||
if (ps != null)
|
||
proces.Add(ps);
|
||
}
|
||
else if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is TypeSynonim)
|
||
{
|
||
TypeSynonim ts = (returned_scopes[i] as ElementScope).sc as TypeSynonim;
|
||
TypeScope act_ts = ts.GetLeafActType();
|
||
ProcType procType = act_ts as ProcType;
|
||
if (procType != null)
|
||
{
|
||
ProcScope tmp = procType.target;
|
||
if (tmp != null)
|
||
proces.Add(tmp);
|
||
}
|
||
else
|
||
{
|
||
CompiledScope cs = act_ts as CompiledScope;
|
||
if (cs != null)
|
||
{
|
||
ProcScope ps = cs.FindNameOnlyInThisType("Invoke") as ProcScope;
|
||
if (ps != null)
|
||
proces.Add(ps);
|
||
}
|
||
}
|
||
}
|
||
else if (returned_scopes[i] is TypeScope)
|
||
{
|
||
// операция преобразования типа не поддерживается здесь EVA
|
||
continue;
|
||
}
|
||
else if (i == 0)
|
||
return proces;
|
||
}
|
||
return proces;
|
||
}
|
||
|
||
public override void visit(default_operator node)
|
||
{
|
||
returned_scope = null;
|
||
}
|
||
|
||
public override void visit(template_type_name node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(syntax_tree_node _syntax_tree_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(statement_list _statement_list)
|
||
{
|
||
foreach (statement stmt in _statement_list.subnodes)
|
||
stmt.visit(this);
|
||
}
|
||
|
||
public override void visit(expression _expression)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(assign _assign)
|
||
{
|
||
if (_assign.to is ident && (_assign.to as ident).name == "result")
|
||
_assign.from.visit(this);
|
||
}
|
||
|
||
public override void visit(bin_expr _bin_expr)
|
||
{
|
||
//throw new NotImplementedException();
|
||
//_bin_expr.left.visit(this);
|
||
if (_bin_expr.operation_type == Operators.As)
|
||
{
|
||
_bin_expr.right.visit(this);
|
||
if (returned_scope != null)
|
||
returned_scope = new ElementScope(returned_scope);
|
||
}
|
||
else if (_bin_expr.operation_type == Operators.Is)
|
||
returned_scope = new ElementScope(TypeTable.bool_type);
|
||
else
|
||
{
|
||
_bin_expr.left.visit(this);
|
||
TypeScope tleft = returned_scope as TypeScope;
|
||
if (tleft == null && returned_scope is ElementScope)
|
||
tleft = (returned_scope as ElementScope).sc as TypeScope;
|
||
_bin_expr.right.visit(this);
|
||
TypeScope tright = returned_scope as TypeScope;
|
||
if (tright == null && returned_scope is ElementScope)
|
||
tright = (returned_scope as ElementScope).sc as TypeScope;
|
||
if (tleft != null && tright != null)
|
||
{
|
||
string name = PascalABCCompiler.TreeConverter.name_reflector.get_name(_bin_expr.operation_type);
|
||
List<SymScope> lst = tleft.FindOverloadNamesOnlyInType(name);
|
||
List<SymScope> lst_right = tright.FindOverloadNamesOnlyInType(name);
|
||
if (lst.Count == 0 && !char.IsLetter(name[0]))
|
||
lst = tleft.FindOverloadNamesOnlyInType("operator" + name);
|
||
if (lst_right.Count == 0 && !char.IsLetter(name[0]))
|
||
lst_right = tright.FindOverloadNamesOnlyInType("operator" + name);
|
||
if (!char.IsLetter(name[0]))
|
||
name = "operator" + name;
|
||
else
|
||
name = "operator " + name;
|
||
List<ProcScope> meths = entry_scope.GetExtensionMethods(name, tleft);
|
||
foreach (ProcScope meth in meths)
|
||
lst.Add(meth);
|
||
lst.AddRange(lst_right);
|
||
meths = entry_scope.GetExtensionMethods(name, tright);
|
||
foreach (ProcScope meth in meths)
|
||
lst.Add(meth);
|
||
ProcScope ps = select_method(lst.ToArray(), tleft, tright, null, _bin_expr.left, _bin_expr.right);
|
||
if (ps != null)
|
||
returned_scope = new ElementScope(ps.return_type);
|
||
else
|
||
returned_scope = new ElementScope(tleft);
|
||
}
|
||
else if (tleft != null)
|
||
returned_scope = new ElementScope(tleft);
|
||
else
|
||
returned_scope = new ElementScope(tright);
|
||
}
|
||
|
||
}
|
||
|
||
public override void visit(un_expr _un_expr)
|
||
{
|
||
//throw new NotImplementedException();
|
||
if (_un_expr.operation_type == Operators.LogicalNOT)
|
||
returned_scope = TypeTable.bool_type;
|
||
else
|
||
{
|
||
_un_expr.subnode.visit(this);
|
||
if (returned_scope != null && returned_scope is TypeScope)
|
||
returned_scope = new ElementScope(returned_scope);
|
||
}
|
||
}
|
||
|
||
public override void visit(const_node _const_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(bool_const _bool_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.bool_type);
|
||
}
|
||
|
||
public override void visit(int32_const _int32_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.int_type);
|
||
}
|
||
|
||
public override void visit(double_const _double_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.real_type);
|
||
}
|
||
|
||
public override void visit(statement _statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(subprogram_body _subprogram_body)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(ident _ident)
|
||
{
|
||
if (!search_all)
|
||
{
|
||
returned_scope = null;
|
||
//if (any_order) ret_scope = entry_scope.FindNameInAnyOrder(_ident.name);
|
||
returned_scope = entry_scope.FindName(_ident.name);
|
||
if (returned_scope == null && string.Compare(entry_scope.Name, _ident.name, true) == 0 && entry_scope is ProcScope)
|
||
{
|
||
returned_scope = entry_scope;
|
||
return;
|
||
}
|
||
if (returned_scope is ProcScope && (returned_scope as ProcScope).parameters.Count != 0)
|
||
{
|
||
returned_scopes = entry_scope.FindOverloadNames(_ident.name);
|
||
returned_scope = returned_scopes.Find(x => x is ProcScope && (x as ProcScope).parameters.Count == 0);
|
||
if (returned_scope == null)
|
||
returned_scope = returned_scopes[0];
|
||
}
|
||
/*if (returned_scope == null && entry_scope.topScope == null)
|
||
{
|
||
try
|
||
{
|
||
returned_scope = entry_scope.FindNameInAnyOrder(_ident.name);
|
||
}
|
||
catch (Exception e)
|
||
{
|
||
|
||
}
|
||
}
|
||
else if (returned_scope == null && entry_scope.topScope != null)
|
||
{
|
||
try
|
||
{
|
||
returned_scope = entry_scope.topScope.FindNameInAnyOrder(_ident.name);
|
||
|
||
}
|
||
catch (Exception e)
|
||
{
|
||
|
||
}
|
||
}*/
|
||
if (returned_scope != null)
|
||
{
|
||
if (returned_scope is ProcScope)
|
||
{
|
||
returned_scope = new ElementScope(returned_scope);
|
||
}
|
||
else if (returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcType && by_dot)
|
||
{
|
||
//TypeScope ts = ((returned_scope as ElementScope).sc as ProcType).target.return_type;
|
||
//if (ts != null)
|
||
// returned_scope = new ElementScope(ts);
|
||
}
|
||
if (returned_scope is ElementScope)
|
||
returned_scope = CheckForAccess(entry_scope, returned_scope as ElementScope);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
returned_scopes = null;
|
||
returned_scopes = entry_scope.FindOverloadNames(_ident.name);
|
||
for (int i = 0; i < returned_scopes.Count; i++)
|
||
{
|
||
if (returned_scopes[i] is ElementScope && ((returned_scopes[i] as ElementScope).sc is ProcType))
|
||
{
|
||
returned_scopes[i] = CheckForAccess(entry_scope, returned_scopes[i] as ElementScope);
|
||
//if (ret_names[i] != null)
|
||
//ret_names[i] = ((ret_names[i] as ElementScope).sc as ProcType).target;
|
||
}
|
||
}
|
||
search_all = false;
|
||
}
|
||
}
|
||
|
||
public override void visit(addressed_value _addressed_value)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(type_definition _type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(named_type_reference _named_type_reference)
|
||
{
|
||
//throw new NotImplementedException();
|
||
returned_scope = entry_scope;
|
||
for (int i = 0; i < _named_type_reference.names.Count; i++)
|
||
{
|
||
returned_scope = returned_scope.FindName(_named_type_reference.names[i].name);
|
||
if (returned_scope == null)
|
||
return;
|
||
}
|
||
}
|
||
|
||
public override void visit(variable_definitions _variable_definitions)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(ident_list _ident_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(var_def_statement _var_def_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(declaration _declaration)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(declarations _declarations)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(program_tree _program_tree)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(program_name _program_name)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(string_const _string_const)
|
||
{
|
||
returned_scope = new ElementScope(entry_scope.FindName(StringConstants.string_type_name));
|
||
}
|
||
|
||
public override void visit(expression_list _expression_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(dereference _dereference)
|
||
{
|
||
//throw new NotImplementedException();
|
||
|
||
}
|
||
|
||
public override void visit(roof_dereference _roof_dereference)
|
||
{
|
||
//throw new NotImplementedException();
|
||
_roof_dereference.dereferencing_value.visit(this);
|
||
ElementScope es = returned_scope as ElementScope;
|
||
if (es == null)
|
||
{
|
||
returned_scope = null;
|
||
return;
|
||
}
|
||
if (es.sc != null && es.sc is PointerScope)
|
||
{
|
||
|
||
returned_scope = new ElementScope((es.sc as PointerScope).ref_type);
|
||
}
|
||
else returned_scope = null;
|
||
}
|
||
|
||
public override void visit(indexer _indexer)
|
||
{
|
||
//throw new NotImplementedException();
|
||
_indexer.dereferencing_value.visit(this);
|
||
if (returned_scope != null)
|
||
{
|
||
ElementScope es = returned_scope as ElementScope;
|
||
if (returned_scope != null)
|
||
if (es != null && es.sc is ProcScope && (es.sc as ProcScope).return_type != null)
|
||
returned_scope = new ElementScope((es.sc as ProcScope).return_type.GetElementType());
|
||
else if (returned_scope is ProcScope && (returned_scope as ProcScope).is_constructor)
|
||
returned_scope = new ElementScope((returned_scope as ProcScope).declaringType.GetElementType());
|
||
else if (es != null && es.sc is TypeScope)
|
||
{
|
||
TypeScope ts = es.sc as TypeScope;
|
||
if (es.IsIndexedProperty)
|
||
returned_scope = new ElementScope(ts);
|
||
else if (ts.GetFullName() != null && (ts.GetFullName().IndexOf("System.Tuple") == 0 || ts.original_type != null && ts.original_type.GetFullName() != null && ts.original_type.GetFullName().IndexOf("(T1,") == 0))
|
||
{
|
||
if (_indexer.indexes.expressions[0] is int32_const)
|
||
{
|
||
if ((_indexer.indexes.expressions[0] as int32_const).val >= 0)
|
||
{
|
||
dot_node dn = new dot_node(_indexer.dereferencing_value, new ident("Item" + ((_indexer.indexes.expressions[0] as int32_const).val + 1)));
|
||
dn.visit(this);
|
||
}
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else
|
||
returned_scope = new ElementScope(returned_scope.GetElementType());
|
||
}
|
||
else if (returned_scope is ProcScope && (returned_scope as ProcScope).return_type != null)
|
||
returned_scope = new ElementScope((returned_scope as ProcScope).return_type.GetElementType());
|
||
else
|
||
returned_scope = new ElementScope(returned_scope.GetElementType());
|
||
}
|
||
else
|
||
{
|
||
for (int i = 0; i < returned_scopes.Count; i++)
|
||
{
|
||
if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is ProcScope && ((returned_scopes[i] as ElementScope).sc as ProcScope).return_type != null)
|
||
returned_scopes[i] = new ElementScope(((returned_scopes[i] as ElementScope).sc as ProcScope).return_type.GetElementType());
|
||
else if (returned_scopes[i] is ProcScope && (returned_scopes[i] as ProcScope).is_constructor)
|
||
returned_scopes[i] = new ElementScope((returned_scopes[i] as ProcScope).declaringType.GetElementType());
|
||
else
|
||
returned_scopes[i] = new ElementScope(returned_scopes[i].GetElementType());
|
||
}
|
||
search_all = false;
|
||
}
|
||
}
|
||
|
||
public override void visit(for_node _for_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(repeat_node _repeat_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(while_node _while_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(if_node _if_node)
|
||
{
|
||
_if_node.then_body.visit(this);
|
||
|
||
}
|
||
|
||
public override void visit(ref_type _ref_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(diapason _diapason)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(indexers_types _indexers_types)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(array_type _array_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(label_definitions _label_definitions)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(procedure_attribute _procedure_attribute)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(typed_parameters _typed_parametres)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(formal_parameters _formal_parametres)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(procedure_attributes_list _procedure_attributes_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(procedure_header _procedure_header)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(function_header _function_header)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(procedure_definition _procedure_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(type_declaration _type_declaration)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(type_declarations _type_declarations)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(simple_const_definition _simple_const_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(typed_const_definition _typed_const_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(const_definition _const_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(consts_definitions_list _consts_definitions_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(unit_name _unit_name)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(unit_or_namespace _unit_or_namespace)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(uses_unit_in _uses_unit_in)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(uses_list _uses_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(program_body _program_body)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(compilation_unit _compilation_unit)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(unit_module _unit_module)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(program_module _program_module)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(hex_constant _hex_constant)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(get_address _get_address)
|
||
{
|
||
//throw new NotImplementedException();
|
||
returned_scope = null;
|
||
}
|
||
|
||
public override void visit(case_variant _case_variant)
|
||
{
|
||
}
|
||
|
||
public override void visit(case_node _case_node)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(method_name _method_name)
|
||
{
|
||
}
|
||
|
||
public bool CheckForBaseAccess(SymScope cur, SymScope sc)
|
||
{
|
||
if (IsInOneModule(cur, sc)) return true;
|
||
if (cur == sc) return true;
|
||
if (cur is CompiledScope && sc is CompiledScope && (cur as CompiledScope).ctn == (sc as CompiledScope).ctn) return true;
|
||
if (cur == null) return false;
|
||
if (cur is TypeScope)
|
||
{
|
||
return CheckForBaseAccess((cur as TypeScope).baseScope, sc);
|
||
}
|
||
else return CheckForBaseAccess(cur.topScope, sc);
|
||
}
|
||
|
||
public bool CheckPrivateInSameUnit(SymScope cur, SymScope sc)
|
||
{
|
||
return true;
|
||
}
|
||
|
||
public bool IsInOneModule(SymScope cur, SymScope sc)
|
||
{
|
||
if (cur == sc) return true;
|
||
if (cur == null) return false;
|
||
SymScope tmp = cur.topScope;
|
||
if (tmp == null)
|
||
tmp = cur;
|
||
if (sc.topScope == null) return false;
|
||
while (tmp != null)
|
||
{
|
||
if (tmp == sc.topScope || sc.topScope != null && sc.topScope.topScope == tmp)
|
||
return true;
|
||
tmp = tmp.topScope;
|
||
}
|
||
return false;
|
||
}
|
||
|
||
public bool CheckPrivateForBaseAccess(SymScope cur, SymScope sc)
|
||
{
|
||
//if (CheckPrivateInSameUnit(cur, sc)) return true;
|
||
if (IsInOneModule(cur, sc)) return true;
|
||
if (cur == sc) return true;
|
||
if (cur == null) return false;
|
||
|
||
return CheckPrivateForBaseAccess(cur.topScope, sc);
|
||
}
|
||
|
||
public SymScope CheckForAccess(ElementScope ss, ElementScope es)
|
||
{
|
||
if (es.is_static)
|
||
return null;
|
||
if (es.acc_mod == access_modifer.none || es.acc_mod == access_modifer.public_modifer || es.acc_mod == access_modifer.published_modifer || es.acc_mod == access_modifer.internal_modifer)
|
||
return es;
|
||
if (es.acc_mod == access_modifer.private_modifer)
|
||
//if (entry_scope == ss.sc) return es; else
|
||
if (es.topScope is TypeScope && CheckPrivateForBaseAccess(entry_scope, es.topScope)) return es;
|
||
if (es.acc_mod == access_modifer.protected_modifer)
|
||
//if (entry_scope == ss.sc || CheckForBaseAccess(entry_scope,ss.sc))
|
||
if (es.topScope is TypeScope && CheckForBaseAccess(entry_scope, es.topScope)) return es;
|
||
//return es;
|
||
return null;
|
||
}
|
||
|
||
public SymScope CheckForAccess(ElementScope ss, ProcScope es)
|
||
{
|
||
if (es.acc_mod == access_modifer.protected_modifer)
|
||
if (es.topScope is TypeScope && CheckForBaseAccess(entry_scope, es.topScope)) return es;
|
||
return null;
|
||
}
|
||
|
||
public SymScope CheckForAccess(TypeScope ss, ElementScope es)
|
||
{
|
||
if (es.acc_mod == access_modifer.none || es.acc_mod == access_modifer.public_modifer || es.acc_mod == access_modifer.published_modifer || es.acc_mod == access_modifer.internal_modifer)
|
||
return es;
|
||
if (es.acc_mod == access_modifer.private_modifer)
|
||
if (entry_scope == ss) return es; else if (CheckPrivateForBaseAccess(entry_scope, ss)) return es;
|
||
if (es.acc_mod == access_modifer.protected_modifer)
|
||
if (entry_scope == ss || CheckForBaseAccess(entry_scope, ss))
|
||
return es;
|
||
return null;
|
||
}
|
||
|
||
public SymScope CheckForAccess(SymScope ss, ElementScope es)
|
||
{
|
||
if (ss == null) return null;
|
||
if (ss is ProcScope) return CheckForAccess(ss.topScope, es);
|
||
if (ss is TypeScope)
|
||
if (es.topScope is TypeScope) return CheckForAccess(es.topScope as TypeScope, es);
|
||
return es;
|
||
}
|
||
|
||
public override void visit(dot_question_node _dot_question_node)
|
||
{
|
||
dot_node dn = new dot_node(_dot_question_node.left, _dot_question_node.right, _dot_question_node.source_context);
|
||
dn.visit(this);
|
||
}
|
||
|
||
public override void visit(dot_node _dot_node)
|
||
{
|
||
bool tmp = by_dot;
|
||
by_dot = true;
|
||
bool tmp2 = search_all;
|
||
search_all = false;
|
||
_dot_node.left.visit(this);
|
||
search_all = tmp2;
|
||
by_dot = tmp;
|
||
|
||
if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcScope)
|
||
{
|
||
if (((returned_scope as ElementScope).sc as ProcScope).return_type != null)
|
||
returned_scope = new ElementScope(((returned_scope as ElementScope).sc as ProcScope).return_type);
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else if (returned_scope != null && returned_scope is ProcScope)
|
||
{
|
||
|
||
ProcScope ps = returned_scope as ProcScope;
|
||
if (ps.return_type == null)
|
||
{
|
||
if (ps.is_constructor)
|
||
returned_scope = new ElementScope(ps.declaringType);
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else
|
||
returned_scope = new ElementScope((returned_scope as ProcScope).return_type);
|
||
}
|
||
else if (returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is ProcType && _dot_node.left is method_call)
|
||
{
|
||
TypeScope ts = ((returned_scope as ElementScope).sc as ProcType).target.return_type;
|
||
if (ts != null)
|
||
returned_scope = new ElementScope(ts);
|
||
|
||
}
|
||
else if ((returned_scope != null && returned_scope is ElementScope && (returned_scope as ElementScope).sc is CompiledScope && ((returned_scope as ElementScope).sc as CompiledScope).IsDelegate) && _dot_node.left is method_call)
|
||
{
|
||
ProcScope invoke_meth = ((returned_scope as ElementScope).sc as CompiledScope).FindNameOnlyInThisType("Invoke") as ProcScope;
|
||
if (invoke_meth != null)
|
||
returned_scope = new ElementScope(invoke_meth.return_type);
|
||
}
|
||
if (returned_scope != null)
|
||
{
|
||
if (!search_all)
|
||
{
|
||
SymScope left_scope = returned_scope;
|
||
|
||
if (_dot_node.right is ident)
|
||
{
|
||
SymScope tmp_tn = returned_scope;
|
||
returned_scope = returned_scope.FindNameOnlyInType((_dot_node.right as ident).name);
|
||
if (returned_scope != null && returned_scope is ElementScope)
|
||
{
|
||
if (left_scope is ElementScope)
|
||
returned_scope = CheckForAccess(left_scope as ElementScope, returned_scope as ElementScope);
|
||
else if (left_scope is TypeScope)
|
||
returned_scope = CheckForAccess(left_scope as TypeScope, returned_scope as ElementScope);
|
||
return;
|
||
}
|
||
ProcScope ps = returned_scope as ProcScope;
|
||
if (ps != null && !(ps.IsStatic && tmp_tn is ElementScope))
|
||
{
|
||
if (ps.return_type == null || ps.parameters != null && ps.parameters.Count > 0)
|
||
{
|
||
method_call mc = new method_call(_dot_node, new expression_list());
|
||
mc.visit(this);
|
||
return;
|
||
}
|
||
if (ps.return_type != null)
|
||
{
|
||
CompiledMethodScope tmp_sc = returned_scope as CompiledMethodScope;
|
||
returned_scope = new ElementScope(ps);
|
||
if (tmp_sc != null)
|
||
returned_scope.topScope = tmp_sc.topScope;
|
||
if (left_scope is ElementScope)
|
||
returned_scope = CheckForAccess(left_scope as ElementScope, returned_scope as ElementScope);
|
||
else if (left_scope is TypeScope)
|
||
returned_scope = CheckForAccess(left_scope as TypeScope, returned_scope as ElementScope);
|
||
return;
|
||
}
|
||
}
|
||
else if (ps != null)
|
||
{
|
||
method_call mc = new method_call(_dot_node, new expression_list());
|
||
mc.visit(this);
|
||
return;
|
||
}
|
||
if (tmp_tn is ElementScope && stv != null)
|
||
{
|
||
List<ProcScope> procs = stv.entry_scope.GetExtensionMethods((_dot_node.right as ident).name, (tmp_tn as ElementScope).sc as TypeScope);
|
||
if (procs.Count > 0)
|
||
{
|
||
foreach (ProcScope proc in procs)
|
||
{
|
||
if (proc.parameters.Count == 0 || proc.parameters.Count == 1 && proc.is_extension && string.Compare(proc.parameters[0].Name, "self", true) == 0)
|
||
{
|
||
returned_scope = proc;
|
||
return;
|
||
}
|
||
}
|
||
returned_scope = procs[0];
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
SymScope left_scope = returned_scope;
|
||
returned_scopes = returned_scope.FindOverloadNamesOnlyInType((_dot_node.right as ident).name);
|
||
List<int> to_remove = new List<int>();
|
||
for (int i = 0; i < returned_scopes.Count; i++)
|
||
{
|
||
if (returned_scopes[i] is ElementScope && (returned_scopes[i] as ElementScope).sc is ProcType)
|
||
{
|
||
if (left_scope is ElementScope)
|
||
returned_scopes[i] = CheckForAccess(left_scope as ElementScope, returned_scopes[i] as ElementScope);
|
||
//if (ret_names[i] != null)
|
||
//ret_names[i] = ((ret_names[i] as ElementScope).sc as ProcType).target;
|
||
}
|
||
else if (returned_scopes[i] is ProcScope && (returned_scopes[i] as ProcScope).acc_mod == access_modifer.protected_modifer)
|
||
{
|
||
returned_scopes[i] = CheckForAccess(left_scope as ElementScope, returned_scopes[i] as ProcScope);
|
||
//if (ret_names[i] != null)
|
||
//ret_names[i] = ((ret_names[i] as ElementScope).sc as ProcType).target;
|
||
}
|
||
else if (left_scope is ElementScope && returned_scopes[i] is ProcScope && (returned_scopes[i] as ProcScope).IsStatic)
|
||
{
|
||
returned_scopes[i] = null;
|
||
}
|
||
else if (left_scope is TypeScope && returned_scopes[i] is ProcScope && !(returned_scopes[i] as ProcScope).IsStatic && !(returned_scopes[i] as ProcScope).IsConstructor() && !(returned_scope is TypeScope && (returned_scopes[i] as ProcScope).is_extension))
|
||
{
|
||
returned_scopes[i] = null;
|
||
}
|
||
}
|
||
returned_scopes.RemoveAll(x => x == null);
|
||
|
||
if (returned_scope is ElementScope && stv != null)
|
||
{
|
||
List<ProcScope> procs = stv.entry_scope.GetExtensionMethods((_dot_node.right as ident).name, (returned_scope as ElementScope).sc as TypeScope);
|
||
for (int i = 0; i < procs.Count; i++)
|
||
if (!returned_scopes.Contains(procs[i]))
|
||
returned_scopes.Add(procs[i]);
|
||
}
|
||
|
||
search_all = false;
|
||
}
|
||
}
|
||
}
|
||
|
||
public override void visit(empty_statement _empty_statement)
|
||
{
|
||
}
|
||
|
||
public override void visit(goto_statement _goto_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(labeled_statement _labeled_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(with_statement _with_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
private ProcScope select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, params expression[] args)
|
||
{
|
||
List<SymScope> arg_types = new List<SymScope>();
|
||
List<TypeScope> arg_types2 = new List<TypeScope>();
|
||
SymScope[] saved_selected_methods = selected_methods;
|
||
selected_methods = meths;
|
||
if (tleft != null || tright != null)
|
||
{
|
||
if (tleft != null)
|
||
{
|
||
arg_types.Add(tleft);
|
||
arg_types2.Add(tleft);
|
||
}
|
||
if (tright != null)
|
||
{
|
||
arg_types.Add(tright);
|
||
arg_types2.Add(tright);
|
||
}
|
||
}
|
||
else if (args != null)
|
||
{
|
||
foreach (expression e in args)
|
||
{
|
||
e.visit(this);
|
||
returned_scopes.Clear();
|
||
if (returned_scope is ElementScope)
|
||
returned_scope = (returned_scope as ElementScope).sc;
|
||
if (returned_scope is ProcScope)
|
||
returned_scope = (returned_scope as ProcScope).return_type;
|
||
arg_types.Add(returned_scope);
|
||
arg_types2.Add(returned_scope as TypeScope);
|
||
}
|
||
}
|
||
selected_methods = saved_selected_methods;
|
||
List<ProcScope> good_procs = new List<ProcScope>();
|
||
for (int i = 0; i < meths.Length; i++)
|
||
{
|
||
if (meths[i] is ProcScope)
|
||
{
|
||
if (DomSyntaxTreeVisitor.is_good_overload(meths[i] as ProcScope, arg_types))
|
||
if (!meths[i].si.not_include || by_dot || mouse_hover && meths[i].loc == null)
|
||
good_procs.Add(meths[i] as ProcScope);
|
||
}
|
||
else if (meths[i] is ProcType)
|
||
{
|
||
if (DomSyntaxTreeVisitor.is_good_overload((meths[i] as ProcType).target, arg_types))
|
||
if (!meths[i].si.not_include || by_dot || mouse_hover && meths[i].loc == null)
|
||
good_procs.Add((meths[i] as ProcType).target);
|
||
}
|
||
}
|
||
if (good_procs.Count > 1)
|
||
for (int i = 0; i < good_procs.Count; i++)
|
||
if (DomSyntaxTreeVisitor.is_good_exact_overload(good_procs[i] as ProcScope, arg_types))
|
||
return good_procs[i].GetInstance(arg_types2);
|
||
if (good_procs.Count == 0)
|
||
{
|
||
for (int i = 0; i < meths.Length; i++)
|
||
{
|
||
if (meths[i] is ProcScope)
|
||
{
|
||
if (obj != null && !(meths[i] as ProcScope).IsStatic)
|
||
{
|
||
good_procs.Add(meths[i] as ProcScope);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (good_procs.Count > 0)
|
||
{
|
||
int ind = 0;
|
||
if (obj != null)
|
||
{
|
||
for (int i = 0; i < good_procs.Count; i++)
|
||
{
|
||
if (good_procs[i].parameters.Count == 0)
|
||
{
|
||
ind = i;
|
||
break;
|
||
}
|
||
TypeScope param_type = good_procs[i].parameters[0].sc as TypeScope;
|
||
if (param_type.original_type != null)
|
||
param_type = param_type.original_type;
|
||
if (good_procs[i].IsExtension && param_type.IsEqual(obj))
|
||
{
|
||
ind = i;
|
||
break;
|
||
}
|
||
}
|
||
if (obj.GetElementType() != null && good_procs[0].IsExtension && !(good_procs[0].parameters[0].sc is TemplateParameterScope))
|
||
obj = obj.GetElementType();
|
||
arg_types2.Insert(0, obj);
|
||
arg_types.Insert(0, obj);
|
||
for (int i = 0; i < good_procs.Count; i++)
|
||
if (DomSyntaxTreeVisitor.is_good_exact_overload(good_procs[i] as ProcScope, arg_types))
|
||
return good_procs[i].GetInstance(arg_types2);
|
||
}
|
||
|
||
return good_procs[ind].GetInstance(arg_types2);
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/*private ProcScope select_method(SymScope[] procs, params expression[] args)
|
||
{
|
||
List<SymScope> arg_types = new List<SymScope>();
|
||
if (args != null)
|
||
foreach (expression e in args)
|
||
{
|
||
bool tmp = by_dot;
|
||
e.visit(this);
|
||
returned_scopes.Clear();
|
||
if (returned_scope != null)
|
||
{
|
||
if (returned_scope is ElementScope)
|
||
{
|
||
returned_scope = (returned_scope as ElementScope).sc;
|
||
if (returned_scope is ProcScope)
|
||
returned_scope = (returned_scope as ProcScope).return_type;
|
||
}
|
||
else if (returned_scope is ProcScope)
|
||
returned_scope = (returned_scope as ProcScope).return_type;
|
||
}
|
||
arg_types.Add(returned_scope);
|
||
}
|
||
List<ProcScope> good_procs = new List<ProcScope>();
|
||
for (int i = 0; i < procs.Length; i++)
|
||
{
|
||
if (procs[i] is ProcScope)
|
||
{
|
||
if (DomSyntaxTreeVisitor.is_good_overload(procs[i] as ProcScope, arg_types))
|
||
if (!procs[i].si.not_include || by_dot)
|
||
good_procs.Add(procs[i] as ProcScope);
|
||
}
|
||
}
|
||
if (good_procs.Count > 1)
|
||
for (int i = 0; i < good_procs.Count; i++)
|
||
if (DomSyntaxTreeVisitor.is_good_exact_overload(good_procs[i] as ProcScope, arg_types))
|
||
return good_procs[i];
|
||
if (good_procs.Count > 0)
|
||
return good_procs[0];
|
||
return null;
|
||
}*/
|
||
|
||
public override void visit(method_call _method_call)
|
||
{
|
||
returned_scopes.Clear();
|
||
if (method_call_cache.ContainsKey(_method_call))
|
||
{
|
||
returned_scope = method_call_cache[_method_call];
|
||
return;
|
||
}
|
||
search_all = true;
|
||
_method_call.dereferencing_value.visit(this);
|
||
search_all = false;
|
||
SymScope[] names = returned_scopes.ToArray();
|
||
if (names.Length > 0 && names[0] is ElementScope && (names[0] as ElementScope).sc is TypeScope && ((names[0] as ElementScope).sc as TypeScope).IsDelegate)
|
||
{
|
||
returned_scope = names[0];
|
||
method_call_cache[_method_call] = returned_scope;
|
||
return;
|
||
}
|
||
// Срабатывает на операции преобразования типа
|
||
if (names.All(name => name is TypeScope))
|
||
{
|
||
returned_scope = new ElementScope(names[0]);
|
||
method_call_cache[_method_call] = returned_scope;
|
||
return;
|
||
}
|
||
TypeScope obj = null;
|
||
foreach (SymScope ss in names)
|
||
{
|
||
if (ss is ProcScope && (ss as ProcScope).is_extension)
|
||
{
|
||
ProcScope proc = ss as ProcScope;
|
||
if (_method_call.dereferencing_value is dot_node)
|
||
{
|
||
bool tmp = by_dot;
|
||
by_dot = true;
|
||
(_method_call.dereferencing_value as dot_node).left.visit(this);
|
||
if (returned_scope is ElementScope)
|
||
returned_scope = (returned_scope as ElementScope).sc;
|
||
else if (returned_scope is ProcScope)
|
||
returned_scope = (returned_scope as ProcScope).return_type;
|
||
obj = returned_scope as TypeScope;
|
||
by_dot = tmp;
|
||
if (obj != null && proc.parameters != null && proc.parameters.Count > 0 && !(proc.parameters[0].sc is TemplateParameterScope || proc.parameters[0].sc is UnknownScope))
|
||
{
|
||
TypeScope param_type = proc.parameters[0].sc as TypeScope;
|
||
if (obj.implemented_interfaces != null)
|
||
{
|
||
foreach (TypeScope interf in obj.implemented_interfaces)
|
||
{
|
||
if (interf.original_type != null && param_type.original_type != null && interf.original_type == param_type.original_type)
|
||
{
|
||
List<TypeScope> generic_args = interf.GetInstances();
|
||
if (generic_args != null && generic_args.Count > 0)
|
||
obj = generic_args[0];
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
ProcScope ps = select_method(names, null, null, obj, _method_call.parameters != null ? _method_call.parameters.expressions.ToArray() : null);
|
||
returned_scope = ps;
|
||
if (ps == null && names.Length > 0)
|
||
{
|
||
returned_scope = null;
|
||
|
||
// Если есть ProcScope, то приоритет отдаем ему.
|
||
// Неверно в случае, когда есть подходящая операция преобразования типа у TypeScope,
|
||
// но операция преобразования типа по хорошему должна обрабатываться в select_method EVA
|
||
if (names[0] is TypeScope && names.Length > 1)
|
||
{
|
||
var p = names.FirstOrDefault(s => s is ProcScope);
|
||
|
||
if (p != null)
|
||
returned_scope = p;
|
||
else
|
||
{
|
||
returned_scope = new ElementScope(names[0]);
|
||
return;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
foreach (SymScope ss in names)
|
||
{
|
||
if (ss is ProcScope)
|
||
{
|
||
returned_scope = ss;
|
||
break;
|
||
}
|
||
else if (ss is TypeScope)
|
||
{
|
||
returned_scope = new ElementScope(ss);
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (returned_scope != null)
|
||
{
|
||
if (returned_scope is ProcScope)
|
||
{
|
||
ps = returned_scope as ProcScope;
|
||
if (by_dot)
|
||
{
|
||
if (ps.return_type != null)
|
||
returned_scope = new ElementScope(ps.return_type);
|
||
else if (ps.is_constructor)
|
||
returned_scope = new ElementScope(ps.declaringType);
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
else
|
||
returned_scope = new ElementScope(ps);
|
||
}
|
||
// ниже мертый код, поскольку эти типы наследники ProcScope EVA
|
||
/*else if (returned_scope is ProcRealization)
|
||
{
|
||
if ((returned_scope as ProcRealization).def_proc != null && (returned_scope as ProcRealization).def_proc.return_type != null)
|
||
returned_scope = new ElementScope((returned_scope as ProcRealization).def_proc.return_type);
|
||
else returned_scope = null;
|
||
}
|
||
else if (returned_scope is CompiledMethodScope)
|
||
{
|
||
if ((returned_scope as CompiledMethodScope).return_type != null)
|
||
returned_scope = new ElementScope((returned_scope as CompiledMethodScope).return_type);
|
||
else returned_scope = null;
|
||
}*/
|
||
/*else if (ret_tn is ElementScope && (ret_tn as ElementScope).sc is ProcScope)
|
||
{
|
||
ret_tn = new ElementScope(((ret_tn as ElementScope).sc as ProcScope).return_type);
|
||
}
|
||
else if (ret_tn is ElementScope && (ret_tn as ElementScope).sc is ProcType)
|
||
{
|
||
TypeScope ts = ((ret_tn as ElementScope).sc as ProcType).target.return_type;
|
||
if (ts != null)
|
||
ret_tn = new ElementScope(ts);
|
||
}
|
||
else ret_tn = null;*/
|
||
}
|
||
method_call_cache[_method_call] = returned_scope;
|
||
}
|
||
|
||
public override void visit(pascal_set_constant psc)
|
||
{
|
||
//throw new NotImplementedException();
|
||
// returned_scope = null;
|
||
|
||
var dn = new dot_node(new ident(StringConstants.pascalSystemUnitName), new ident("Arr"), psc.source_context);
|
||
var el = new expression_list(psc.values.expressions[0], psc.source_context);
|
||
var nn = new method_call(dn, el, psc.source_context);
|
||
var dn1 = new dot_node(new ident(StringConstants.pascalSystemUnitName), new ident("__NewSetCreatorInternal"), psc.source_context);
|
||
var el1 = new expression_list(nn, psc.source_context);
|
||
var nn1 = new method_call(dn1, el1, psc.source_context);
|
||
visit(nn1);
|
||
}
|
||
|
||
public override void visit(array_const _array_const)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(write_accessor_name _write_accessor_name)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(read_accessor_name _read_accessor_name)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(property_accessors _property_accessors)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(simple_property _simple_property)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(index_property _index_property)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(class_members _class_members)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(access_modifer_node _access_modifer_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(class_body_list _class_body)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(class_definition _class_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(default_indexer_property_node _default_indexer_property_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(known_type_definition _known_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(set_type_definition _set_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(record_const_definition _record_const_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(record_const _record_const)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(record_type _record_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(enum_type_definition _enum_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(char_const _char_const)
|
||
{
|
||
//throw new NotImplementedException();
|
||
returned_scope = new ElementScope(TypeTable.char_type);
|
||
}
|
||
|
||
public override void visit(raise_statement _raise_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(sharp_char_const _sharp_char_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.char_type);
|
||
}
|
||
|
||
public override void visit(literal_const_line _literal_const_line)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.string_type);
|
||
}
|
||
|
||
public override void visit(string_num_definition _string_num_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(variant _variant)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(variant_list _variant_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(variant_type _variant_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(variant_types _variant_types)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(variant_record_type _variant_record_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(procedure_call _procedure_call)
|
||
{
|
||
_procedure_call.func_name.visit(this);
|
||
}
|
||
|
||
public override void visit(class_predefinition _class_predefinition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(nil_const _nil_const)
|
||
{
|
||
//throw new NotImplementedException();
|
||
returned_scope = new NullTypeScope();
|
||
}
|
||
|
||
public override void visit(file_type_definition _file_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(constructor _constructor)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(destructor _destructor)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(inherited_method_call _inherited_method_call)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(typecast_node _typecast_node)
|
||
{
|
||
if (_typecast_node.cast_op == op_typecast.as_op || _typecast_node.cast_op == op_typecast.typecast)
|
||
{
|
||
_typecast_node.type_def.visit(this);
|
||
if (returned_scope != null) returned_scope = new ElementScope(returned_scope);
|
||
}
|
||
else if (_typecast_node.cast_op == op_typecast.is_op)
|
||
returned_scope = new ElementScope(entry_scope.FindName(StringConstants.bool_type_name));
|
||
}
|
||
|
||
public override void visit(interface_node _interface_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(implementation_node _implementation_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(diap_expr _diap_expr)
|
||
{
|
||
returned_scope = null;
|
||
}
|
||
|
||
public override void visit(block _block)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(proc_block _proc_block)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(array_of_named_type_definition _array_of_named_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(array_of_const_type_definition _array_of_const_type_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(literal _literal)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(case_variants _case_variants)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(diapason_expr _diapason_expr)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(var_def_list_for_record _var_def_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(record_type_parts _record_type_parts)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(property_array_default _property_array_default)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(property_interface _property_interface)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(property_parameter _property_parameter)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(property_parameter_list _property_parameter_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(inherited_ident _inherited_ident)
|
||
{
|
||
var tmp_scope = entry_scope;
|
||
if (entry_scope.topScope is TypeScope)
|
||
{
|
||
entry_scope = (entry_scope.topScope as TypeScope).baseScope;
|
||
}
|
||
new ident(_inherited_ident.name).visit(this);
|
||
entry_scope = tmp_scope;
|
||
}
|
||
|
||
public override void visit(format_expr _format_expr)
|
||
{
|
||
returned_scope = entry_scope.FindName(StringConstants.string_type_name);
|
||
}
|
||
|
||
public override void visit(initfinal_part _initfinal_part)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(token_info _token_info)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(compiler_directive_if _compiler_directive_if)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(compiler_directive_list _compiler_directive_list)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(raise_stmt _raise_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(op_type_node _op_type_node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(file_type _file_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(known_type_ident _known_type_ident)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(exception_handler _exception_handler)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(exception_ident _exception_ident)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(exception_handler_list _exception_handler_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(exception_block _exception_block)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(try_handler _try_handler)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(try_handler_finally _try_handler_finally)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(try_handler_except _try_handler_except)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(try_stmt _try_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(inherited_message _inherited_message)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(external_directive _external_directive)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(using_list _using_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(jump_stmt _jump_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(loop_stmt _loop_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(foreach_stmt _foreach_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(addressed_value_funcname _addressed_value_funcname)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(named_type_reference_list _named_type_reference_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(template_param_list _template_param_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(template_type_reference _template_type_reference)
|
||
{
|
||
returned_scope = entry_scope;
|
||
for (int i = 0; i < _template_type_reference.name.names.Count; i++)
|
||
{
|
||
string suffix = "";
|
||
if (i == _template_type_reference.name.names.Count - 1)
|
||
suffix = "`" + _template_type_reference.params_list.params_list.Count;
|
||
else
|
||
suffix = "";
|
||
if (i > 0)
|
||
{
|
||
returned_scope = returned_scope.FindNameOnlyInType(_template_type_reference.name.names[i].name + suffix);
|
||
if (returned_scope == null)
|
||
returned_scope = entry_scope.FindNameOnlyInType(_template_type_reference.name.names[i].name + suffix);
|
||
}
|
||
else
|
||
{
|
||
returned_scope = returned_scope.FindName(_template_type_reference.name.names[i].name + suffix);
|
||
if (returned_scope == null)
|
||
returned_scope = entry_scope.FindName(_template_type_reference.name.names[i].name);
|
||
}
|
||
|
||
if (returned_scope == null)
|
||
return;
|
||
}
|
||
if (returned_scope is TypeScope)
|
||
{
|
||
TypeScope ts = returned_scope as TypeScope;
|
||
List<TypeScope> gen_args = new List<TypeScope>();
|
||
foreach (type_definition td in _template_type_reference.params_list.params_list)
|
||
{
|
||
td.visit(this);
|
||
gen_args.Add(returned_scope as TypeScope);
|
||
}
|
||
returned_scope = ts.GetInstance(gen_args);
|
||
}
|
||
else
|
||
returned_scope = null;
|
||
}
|
||
|
||
public override void visit(int64_const _int64_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.int64_type);
|
||
}
|
||
|
||
public override void visit(uint64_const _uint64_const)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.uint64_type);
|
||
}
|
||
|
||
public override void visit(new_expr _new_expr)
|
||
{
|
||
_new_expr.type.visit(this);
|
||
if (returned_scope != null && returned_scope is TypeScope)
|
||
{
|
||
TypeScope ts = returned_scope as TypeScope;
|
||
if (_new_expr.new_array)
|
||
{
|
||
ts = new ArrayScope(ts, new TypeScope[1] { TypeTable.int_type });
|
||
(ts as ArrayScope).is_dynamic_arr = true;
|
||
returned_scope = ts;
|
||
return;
|
||
}
|
||
ProcScope tmp = ts.GetConstructor();
|
||
List<ProcScope> cnstrs = ts.GetConstructors(false);
|
||
cnstrs.RemoveAll(x => (x.si.acc_mod == access_modifer.private_modifer || x.si.acc_mod == access_modifer.protected_modifer) && !this.CheckPrivateForBaseAccess(entry_scope, x));
|
||
if (search_all)
|
||
returned_scopes.AddRange(cnstrs.ToArray());
|
||
if (!on_bracket)
|
||
{
|
||
ProcScope[] constrs = cnstrs.ToArray();
|
||
ProcScope ps = select_method(constrs, null, null, null, _new_expr.params_list != null ? _new_expr.params_list.expressions.ToArray() : null);
|
||
if (ps != null)
|
||
returned_scope = ps;
|
||
else if (cnstrs.Count > 0)
|
||
returned_scope = cnstrs[0];
|
||
else
|
||
returned_scope = tmp;
|
||
}
|
||
else
|
||
returned_scope = tmp;
|
||
}
|
||
}
|
||
|
||
public override void visit(where_type_specificator_list _type_definition_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(where_definition _where_definition)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(where_definition_list _where_definition_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(sizeof_operator _sizeof_operator)
|
||
{
|
||
returned_scope = new ElementScope(entry_scope.FindName(StringConstants.integer_type_name));
|
||
}
|
||
|
||
public override void visit(typeof_operator _typeof_operator)
|
||
{
|
||
returned_scope = new ElementScope(TypeTable.get_compiled_type(new SymInfo("Type", SymbolKind.Type, "System.Type"), typeof(Type)));
|
||
}
|
||
|
||
public override void visit(compiler_directive _compiler_directive)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(operator_name_ident _operator_name_ident)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(var_statement _var_statement)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(question_colon_expression _question_colon_expression)
|
||
{
|
||
_question_colon_expression.ret_if_true.visit(this);
|
||
}
|
||
|
||
public override void visit(expression_as_statement _expression_as_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(c_scalar_type _c_scalar_type)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(c_module _c_module)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(declarations_as_statement _declarations_as_statement)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(array_size _array_size)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(enumerator _enumerator)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(enumerator_list _enumerator_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(c_for_cycle _c_for_cycle)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(switch_stmt _switch_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(type_definition_attr_list _type_definition_attr_list)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(type_definition_attr _type_definition_attr)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(lock_stmt _lock_stmt)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(documentation_comment_list node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(documentation_comment_section node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(documentation_comment_tag node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(documentation_comment_tag_param node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(token_taginfo node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
public override void visit(declaration_specificator node)
|
||
{
|
||
throw new NotImplementedException();
|
||
}
|
||
|
||
public override void visit(ident_with_templateparams node)
|
||
{
|
||
node.name.visit(this);
|
||
if (returned_scopes.Count > 0 && returned_scopes[0] is ProcScope)
|
||
{
|
||
ProcScope ps = returned_scopes[0] as ProcScope;
|
||
List<TypeScope> template_params = new List<TypeScope>();
|
||
foreach (type_definition td in node.template_params.params_list)
|
||
{
|
||
td.visit(this);
|
||
if (returned_scope is TypeScope)
|
||
template_params.Add(returned_scope as TypeScope);
|
||
else
|
||
{
|
||
return;
|
||
}
|
||
}
|
||
returned_scopes[0] = ps.GetInstance(template_params);
|
||
returned_scope = returned_scopes[0];
|
||
}
|
||
else if (returned_scope is ProcScope)
|
||
{
|
||
ProcScope ps = returned_scope as ProcScope;
|
||
List<TypeScope> template_params = new List<TypeScope>();
|
||
foreach (type_definition td in node.template_params.params_list)
|
||
{
|
||
td.visit(this);
|
||
if (returned_scope is TypeScope)
|
||
template_params.Add(returned_scope as TypeScope);
|
||
else
|
||
{
|
||
returned_scope = ps;
|
||
return;
|
||
}
|
||
}
|
||
returned_scope = ps.GetInstance(template_params);
|
||
}
|
||
else if (returned_scope is TypeScope && !(returned_scope as TypeScope).IsGeneric)
|
||
{
|
||
SymScope ts = returned_scope;
|
||
if (node.name is ident)
|
||
(node.name as ident).name += "`" + node.template_params.params_list.Count;
|
||
else if (node.name is dot_node && (node.name as dot_node).right is ident)
|
||
((node.name as dot_node).right as ident).name += "`" + node.template_params.params_list.Count;
|
||
node.name.visit(this);
|
||
if (returned_scope == null)
|
||
returned_scope = ts;
|
||
}
|
||
/*else if (this.returned_scope != null)
|
||
{
|
||
if (this.returned_scope is TypeScope)
|
||
{
|
||
TypeScope ts = returned_scope as TypeScope;
|
||
List<TypeScope> instances = new List<TypeScope>();
|
||
foreach (type_definition td in node.template_params.params_list)
|
||
{
|
||
td.visit(this);
|
||
if (returned_scope != null && returned_scope is TypeScope)
|
||
instances.Add(returned_scope as TypeScope);
|
||
}
|
||
returned_scope = ts.GetInstance(instances);
|
||
}
|
||
}*/
|
||
}
|
||
|
||
public override void visit(bracket_expr _bracket_expr)
|
||
{
|
||
_bracket_expr.expr.visit(this);
|
||
}
|
||
|
||
public override void visit(attribute _attribute)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(attribute_list _attribute_list)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(simple_attribute_list _simple_attribute_list)
|
||
{
|
||
|
||
}
|
||
|
||
public override void visit(function_lambda_definition _function_lambda_definition)
|
||
{
|
||
ProcScope ps = new ProcScope(_function_lambda_definition.lambda_name, null);
|
||
if (_function_lambda_definition.ident_list != null)
|
||
foreach (ident id in _function_lambda_definition.ident_list.idents)
|
||
ps.AddParameter(new ElementScope(new SymInfo(id.name, SymbolKind.Parameter, ""), new UnknownScope(new SymInfo("", SymbolKind.Type, "")), ps));
|
||
_function_lambda_definition.proc_body.visit(this);
|
||
if (returned_scope is ElementScope)
|
||
returned_scope = (returned_scope as ElementScope).sc;
|
||
ps.return_type = new UnknownScope(new SymInfo("", SymbolKind.Class, ""));// returned_scope as TypeScope;
|
||
returned_scope = new ProcType(ps);
|
||
}
|
||
public override void visit(function_lambda_call _function_lambda_call)
|
||
{
|
||
//
|
||
}
|
||
public override void visit(semantic_check _semantic_check)
|
||
{
|
||
}
|
||
public override void visit(lambda_inferred_type lit) //lroman//
|
||
{
|
||
}
|
||
public override void visit(same_type_node stn) //SS 22/06/13//
|
||
{
|
||
}
|
||
public override void visit(name_assign_expr _name_assign_expr) // SSM 27.06.13
|
||
{
|
||
}
|
||
public override void visit(name_assign_expr_list _name_assign_expr_list) // SSM 27.06.13
|
||
{
|
||
}
|
||
public override void visit(unnamed_type_object _unnamed_type_object) // SSM 27.06.13
|
||
{
|
||
}
|
||
public override void visit(semantic_type_node stn) // SSM
|
||
{
|
||
}
|
||
|
||
public override void visit(slice_expr _slice_expr)
|
||
{
|
||
_slice_expr.v.visit(this);
|
||
}
|
||
|
||
public override void visit(slice_expr_question _slice_expr_question)
|
||
{
|
||
_slice_expr_question.v.visit(this);
|
||
}
|
||
public override void visit(tuple_node _tuple_node)
|
||
{
|
||
method_call mc = new method_call();
|
||
mc.parameters = _tuple_node.el;
|
||
mc.dereferencing_value = new dot_node(new ident("Tuple"), new ident(StringConstants.default_constructor_name));
|
||
mc.visit(this);
|
||
}
|
||
|
||
public override void visit(diapason_expr_new _diapason_expr_new)
|
||
{
|
||
/*_diapason_expr_new.left.visit(this);
|
||
TypeScope ts = TypeTable.get_compiled_type(new SymInfo("IEnumerable`1", SymbolKind.Type, "System.Collections.Generic.IEnumerable`1"), typeof(IEnumerable<>));
|
||
TypeScope elem_ts = null;
|
||
if (returned_scope is ElementScope)
|
||
elem_ts = (returned_scope as ElementScope).sc as TypeScope;
|
||
if (elem_ts != null)
|
||
ts = ts.GetInstance(new List<TypeScope>() { elem_ts });
|
||
returned_scope = new ElementScope(ts);*/
|
||
|
||
method_call mc = new method_call();
|
||
mc.parameters = new expression_list(new List<expression> { _diapason_expr_new.left, _diapason_expr_new.right });
|
||
mc.dereferencing_value = new dot_node(new ident(StringConstants.pascalSystemUnitName), new ident("InternalRange"));
|
||
mc.visit(this);
|
||
}
|
||
|
||
public override void visit(array_const_new acn)
|
||
{
|
||
acn.elements.expressions[0].visit(this);
|
||
//var rr = this.returned_scope;
|
||
//var nn = new new_expr((syntax_type, plist, true, new SyntaxTree.array_const(acn.elements, acn.elements.source_context), acn.source_context);
|
||
//var nn = new new_expr($2, el, true, $6 as array_const, @$);
|
||
var dn = new dot_node(new ident(StringConstants.pascalSystemUnitName), new ident("Arr"), acn.source_context);
|
||
var el = new expression_list(acn.elements.expressions[0], acn.source_context);
|
||
var nn = new method_call(dn, el, acn.source_context);
|
||
visit(nn);
|
||
}
|
||
}
|
||
}
|