Большое обновление задачника PT4 до версии 4.23
This commit is contained in:
parent
c4f4a3c2cf
commit
bc74749a12
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
|||
public const string Major = "3";
|
||||
public const string Minor = "9";
|
||||
public const string Build = "0";
|
||||
public const string Revision = "3313";
|
||||
public const string Revision = "3315";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%MINOR%=9
|
||||
%REVISION%=3313
|
||||
%REVISION%=3315
|
||||
%COREVERSION%=0
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
3.9.0.3313
|
||||
3.9.0.3315
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -18,6 +18,6 @@ P.ptCommentQuote{text-align:left;margin-left:120px;margin-top:0px;margin-bottom:
|
|||
P.ptCommentContinue{text-align:justify;}
|
||||
P.ptFooter{text-align:right;font-size:10pt;font-style:italic;margin-right:0px;}
|
||||
SPAN.ptSpecial{font-family:"Arial";}
|
||||
PRE{font-family:"Courier New";text-align:left;font-size:10pt;text-indent:0px;margin-top:5px; margin-right:10px; margin-bottom:0px; margin-left:60px;}
|
||||
PRE{text-align:left;font-size:10pt;text-indent:0px;margin-top:5px; margin-right:10px; margin-bottom:0px; margin-left:60px;}
|
||||
CODE{font-size:10pt;}
|
||||
P.ptPicture{font-family:Arial, sans-serif;margin-top: 5px;margin-bottom: 5px;margin-left: 60px;font-size: small;color: #000080;text-indent: 0pt;text-align: justify}
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1 +1 @@
|
|||
N“票ª|10PABC2 NC:\Program Files (x86)\PascalABC.NET\PT4 NV8Â˜í«·®®#"%'%&&*&$#"%'%&&*&6b3:'%&&*&$#"%'%8>>674;7?<?8<98<257566:643257566:6
|
||||
Nmikhail|10PABC1 NC:\Program Files (x86)\PascalABC.NET\PT4 NV82roqrgmo"%'%&&*&$#"%'%&&*&:¢8:'%&&*&$#"%'%=6;<8756>;;;B;88;=@78=>;9;:;8>87@<
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
PROGRAMMING TASKBOOK FOR PASCALABC.NET
|
||||
|
||||
Copyright (c) M. Abramyan, 1998-2018
|
||||
Copyright (c) M. Abramyan, 1998-2023
|
||||
|
||||
|
||||
LICENSE FOR USE AND DISTRIBUTION
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ PROGRAMMING TASKBOOK FOR PASCALABC.NET
|
|||
Электронный задачник по программированию
|
||||
(версия для системы PascalABC.NET)
|
||||
|
||||
Copyright (c) <20>. <20>. <20>בנאל<D790>ם, 1998-2018
|
||||
Copyright (c) <20>. <20>. <20>בנאל<D790>ם, 1998-2023
|
||||
|
||||
|
||||
ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ ОБ ИСПОЛЬЗОВАНИИ И РАСПРОСТРАНЕНИИ
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ ArrSlice
|
|||
ArrShift
|
||||
ArrObj
|
||||
ObjArray
|
||||
ZFunc
|
||||
ZSeries
|
||||
ZMinmax
|
||||
ZArray
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.9.0.3313'
|
||||
!define VERSION '3.9.0.3315'
|
||||
|
|
|
|||
|
|
@ -9,13 +9,16 @@
|
|||
GraphWPF, Turtle, TurtleWPF,
|
||||
WPFObjects,
|
||||
NumLibABC,
|
||||
IniFile, PointerTools, PointRect, PT4, PT4MakerNetX, Robot, RobotField,
|
||||
RobotTaskMaker, RobotZadan, Sockets, Utils, VCL, Timers, PT4Exam, PT4TaskMakerNET, RBDMUtils,
|
||||
IniFile, PointerTools, PointRect,
|
||||
PT4, PT4Exam, PT4MakerNetX, PT4TaskMakerNET, xPT4MakerNetX, xPT4TaskMakerNET,
|
||||
Robot, RobotField,
|
||||
RobotTaskMaker, RobotZadan, Sockets, Utils, VCL, Timers, RBDMUtils,
|
||||
Collections, Arrays, Core, FormsABC, MPI, ClientServer, Speech, Sounds, Countries,
|
||||
ABCDatabases,PT4Databases,BlockFileOfT,Controls,
|
||||
OpenCLABC, OpenCL,
|
||||
OpenGLABC, OpenGL,
|
||||
BBCMicroBit, School, SF, TwoPanelsWindow, NUnitABC, PlotWPF, XLSX, LightPT, Tasks, Мозаика
|
||||
BBCMicroBit, School, SF, TwoPanelsWindow, NUnitABC, PlotWPF, XLSX, LightPT, Tasks, Мозаика,
|
||||
TasksArr
|
||||
;
|
||||
|
||||
begin
|
||||
|
|
|
|||
|
|
@ -113,6 +113,11 @@
|
|||
File ..\bin\Lib\PointerTools.pcu
|
||||
File ..\bin\Lib\PointRect.pcu
|
||||
File ..\bin\Lib\PT4.pcu
|
||||
File ..\bin\Lib\PT4Exam.pcu
|
||||
File ..\bin\Lib\PT4MakerNetX.pcu
|
||||
File ..\bin\Lib\PT4TaskMakerNET.pcu
|
||||
File ..\bin\Lib\xPT4MakerNetX.pcu
|
||||
File ..\bin\Lib\xPT4TaskMakerNET.pcu
|
||||
File ..\bin\Lib\Robot.pcu
|
||||
File ..\bin\Lib\RobotField.pcu
|
||||
File ..\bin\Lib\RobotTaskMaker.pcu
|
||||
|
|
@ -121,15 +126,12 @@
|
|||
File ..\bin\Lib\Timers.pcu
|
||||
File ..\bin\Lib\Utils.pcu
|
||||
File ..\bin\Lib\VCL.pcu
|
||||
File ..\bin\Lib\PT4Exam.pcu
|
||||
File ..\bin\Lib\PT4TaskMakerNET.pcu
|
||||
File ..\bin\Lib\RBDMUtils.pcu
|
||||
File ..\bin\Lib\Collections.pcu
|
||||
File ..\bin\Lib\Core.pcu
|
||||
File ..\bin\Lib\MPI.pcu
|
||||
File ..\bin\Lib\ClientServer.pcu
|
||||
File ..\bin\Lib\OpenGL.pcu
|
||||
File ..\bin\Lib\PT4MakerNetX.pcu
|
||||
File ..\bin\Lib\Speech.pcu
|
||||
File ..\bin\Lib\Sounds.pcu
|
||||
File ..\bin\Lib\BlockFileOfT.pcu
|
||||
|
|
@ -148,6 +150,7 @@
|
|||
File ..\bin\Lib\PlotWPF.pcu
|
||||
File ..\bin\Lib\XLSX.pcu
|
||||
File ..\bin\Lib\Мозаика.pcu
|
||||
File ..\bin\Lib\TasksArr.pcu
|
||||
|
||||
File ..\bin\Lib\PABCRtl.dll
|
||||
File ..\bin\Lib\HelixToolkit.Wpf.dll
|
||||
|
|
@ -194,6 +197,11 @@
|
|||
${AddFile} "PointerTools.pcu"
|
||||
${AddFile} "PointRect.pcu"
|
||||
${AddFile} "PT4.pcu"
|
||||
${AddFile} "PT4Exam.pcu"
|
||||
${AddFile} "PT4MakerNetX.pcu"
|
||||
${AddFile} "PT4TaskMakerNET.pcu"
|
||||
${AddFile} "xPT4MakerNetX.pcu"
|
||||
${AddFile} "xPT4TaskMakerNET.pcu"
|
||||
${AddFile} "Robot.pcu"
|
||||
${AddFile} "RobotField.pcu"
|
||||
${AddFile} "RobotTaskMaker.pcu"
|
||||
|
|
@ -202,15 +210,12 @@
|
|||
${AddFile} "Timers.pcu"
|
||||
${AddFile} "Utils.pcu"
|
||||
${AddFile} "VCL.pcu"
|
||||
${AddFile} "PT4TaskMakerNET.pcu"
|
||||
${AddFile} "PT4Exam.pcu"
|
||||
${AddFile} "RBDMUtils.pcu"
|
||||
${AddFile} "Collections.pcu"
|
||||
${AddFile} "Core.pcu"
|
||||
${AddFile} "MPI.pcu"
|
||||
${AddFile} "ClientServer.pcu"
|
||||
${AddFile} "OpenGL.pcu"
|
||||
${AddFile} "PT4MakerNetX.pcu"
|
||||
${AddFile} "Speech.pcu"
|
||||
${AddFile} "Sounds.pcu"
|
||||
${AddFile} "BlockFileOfT.pcu"
|
||||
|
|
@ -229,6 +234,7 @@
|
|||
${AddFile} "PlotWPF.pcu"
|
||||
${AddFile} "XLSX.pcu"
|
||||
${AddFile} "Мозаика.pcu"
|
||||
${AddFile} "TasksArr.pcu"
|
||||
|
||||
${AddFile} "turtle.png"
|
||||
|
||||
|
|
@ -294,6 +300,10 @@
|
|||
File ..\bin\Lib\PointRect.pas
|
||||
File ..\bin\Lib\PT4.pas
|
||||
File ..\bin\Lib\PT4Exam.pas
|
||||
File ..\bin\Lib\PT4MakerNetX.pas
|
||||
File ..\bin\Lib\xPT4MakerNetX.pas
|
||||
File ..\bin\Lib\PT4TaskMakerNET.pas
|
||||
File ..\bin\Lib\xPT4TaskMakerNET.pas
|
||||
File ..\bin\Lib\Robot.pas
|
||||
File ..\bin\Lib\RobotField.pas
|
||||
File ..\bin\Lib\RobotTaskMaker.pas
|
||||
|
|
@ -302,14 +312,12 @@
|
|||
File ..\bin\Lib\Timers.pas
|
||||
File ..\bin\Lib\Utils.pas
|
||||
File ..\bin\Lib\VCL.pas
|
||||
File ..\bin\Lib\PT4TaskMakerNET.pas
|
||||
File ..\bin\Lib\RBDMUtils.pas
|
||||
File ..\bin\Lib\Collections.pas
|
||||
File ..\bin\Lib\Core.pas
|
||||
File ..\bin\Lib\MPI.pas
|
||||
File ..\bin\Lib\ClientServer.pas
|
||||
File ..\bin\Lib\OpenGL.pas
|
||||
File ..\bin\Lib\PT4MakerNetX.pas
|
||||
File ..\bin\Lib\Speech.pas
|
||||
File ..\bin\Lib\Sounds.pas
|
||||
File ..\bin\Lib\BlockFileOfT.pas
|
||||
|
|
@ -369,6 +377,10 @@
|
|||
${AddFile} "PointRect.pas"
|
||||
${AddFile} "PT4.pas"
|
||||
${AddFile} "PT4Exam.pas"
|
||||
${AddFile} "PT4MakerNetX.pas"
|
||||
${AddFile} "xPT4MakerNetX.pas"
|
||||
${AddFile} "PT4TaskMakerNET.pas"
|
||||
${AddFile} "xPT4TaskMakerNET.pas"
|
||||
${AddFile} "Robot.pas"
|
||||
${AddFile} "RobotField.pas"
|
||||
${AddFile} "RobotTaskMaker.pas"
|
||||
|
|
@ -377,13 +389,11 @@
|
|||
${AddFile} "Timers.pas"
|
||||
${AddFile} "Utils.pas"
|
||||
${AddFile} "VCL.pas"
|
||||
${AddFile} "PT4TaskMakerNET.pas"
|
||||
${AddFile} "RBDMUtils.pas"
|
||||
${AddFile} "Collections.pas"
|
||||
${AddFile} "Core.pas"
|
||||
${AddFile} "MPI.pas"
|
||||
${AddFile} "ClientServer.pas"
|
||||
${AddFile} "PT4MakerNetX.pas"
|
||||
${AddFile} "Speech.pas"
|
||||
${AddFile} "Sounds.pas"
|
||||
${AddFile} "BlockFileOfT.pas"
|
||||
|
|
|
|||
|
|
@ -32,6 +32,10 @@ Section $(DESC_PT4) PT4
|
|||
${AddFile} "loadpabc_en.dat"
|
||||
File "PT4\pt4pabc.dll"
|
||||
${AddFile} "pt4pabc.dll"
|
||||
File "PT4\pt4pabc2.dll"
|
||||
${AddFile} "pt4pabc2.dll"
|
||||
File "PT4\xpt4pabc2.dll"
|
||||
${AddFile} "xpt4pabc2.dll"
|
||||
File "PT4\PT4nld4p.dll"
|
||||
${AddFile} "PT4nld4p.dll"
|
||||
File "PT4\PT4Demo.exe"
|
||||
|
|
@ -61,55 +65,34 @@ Section $(DESC_PT4) PT4
|
|||
|
||||
|
||||
SetOutPath "$INSTDIR\PT4\Lib"
|
||||
File "PT4\Lib\PT4ExamBegin_ru.dll"
|
||||
${AddFile} "PT4ExamBegin_ru.dll"
|
||||
File "PT4\Lib\PT4ExamTaskC_ru.dll"
|
||||
${AddFile} "PT4ExamTaskC_ru.dll"
|
||||
|
||||
File "PT4\Lib\PT-Ext.dll"
|
||||
${AddFile} "PT-Ext.dll"
|
||||
|
||||
File "PT4\Lib\PT4ExamBegin.dll"
|
||||
${AddFile} "PT4ExamBegin.dll"
|
||||
File "PT4\Lib\PT4ExamBegin_ru.dll"
|
||||
${AddFile} "PT4ExamBegin_ru.dll"
|
||||
|
||||
File "PT4\Lib\PT4ExamCheck.dll"
|
||||
${AddFile} "PT4ExamCheck.dll"
|
||||
File "PT4\Lib\PT4ExamCheck_ru.dll"
|
||||
${AddFile} "PT4ExamCheck_ru.dll"
|
||||
|
||||
File "PT4\Lib\PT4ExamTaskC.dll"
|
||||
${AddFile} "PT4ExamTaskC.dll"
|
||||
File "PT4\Lib\PT4ExamTaskC_ru.dll"
|
||||
${AddFile} "PT4ExamTaskC_ru.dll"
|
||||
|
||||
File "PT4\Lib\PT4LinqBegin.dll"
|
||||
${AddFile} "PT4LinqBegin.dll"
|
||||
File "PT4\Lib\PT4LinqObj.dll"
|
||||
${AddFile} "PT4LinqObj.dll"
|
||||
File "PT4\Lib\PT4LinqXml.dll"
|
||||
${AddFile} "PT4LinqXml.dll"
|
||||
|
||||
File "PT4\Lib\PT4TMDemoAbc.dll"
|
||||
${AddFile} "PT4TMDemoAbc.dll"
|
||||
File "PT4\Lib\PT4_.txt"
|
||||
${AddFile} "PT4_.txt"
|
||||
File "PT4\Lib\PT4_Exam.txt"
|
||||
${AddFile} "PT4_Exam.txt"
|
||||
File "PT4\Lib\PT4_LinqB.txt"
|
||||
${AddFile} "PT4_LinqB.txt"
|
||||
File "PT4\Lib\PT4_LinqO.txt"
|
||||
${AddFile} "PT4_LinqO.txt"
|
||||
File "PT4\Lib\PT4_LinqX.txt"
|
||||
${AddFile} "PT4_LinqX.txt"
|
||||
File "PT4\Lib\PT4ExamBegin_ru.txt"
|
||||
${AddFile} "PT4ExamBegin_ru.txt"
|
||||
File "PT4\Lib\PT4ExamCheck_ru.txt"
|
||||
${AddFile} "PT4ExamCheck_ru.txt"
|
||||
File "PT4\Lib\PT4LinqBegin[PascalABC].txt"
|
||||
${AddFile} "PT4LinqBegin[PascalABC].txt"
|
||||
File "PT4\Lib\PT4LinqObj[PascalABC].txt"
|
||||
${AddFile} "PT4LinqObj[PascalABC].txt"
|
||||
File "PT4\Lib\PT4LinqXml[PascalABC].txt"
|
||||
${AddFile} "PT4LinqXml[PascalABC].txt"
|
||||
File "PT4\Lib\PT4-CWA-1Begin.txt"
|
||||
${AddFile} "PT4-CWA-1Begin.txt"
|
||||
File "PT4\Lib\PT4-CWA-2Robot.txt"
|
||||
${AddFile} "PT4-CWA-2Robot.txt"
|
||||
File "PT4\Lib\PT4-CWA-4Assign.txt"
|
||||
${AddFile} "PT4-CWA-4Assign.txt"
|
||||
File "PT4\Lib\PT4-CWA-5For.txt"
|
||||
${AddFile} "PT4-CWA-5For.txt"
|
||||
File "PT4\Lib\PT4-XRB.txt"
|
||||
${AddFile} "PT4-XRB.txt"
|
||||
File "PT4\Lib\PT4__.txt"
|
||||
${AddFile} "PT4__.txt"
|
||||
|
||||
File "PT4\Lib\PT4ArrFilter.dll"
|
||||
${AddFile} "PT4ArrFilter.dll"
|
||||
|
|
@ -119,8 +102,6 @@ Section $(DESC_PT4) PT4
|
|||
${AddFile} "PT4ArrGen.dll"
|
||||
File "PT4\Lib\PT4ArrObj.dll"
|
||||
${AddFile} "PT4ArrObj.dll"
|
||||
File "PT4\Lib\PT4ArrObj.txt"
|
||||
${AddFile} "PT4ArrObj.txt"
|
||||
File "PT4\Lib\PT4ArrOp.dll"
|
||||
${AddFile} "PT4ArrOp.dll"
|
||||
File "PT4\Lib\PT4ArrShift.dll"
|
||||
|
|
@ -131,25 +112,40 @@ Section $(DESC_PT4) PT4
|
|||
${AddFile} "PT4ArrTransf.dll"
|
||||
File "PT4\Lib\PT4ObjArray.dll"
|
||||
${AddFile} "PT4ObjArray.dll"
|
||||
File "PT4\Lib\PT4ObjArray.txt"
|
||||
${AddFile} "PT4ObjArray.txt"
|
||||
|
||||
File "PT4\Lib\PT4ZArray.dll"
|
||||
${AddFile} "PT4ZArray.dll"
|
||||
File "PT4\Lib\PT4ZArray_ru.dll"
|
||||
${AddFile} "PT4ZArray_ru.dll"
|
||||
File "PT4\Lib\PT4ZFunc.dll"
|
||||
${AddFile} "PT4ZFunc.dll"
|
||||
File "PT4\Lib\PT4ZFunc_ru.dll"
|
||||
${AddFile} "PT4ZFunc_ru.dll"
|
||||
File "PT4\Lib\PT4ZMatrix.dll"
|
||||
${AddFile} "PT4ZMatrix.dll"
|
||||
File "PT4\Lib\PT4ZMatrix_ru.dll"
|
||||
${AddFile} "PT4ZMatrix_ru.dll"
|
||||
File "PT4\Lib\PT4ZMinmax.dll"
|
||||
${AddFile} "PT4ZMinmax.dll"
|
||||
File "PT4\Lib\PT4ZMinmax_ru.dll"
|
||||
${AddFile} "PT4ZMinmax_ru.dll"
|
||||
File "PT4\Lib\PT4ZSeries.dll"
|
||||
${AddFile} "PT4ZSeries.dll"
|
||||
File "PT4\Lib\PT4ZSeries_ru.dll"
|
||||
${AddFile} "PT4ZSeries_ru.dll"
|
||||
|
||||
File "PT4\Lib\PT4AExam.dll"
|
||||
${AddFile} "PT4AExam.dll"
|
||||
File "PT4\Lib\PT4AArray.dll"
|
||||
${AddFile} "PT4AArray.dll"
|
||||
File "PT4\Lib\PT4ABegin.dll"
|
||||
${AddFile} "PT4ABegin.dll"
|
||||
File "PT4\Lib\PT4ABoolean.dll"
|
||||
${AddFile} "PT4ABoolean.dll"
|
||||
File "PT4\Lib\PT4ACase.dll"
|
||||
${AddFile} "PT4ACase.dll"
|
||||
File "PT4\Lib\PT4AExam.dll"
|
||||
${AddFile} "PT4AExam.dll"
|
||||
File "PT4\Lib\PT4AFunc.dll"
|
||||
${AddFile} "PT4AFunc.dll"
|
||||
File "PT4\Lib\PT4AIf.dll"
|
||||
${AddFile} "PT4AIf.dll"
|
||||
File "PT4\Lib\PT4AInteger.dll"
|
||||
|
|
@ -162,12 +158,136 @@ Section $(DESC_PT4) PT4
|
|||
${AddFile} "PT4AWhile.dll"
|
||||
File "PT4\Lib\PT4AProc.dll"
|
||||
${AddFile} "PT4AProc.dll"
|
||||
File "PT4\Lib\PT4AFunc.dll"
|
||||
${AddFile} "PT4AFunc.dll"
|
||||
File "PT4\Lib\PT4AArray.dll"
|
||||
${AddFile} "PT4AArray.dll"
|
||||
|
||||
File "PT4\Lib\xPT4AArray.dll"
|
||||
${AddFile} "xPT4AArray.dll"
|
||||
File "PT4\Lib\xPT4ABegin.dll"
|
||||
${AddFile} "xPT4ABegin.dll"
|
||||
File "PT4\Lib\xPT4ABoolean.dll"
|
||||
${AddFile} "xPT4ABoolean.dll"
|
||||
File "PT4\Lib\xPT4ACase.dll"
|
||||
${AddFile} "xPT4ACase.dll"
|
||||
File "PT4\Lib\xPT4AExam.dll"
|
||||
${AddFile} "xPT4AExam.dll"
|
||||
File "PT4\Lib\xPT4AFunc.dll"
|
||||
${AddFile} "xPT4AFunc.dll"
|
||||
File "PT4\Lib\xPT4AIf.dll"
|
||||
${AddFile} "xPT4AIf.dll"
|
||||
File "PT4\Lib\xPT4AInteger.dll"
|
||||
${AddFile} "xPT4AInteger.dll"
|
||||
File "PT4\Lib\xPT4ALoopFor.dll"
|
||||
${AddFile} "xPT4ALoopFor.dll"
|
||||
File "PT4\Lib\xPT4AProc.dll"
|
||||
${AddFile} "xPT4AProc.dll"
|
||||
File "PT4\Lib\xPT4ArrFilter.dll"
|
||||
${AddFile} "xPT4ArrFilter.dll"
|
||||
File "PT4\Lib\xPT4ArrFind.dll"
|
||||
${AddFile} "xPT4ArrFind.dll"
|
||||
File "PT4\Lib\xPT4ArrGen.dll"
|
||||
${AddFile} "xPT4ArrGen.dll"
|
||||
File "PT4\Lib\xPT4ArrObj.dll"
|
||||
${AddFile} "xPT4ArrObj.dll"
|
||||
File "PT4\Lib\xPT4ArrOp.dll"
|
||||
${AddFile} "xPT4ArrOp.dll"
|
||||
File "PT4\Lib\xPT4ArrShift.dll"
|
||||
${AddFile} "xPT4ArrShift.dll"
|
||||
File "PT4\Lib\xPT4ArrSlice.dll"
|
||||
${AddFile} "xPT4ArrSlice.dll"
|
||||
File "PT4\Lib\xPT4ArrTransf.dll"
|
||||
${AddFile} "xPT4ArrTransf.dll"
|
||||
File "PT4\Lib\xPT4ASeries.dll"
|
||||
${AddFile} "xPT4ASeries.dll"
|
||||
File "PT4\Lib\xPT4AWhile.dll"
|
||||
${AddFile} "xPT4AWhile.dll"
|
||||
File "PT4\Lib\xPT4ExamBegin.dll"
|
||||
${AddFile} "xPT4ExamBegin.dll"
|
||||
File "PT4\Lib\xPT4ExamCheck.dll"
|
||||
${AddFile} "xPT4ExamCheck.dll"
|
||||
File "PT4\Lib\xPT4ExamTaskC.dll"
|
||||
${AddFile} "xPT4ExamTaskC.dll"
|
||||
File "PT4\Lib\xPT4LinqBegin.dll"
|
||||
${AddFile} "xPT4LinqBegin.dll"
|
||||
File "PT4\Lib\xPT4LinqObj.dll"
|
||||
${AddFile} "xPT4LinqObj.dll"
|
||||
File "PT4\Lib\xPT4LinqXml.dll"
|
||||
${AddFile} "xPT4LinqXml.dll"
|
||||
File "PT4\Lib\xPT4ObjArray.dll"
|
||||
${AddFile} "xPT4ObjArray.dll"
|
||||
File "PT4\Lib\xPT4TMDemoAbc.dll"
|
||||
${AddFile} "xPT4TMDemoAbc.dll"
|
||||
File "PT4\Lib\xPT4ZArray.dll"
|
||||
${AddFile} "xPT4ZArray.dll"
|
||||
File "PT4\Lib\xPT4ZArray_ru.dll"
|
||||
${AddFile} "xPT4ZArray_ru.dll"
|
||||
File "PT4\Lib\xPT4ZFunc.dll"
|
||||
${AddFile} "xPT4ZFunc.dll"
|
||||
File "PT4\Lib\xPT4ZFunc_ru.dll"
|
||||
${AddFile} "xPT4ZFunc_ru.dll"
|
||||
File "PT4\Lib\xPT4ZMatrix.dll"
|
||||
${AddFile} "xPT4ZMatrix.dll"
|
||||
File "PT4\Lib\xPT4ZMatrix_ru.dll"
|
||||
${AddFile} "xPT4ZMatrix_ru.dll"
|
||||
File "PT4\Lib\xPT4ZMinmax.dll"
|
||||
${AddFile} "xPT4ZMinmax.dll"
|
||||
File "PT4\Lib\xPT4ZMinmax_ru.dll"
|
||||
${AddFile} "xPT4ZMinmax_ru.dll"
|
||||
File "PT4\Lib\xPT4ZSeries.dll"
|
||||
${AddFile} "xPT4ZSeries.dll"
|
||||
File "PT4\Lib\xPT4ZSeries_ru.dll"
|
||||
${AddFile} "xPT4ZSeries_ru.dll"
|
||||
|
||||
|
||||
|
||||
|
||||
File "PT4\Lib\PT4_.txt"
|
||||
${AddFile} "PT4_.txt"
|
||||
File "PT4\Lib\PT4__.txt"
|
||||
${AddFile} "PT4__.txt"
|
||||
File "PT4\Lib\PT4_Exam.txt"
|
||||
${AddFile} "PT4_Exam.txt"
|
||||
File "PT4\Lib\PT4_LinqB.txt"
|
||||
${AddFile} "PT4_LinqB.txt"
|
||||
File "PT4\Lib\PT4_LinqO.txt"
|
||||
${AddFile} "PT4_LinqO.txt"
|
||||
File "PT4\Lib\PT4_LinqX.txt"
|
||||
${AddFile} "PT4_LinqX.txt"
|
||||
|
||||
File "PT4\Lib\PT4ExamBegin.txt"
|
||||
${AddFile} "PT4ExamBegin.txt"
|
||||
File "PT4\Lib\PT4ExamCheck.txt"
|
||||
${AddFile} "PT4ExamCheck.txt"
|
||||
File "PT4\Lib\PT4ExamTaskC.txt"
|
||||
${AddFile} "PT4ExamTaskC.txt"
|
||||
File "PT4\Lib\PT4ExamBegin_ru.txt"
|
||||
${AddFile} "PT4ExamBegin_ru.txt"
|
||||
File "PT4\Lib\PT4ExamCheck_ru.txt"
|
||||
${AddFile} "PT4ExamCheck_ru.txt"
|
||||
File "PT4\Lib\PT4ExamTaskC_ru.txt"
|
||||
${AddFile} "PT4ExamTaskC_ru.txt"
|
||||
|
||||
File "PT4\Lib\PT4LinqBegin[PascalABC].txt"
|
||||
${AddFile} "PT4LinqBegin[PascalABC].txt"
|
||||
File "PT4\Lib\PT4LinqObj[PascalABC].txt"
|
||||
${AddFile} "PT4LinqObj[PascalABC].txt"
|
||||
File "PT4\Lib\PT4LinqXml[PascalABC].txt"
|
||||
${AddFile} "PT4LinqXml[PascalABC].txt"
|
||||
|
||||
File "PT4\Lib\PT4-CWA-1Begin.txt"
|
||||
${AddFile} "PT4-CWA-1Begin.txt"
|
||||
File "PT4\Lib\PT4-CWA-2Robot.txt"
|
||||
${AddFile} "PT4-CWA-2Robot.txt"
|
||||
File "PT4\Lib\PT4-CWA-4Assign.txt"
|
||||
${AddFile} "PT4-CWA-4Assign.txt"
|
||||
File "PT4\Lib\PT4-CWA-5For.txt"
|
||||
${AddFile} "PT4-CWA-5For.txt"
|
||||
File "PT4\Lib\PT4-XRB.txt"
|
||||
${AddFile} "PT4-XRB.txt"
|
||||
|
||||
File "PT4\Lib\PT4ArrObj.txt"
|
||||
${AddFile} "PT4ArrObj.txt"
|
||||
File "PT4\Lib\PT4ObjArray.txt"
|
||||
${AddFile} "PT4ObjArray.txt"
|
||||
|
||||
SetOutPath "$INSTDIR\PT4\Lib\Graph"
|
||||
File "PT4\Lib\Graph\*.png"
|
||||
|
||||
|
|
|
|||
738
bin/Lib/PT4.pas
738
bin/Lib/PT4.pas
|
|
@ -3,7 +3,7 @@ unit PT4;
|
|||
|
||||
//------------------------------------------------------------------------------
|
||||
// Модуль для подключения задачника Programming Taskbook
|
||||
// Версия 4.18
|
||||
// Версия 4.23
|
||||
// Copyright © 2006-2008 DarkStar, SSM
|
||||
// Copyright © 2010 М.Э.Абрамян, дополнения к версии 1.3
|
||||
// Copyright © 2014-2015 М.Э.Абрамян, дополнения к версии 4.13
|
||||
|
|
@ -12,11 +12,13 @@ unit PT4;
|
|||
// Copyright © 2017 М.Э.Абрамян, дополнения к версии 4.17
|
||||
// Copyright © 2018 М.Э.Абрамян, дополнения к версии 4.18
|
||||
// Copyright © 2019 М.Э.Абрамян, дополнения к версии 4.19
|
||||
// Электронный задачник Programming Taskbook Copyright (c)М.Э.Абрамян, 1998-2019
|
||||
// Copyright © 2021 М.Э.Абрамян, дополнения к версии 4.21
|
||||
// Copyright © 2023 М.Э.Абрамян, дополнения к версии 4.23
|
||||
// Электронный задачник Programming Taskbook Copyright (c)М.Э.Абрамян, 1998-2023
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
{$apptype windows}
|
||||
{$platformtarget x86}
|
||||
//{$platformtarget x86}
|
||||
|
||||
interface
|
||||
|
||||
|
|
@ -47,13 +49,21 @@ type
|
|||
|
||||
Node = class(IDisposable)
|
||||
private
|
||||
isAllocMem: boolean;
|
||||
(* isAllocMem: boolean;
|
||||
isDisposed: boolean;
|
||||
x: InternalNode;
|
||||
addr: IntPtr;
|
||||
constructor Create(x: InternalNode; a: IntPtr);
|
||||
constructor Create(x: InternalNode; a: IntPtr);*)
|
||||
a: integer;
|
||||
disposed: boolean;
|
||||
procedure Init(Data: integer; Next,Prev,Left,Right,Parent: Node);
|
||||
procedure internalDispose(disposing: boolean);
|
||||
constructor Create(addr, none: integer);
|
||||
static function NodeToInt(n: Node): integer;
|
||||
static function IntToNode(a:integer): Node;
|
||||
// procedure internalDispose(disposing: boolean);
|
||||
function getNodeProp(n: integer; name: string): Node;
|
||||
procedure setNodeProp(n: integer; name: string; value: Node);
|
||||
|
||||
procedure setNext(value: Node);
|
||||
function getNext: Node;
|
||||
procedure setPrev(value: Node);
|
||||
|
|
@ -81,7 +91,7 @@ type
|
|||
property Parent: Node read getParent write SetParent;
|
||||
property Data: integer read getData write SetData;
|
||||
end;
|
||||
|
||||
|
||||
var TaskName: string;
|
||||
|
||||
/// Вывести формулировку задания
|
||||
|
|
@ -809,7 +819,7 @@ function GetSolutionInfo: string;
|
|||
implementation
|
||||
|
||||
// == Версия 4.18. Дополнения ==
|
||||
uses ABCDatabases;
|
||||
uses ABCDatabases, System.Text;
|
||||
// == Версия 4.18. Конец дополнений ==
|
||||
|
||||
const
|
||||
|
|
@ -831,33 +841,141 @@ procedure PutBoolean(val: boolean); forward;
|
|||
procedure PutNode(val: Node); forward;
|
||||
procedure PutPNode(val: PNode); forward;
|
||||
|
||||
procedure StartPT(options: integer); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'startpt';
|
||||
procedure FreePT; external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'freept';
|
||||
function CheckPT(var res: integer):string;external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'checkptf';
|
||||
procedure RaisePT(s1,s2: string); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'raisept';
|
||||
procedure Task__(name: string); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'task';
|
||||
procedure GetR(var param: real); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getr';
|
||||
procedure PutR(param: real); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'putr';
|
||||
procedure GetN(var param: integer); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getn';
|
||||
procedure PutN(param: integer); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'putn';
|
||||
procedure GetC(var param: char); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getc';
|
||||
procedure PutC(param: char); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'putc';
|
||||
procedure _GetS(param: System.Text.StringBuilder);external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'gets';
|
||||
procedure PutS(param: string); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'puts';
|
||||
procedure _GetB(var param: integer); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getb';
|
||||
procedure _PutB(param: integer); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'putb';
|
||||
procedure _GetP(var param: IntPtr); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getp';
|
||||
procedure _PutP(param: IntPtr); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'putp';
|
||||
procedure DisposeP(sNode: IntPtr); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'disposep';
|
||||
function FinishPT(): integer; external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'finishpt'; // == 4.13 ==
|
||||
procedure _GetSolutionInfo(info: System.Text.StringBuilder);external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'getsolutioninfo';
|
||||
procedure StartPT(options: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'startpt';
|
||||
procedure FreePT; external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'freept';
|
||||
procedure _CheckPT(InfoS: array of byte; var InfoT: integer);external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'checkpt'; //2021.05
|
||||
procedure _RaisePT(s1,s2: array of byte); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'raisept';
|
||||
procedure _Task(name: string); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'task';
|
||||
procedure GetR(var param: real); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getr';
|
||||
procedure PutR(param: real); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'putr';
|
||||
procedure GetN(var param: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getn';
|
||||
procedure PutN(param: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'putn';
|
||||
procedure GetC(var param: char); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getc';
|
||||
procedure PutC(param: char); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'putc';
|
||||
procedure _GetS(param: array of byte);external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'gets';
|
||||
procedure _PutS(param: array of byte); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'puts';
|
||||
procedure _GetB(var param: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getb';
|
||||
procedure _PutB(param: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'putb';
|
||||
procedure _GetP(var param: IntPtr); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getp';
|
||||
procedure _PutP(param: IntPtr); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'putp';
|
||||
procedure _PutNode(param: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodeputp';
|
||||
procedure DisposeP(sNode: IntPtr); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'disposep';
|
||||
procedure _NodeNew(var n: integer; data, next, prev, left, right, parent: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodenew';
|
||||
procedure _NodeGetP(var n: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodegetp';
|
||||
procedure _NodePutP(n: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodeputp';
|
||||
procedure _NodeGetF(n, fn: integer; var f, err: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodegetf';
|
||||
procedure _NodeSetF(n, fn, f: integer; var err: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodesetf';
|
||||
procedure _NodeDispose(n: integer; var err: integer); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'nodedispose';
|
||||
function FinishPT(): integer; external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'finishpt'; // == 4.13 ==
|
||||
procedure _GetSolutionInfo(info: array of byte);external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'getsolutioninfo';
|
||||
|
||||
//2023.03>
|
||||
|
||||
function ToBytes(s: string): array of byte;
|
||||
begin
|
||||
var utf8 := Encoding.Unicode;
|
||||
var ansi := Encoding.GetEncoding(1251);
|
||||
result := Encoding.Convert(utf8, ansi, utf8.GetBytes(s));
|
||||
end;
|
||||
|
||||
function FromBytes(a: array of byte): string;
|
||||
begin
|
||||
var utf8 := Encoding.Unicode;
|
||||
var ansi := Encoding.GetEncoding(1251);
|
||||
var res := Encoding.Convert(ansi, utf8, a);
|
||||
result := utf8.GetString(res);
|
||||
result := result.substring(0, result.IndexOf(#0));
|
||||
end;
|
||||
|
||||
//2023.03<
|
||||
|
||||
|
||||
//2021.05
|
||||
procedure SetLibLoader(p: IntPtr); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'setlibloader'; // == 4.21 ==
|
||||
var activate, inittaskgroup: System.Reflection.MethodInfo;
|
||||
|
||||
function GetTopic(LibName: string): string;
|
||||
begin
|
||||
var s := System.IO.Path.GetFileNameWithoutExtension(LibName).Substring(4);
|
||||
var p := s.LastIndexOf('_');
|
||||
if p > -1 then
|
||||
s := s.Substring(0, p);
|
||||
result := s;
|
||||
end;
|
||||
|
||||
function LoadNETLib(LibName: string; Step: integer): integer;
|
||||
begin
|
||||
if Step = 1 then
|
||||
begin
|
||||
var lib: System.Reflection.Assembly := nil;
|
||||
var libClass: System.Type := nil;
|
||||
activate := nil;
|
||||
inittaskgroup := nil;
|
||||
try
|
||||
lib := System.Reflection.Assembly.LoadFrom(LibName+'.dll');
|
||||
LibName := GetTopic(LibName);
|
||||
libClass := lib.GetType('xPT4'+LibName + '.xPT4' + LibName);
|
||||
if libClass = nil then
|
||||
begin
|
||||
LibName := LibName.ToUpper();
|
||||
foreach var t in lib.GetTypes do
|
||||
begin
|
||||
if t.FullName.ToUpper = 'XPT4'+LibName + '.XPT4' + LibName then
|
||||
begin
|
||||
libClass := t;
|
||||
break;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
if libClass = nil then
|
||||
begin
|
||||
result := 1;
|
||||
exit;
|
||||
end;
|
||||
inittaskgroup := libClass.GetMethod('inittaskgroup');
|
||||
activate := libClass.GetMethod('activate');
|
||||
if (inittaskgroup <> nil) and (activate = nil) then
|
||||
result := 2 // dll and inittaskgroup found, activate not found
|
||||
else if (inittaskgroup = nil) or (activate = nil) then
|
||||
result := 3 // dll found, activate or inittaskgroup not found
|
||||
else
|
||||
result := 0; // 1st step OK
|
||||
except
|
||||
result := 4;
|
||||
end;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if (activate <> nil) and (inittaskgroup <> nil) then
|
||||
try
|
||||
activate.Invoke(nil, Arr(LibName as Object));
|
||||
inittaskgroup.Invoke(nil, nil);
|
||||
result := 0; // 2nd step OK
|
||||
except
|
||||
result := 2; // error while run methods
|
||||
end
|
||||
else
|
||||
result := 1; // empty methods
|
||||
end;
|
||||
end;
|
||||
|
||||
var PLoadNETLib := LoadNETLib;
|
||||
|
||||
procedure Task(name: string);
|
||||
begin
|
||||
Task__(name);
|
||||
SetLibLoader(Marshal.GetFunctionPointerForDelegate(PLoadNETLib));
|
||||
_Task(name);
|
||||
TaskName := name;
|
||||
end;
|
||||
|
||||
function CheckPT(var res: integer): string;
|
||||
begin
|
||||
var InfoS := new byte[200];
|
||||
_CheckPT(InfoS, res);
|
||||
result := FromBytes(InfoS);
|
||||
end;
|
||||
|
||||
|
||||
procedure Dispose(p: pointer);
|
||||
begin
|
||||
DisposeP(IntPtr(p));
|
||||
|
|
@ -867,18 +985,7 @@ end;
|
|||
// -----------------------------------------------------
|
||||
// Node
|
||||
// -----------------------------------------------------
|
||||
constructor Node.Create(x: InternalNode; a: IntPtr);
|
||||
begin
|
||||
Self.x.Data := x.Data;
|
||||
Self.x.Next := x.Next;
|
||||
Self.x.Prev := x.Prev;
|
||||
Self.x.Left := x.Left;
|
||||
Self.x.Right := x.Right;
|
||||
Self.x.Parent := x.Parent;
|
||||
addr := a;
|
||||
isAllocMem := false;
|
||||
isDisposed := false;
|
||||
end;
|
||||
var nodes := new Dictionary<integer, Node>;
|
||||
|
||||
constructor Node.Create;
|
||||
begin
|
||||
|
|
@ -912,234 +1019,107 @@ end;
|
|||
|
||||
procedure Node.Dispose;
|
||||
begin
|
||||
GC.SuppressFinalize(self);
|
||||
internalDispose(true);
|
||||
if disposed then
|
||||
exit;
|
||||
var err := 0;
|
||||
_NodeDispose(a, err);
|
||||
disposed := true;
|
||||
end;
|
||||
|
||||
constructor Node.Create(addr, none: integer);
|
||||
begin
|
||||
a := addr;
|
||||
disposed := false;
|
||||
nodes[a] := Self;
|
||||
end;
|
||||
|
||||
class function Node.NodeToInt(n: Node): integer;
|
||||
begin
|
||||
if n = nil then
|
||||
result := 0
|
||||
else
|
||||
result := n.a;
|
||||
end;
|
||||
|
||||
class function Node.IntToNode(a: integer): Node;
|
||||
begin
|
||||
if a = 0 then
|
||||
result := nil
|
||||
else if nodes.ContainsKey(a) then
|
||||
result := nodes[a]
|
||||
else
|
||||
result := new Node(a, 0);
|
||||
end;
|
||||
|
||||
procedure Node.Init(Data: integer; Next,Prev,Left,Right,Parent: Node);
|
||||
begin
|
||||
x.Data := Data;
|
||||
|
||||
if Next = nil then
|
||||
x.Next := IntPtr.Zero
|
||||
else x.Next := Next.addr;
|
||||
|
||||
if Prev = nil then
|
||||
x.Prev := IntPtr.Zero
|
||||
else x.Prev := Prev.addr;
|
||||
|
||||
if Left = nil then
|
||||
x.Left := IntPtr.Zero
|
||||
else x.Left := Left.addr;
|
||||
|
||||
if Right = nil then
|
||||
x.Right := IntPtr.Zero
|
||||
else x.Right := Right.addr;
|
||||
|
||||
if Parent = nil then
|
||||
x.Parent := IntPtr.Zero
|
||||
else x.Parent := Parent.addr;
|
||||
|
||||
addr := Marshal.AllocHGlobal(sizeof(InternalNode));
|
||||
Marshal.StructureToPtr(x as object, addr, false);
|
||||
isAllocMem := true;
|
||||
isDisposed := false;
|
||||
loadNodes.Add(self);
|
||||
var n: integer;
|
||||
_NodeNew(n, data, NodeToInt(next), NodeToInt(prev),
|
||||
NodeToInt(left), NodeToInt(right), NodeToInt(parent));
|
||||
a := n;
|
||||
disposed := false;
|
||||
nodes[a] := Self;
|
||||
end;
|
||||
|
||||
procedure Node.setNext(value:Node);
|
||||
|
||||
function Node.getNodeProp(n: integer; name: string): Node;
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if value = nil then
|
||||
begin
|
||||
x.Next := IntPtr.Zero;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end else
|
||||
begin
|
||||
x.Next := value.addr;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end;
|
||||
if disposed then
|
||||
raise new ObjectDisposedException('cannot access a disposed Node');
|
||||
var val, err: integer;;
|
||||
_NodeGetF(a, n, val, err);
|
||||
if err <> 0 then
|
||||
raise new ArgumentException('cannot get the ' + name + ' property');
|
||||
result := IntToNode(val);
|
||||
end;
|
||||
|
||||
procedure Node.setNodeProp(n: integer; name: string; value: Node);
|
||||
begin
|
||||
if disposed then
|
||||
raise new ObjectDisposedException('cannot access a disposed Node');
|
||||
var err: integer;;
|
||||
_NodeSetF(a, n, NodeToInt(value), err);
|
||||
if err <> 0 then
|
||||
raise new ArgumentException('cannot set the ' + name + ' property');
|
||||
end;
|
||||
|
||||
function Node.getNext:Node;
|
||||
var tmp: IntPtr;
|
||||
tmpNode: Node;
|
||||
begin
|
||||
result := nil;
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if x.Next <> IntPtr.Zero then
|
||||
begin
|
||||
tmp := x.Next;
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if tmp.Equals(Node(loadNodes[i]).addr) then
|
||||
result:=Node(loadNodes[i]);
|
||||
if result=nil then
|
||||
begin
|
||||
tmpNode := new Node(InternalNode(Marshal.PtrToStructure(tmp,typeof(InternalNode))), tmp);
|
||||
loadNodes.Add(tmpNode);
|
||||
result := tmpNode;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
procedure Node.setNext(value: Node) := SetNodeProp(1, 'Next', value);
|
||||
function Node.getNext := GetNodeProp(1, 'Next');
|
||||
|
||||
procedure Node.setPrev(value: Node);
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if value = nil then
|
||||
begin
|
||||
x.Prev := IntPtr.Zero;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end else
|
||||
begin
|
||||
x.Prev := value.addr;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end;
|
||||
end;
|
||||
procedure Node.setPrev(value: Node) := SetNodeProp(2, 'Prev', value);
|
||||
function Node.getPrev := GetNodeProp(2, 'Prev');
|
||||
|
||||
function Node.getPrev: Node;
|
||||
var tmp: IntPtr;
|
||||
tmpNode:Node;
|
||||
begin
|
||||
result := nil;
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if x.Prev <> IntPtr.Zero then begin
|
||||
tmp := x.Prev;
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if tmp.Equals(Node(loadNodes[i]).addr) then
|
||||
result:=Node(loadNodes[i]);
|
||||
if result=nil then begin
|
||||
tmpNode := new Node(InternalNode(Marshal.PtrToStructure(tmp,typeof(InternalNode))), tmp);
|
||||
loadNodes.Add(tmpNode);
|
||||
result := tmpNode;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
procedure Node.setLeft(value: Node) := SetNodeProp(3, 'Left', value);
|
||||
function Node.getLeft := GetNodeProp(3, 'Left');
|
||||
|
||||
procedure Node.setLeft(value: Node);
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if value = nil then
|
||||
begin
|
||||
x.Left := IntPtr.Zero;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end else
|
||||
begin
|
||||
x.Left := value.addr;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end;
|
||||
end;
|
||||
procedure Node.setRight(value: Node) := SetNodeProp(4, 'Right', value);
|
||||
function Node.getRight := GetNodeProp(4, 'Right');
|
||||
|
||||
function Node.getLeft: Node;
|
||||
var tmp: IntPtr;
|
||||
tmpNode:Node;
|
||||
begin
|
||||
result := nil;
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if x.Left <> IntPtr.Zero then begin
|
||||
tmp := x.Left;
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if tmp.Equals(Node(loadNodes[i]).addr) then
|
||||
result:=Node(loadNodes[i]);
|
||||
if result=nil then begin
|
||||
tmpNode := new Node(InternalNode(Marshal.PtrToStructure(tmp,typeof(InternalNode))), tmp);
|
||||
loadNodes.Add(tmpNode);
|
||||
result := tmpNode;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure Node.setRight(value: Node);
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if value = nil then
|
||||
begin
|
||||
x.Right := IntPtr.Zero;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end else
|
||||
begin
|
||||
x.Right := value.addr;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end;
|
||||
end;
|
||||
|
||||
function Node.getRight: Node;
|
||||
var tmp: IntPtr;
|
||||
tmpNode:Node;
|
||||
begin
|
||||
result := nil;
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if x.Right <> IntPtr.Zero then begin
|
||||
tmp := x.Right;
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if tmp.Equals(Node(loadNodes[i]).addr) then
|
||||
result:=Node(loadNodes[i]);
|
||||
if result=nil then begin
|
||||
tmpNode := new Node(InternalNode(Marshal.PtrToStructure(tmp,typeof(InternalNode))), tmp);
|
||||
loadNodes.Add(tmpNode);
|
||||
result := tmpNode;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure Node.setParent(value: Node);
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if value = nil then
|
||||
begin
|
||||
x.Parent := IntPtr.Zero;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end else
|
||||
begin
|
||||
x.Parent := value.addr;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
end;
|
||||
end;
|
||||
|
||||
function Node.getParent: Node;
|
||||
var tmp: IntPtr;
|
||||
tmpNode:Node;
|
||||
begin
|
||||
result := nil;
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
if x.Parent <> IntPtr.Zero then begin
|
||||
tmp := x.Parent;
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if tmp.Equals(Node(loadNodes[i]).addr) then
|
||||
result:=Node(loadNodes[i]);
|
||||
if result=nil then begin
|
||||
tmpNode := new Node(InternalNode(Marshal.PtrToStructure(tmp,typeof(InternalNode))), tmp);
|
||||
loadNodes.Add(tmpNode);
|
||||
result := tmpNode;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
procedure Node.setParent(value: Node) := SetNodeProp(5, 'Parent', value);
|
||||
function Node.getParent := GetNodeProp(5, 'Parent');
|
||||
|
||||
procedure Node.setData(value: integer);
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
self.x.Data := value;
|
||||
Marshal.StructureToPtr(x as object, addr, isAllocMem);
|
||||
if disposed then
|
||||
raise new ObjectDisposedException('cannot access a disposed Node');
|
||||
var err: integer;
|
||||
_NodeSetF(a, 0, value, err);
|
||||
if err <> 0 then
|
||||
raise new ArgumentException('cannot set the Data property');
|
||||
end;
|
||||
|
||||
function Node.getData: integer;
|
||||
begin
|
||||
if isDisposed then
|
||||
raise new ObjectDisposedException(ToString, eMessage);
|
||||
result := self.x.Data;
|
||||
if disposed then
|
||||
raise new ObjectDisposedException('cannot access a disposed Node');
|
||||
var val, err: integer;
|
||||
_NodeGetF(a, 0, val, err);
|
||||
if err <> 0 then
|
||||
raise new ArgumentException('cannot get the Data property');
|
||||
result := val;
|
||||
end;
|
||||
|
||||
procedure Node.internalDispose(disposing: boolean);
|
||||
(*procedure Node.internalDispose(disposing: boolean);
|
||||
begin
|
||||
if not isDisposed then
|
||||
//lock(self)
|
||||
|
|
@ -1151,6 +1131,144 @@ begin
|
|||
isDisposed := true;
|
||||
end;
|
||||
end;
|
||||
*)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
procedure internalWrite(args: array of object); forward;
|
||||
|
||||
|
|
@ -1204,11 +1322,15 @@ begin
|
|||
end;
|
||||
|
||||
function GetString: string;
|
||||
var val: System.Text.StringBuilder;
|
||||
begin
|
||||
val := new System.Text.StringBuilder(200);//TODO почему 200?
|
||||
var val := new byte[200];
|
||||
_gets(val);
|
||||
result := val.ToString;
|
||||
result := FromBytes(val);
|
||||
end;
|
||||
|
||||
procedure PutS(param: string);
|
||||
begin
|
||||
_puts(ToBytes(param));
|
||||
end;
|
||||
|
||||
function GetBool: boolean;
|
||||
|
|
@ -1224,42 +1346,42 @@ begin
|
|||
end;
|
||||
|
||||
function GetNode: Node;
|
||||
procedure GetPtr(var sNode:InternalNode; var pNode: IntPtr);
|
||||
var p:IntPtr;
|
||||
begin
|
||||
p := IntPtr.Zero;
|
||||
_GetP(p);
|
||||
pNode := p;
|
||||
if p <> IntPtr.Zero then
|
||||
sNode := InternalNode(Marshal.PtrToStructure(p, typeof(InternalNode)));
|
||||
end;
|
||||
var
|
||||
p: IntPtr;
|
||||
sNode: InternalNode;
|
||||
begin
|
||||
//raise new NotSupportedException('Работа с динамическими структурами задачника PT4 не поддерживается в этой версии компилятора. Исправление ошибки планируется в следуйщей версии');
|
||||
//result := new PT4Node(sNode, p);// fixme здесь ошибка генерации кода!
|
||||
p := IntPtr.Zero;
|
||||
sNode.Data := 0;
|
||||
sNode.Next := IntPtr.Zero;
|
||||
sNode.Prev := IntPtr.Zero;
|
||||
sNode.Left := IntPtr.Zero;
|
||||
sNode.Right := IntPtr.Zero;
|
||||
sNode.Parent := IntPtr.Zero;
|
||||
GetPtr(sNode, p);
|
||||
if p = IntPtr.Zero then
|
||||
result := nil
|
||||
else begin
|
||||
for var i:=0 to loadNodes.Count-1 do
|
||||
if sNode=Node(loadNodes[i]).x then
|
||||
result := Node(loadNodes[i]);
|
||||
if result = nil then begin
|
||||
result := new Node(sNode, p);
|
||||
loadNodes.Add(result);
|
||||
end;
|
||||
end;
|
||||
var n: integer;
|
||||
_NodeGetP(n);
|
||||
result := Node.IntToNode(n);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function GetPNode: PNode;
|
||||
var ip: IntPtr;
|
||||
begin
|
||||
|
|
@ -1863,11 +1985,12 @@ end;
|
|||
|
||||
procedure Put(param: Node);
|
||||
begin
|
||||
PutP(param);
|
||||
if param = nil then
|
||||
_PutNode(0)
|
||||
else
|
||||
_PutNode(param.a);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
// == Версия 4.17. Конец дополнений ==
|
||||
|
||||
|
||||
|
|
@ -1902,17 +2025,17 @@ begin
|
|||
end;
|
||||
|
||||
procedure PutNode(val: Node);
|
||||
var p: IntPtr;
|
||||
begin
|
||||
p := IntPtr.Zero;
|
||||
if val <> nil then begin
|
||||
if val.isDisposed then
|
||||
raise new ObjectDisposedException(val.ToString, eMessage);
|
||||
p := val.addr;
|
||||
end;
|
||||
_PutP(p);
|
||||
if val = nil then
|
||||
_PutNode(0)
|
||||
else
|
||||
_PutNode(val.a);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
procedure PutPNode(val: PNode);
|
||||
var pp: pointer;
|
||||
begin
|
||||
|
|
@ -1923,6 +2046,11 @@ end;
|
|||
// -----------------------------------------------------
|
||||
// Генерация исключений
|
||||
// -----------------------------------------------------
|
||||
procedure RaisePT(s1, s2: string);
|
||||
begin
|
||||
_RaisePT(ToBytes(s1), ToBytes(s2));
|
||||
end;
|
||||
|
||||
procedure RaisePTAndCheckPT(e: Exception);
|
||||
begin
|
||||
RaisePT(e.GetType.ToString, e.Message);
|
||||
|
|
@ -2226,7 +2354,21 @@ var
|
|||
var
|
||||
_Width: integer := 0;
|
||||
|
||||
procedure ShowStr(s: string); external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'show';
|
||||
|
||||
procedure _show(s: array of byte); external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'show';
|
||||
|
||||
|
||||
procedure ShowStr(s: string);
|
||||
begin
|
||||
var utf8 := new UTF8Encoding();
|
||||
var byteCount := utf8.GetByteCount(s);
|
||||
var bytes := new Byte[byteCount];
|
||||
var bytesEncodedCount := utf8.GetBytes(s, 0, s.Length, bytes, 0);
|
||||
_show(bytes);
|
||||
|
||||
|
||||
// _show(ToBytes(s));
|
||||
end;
|
||||
|
||||
procedure Show(s: string);
|
||||
begin
|
||||
|
|
@ -2555,7 +2697,7 @@ end;
|
|||
|
||||
// == Конец дополнений к версии 4.18 ==
|
||||
|
||||
procedure HideTask; external '%PABCSYSTEM%\PT4\PT4PABC.dll' name 'hidetask';
|
||||
procedure HideTask; external '%PABCSYSTEM%\PT4\xPT4PABC2.dll' name 'hidetask';
|
||||
|
||||
procedure SetPrecision(N: Integer);
|
||||
begin
|
||||
|
|
@ -3113,9 +3255,9 @@ end;
|
|||
|
||||
function GetSolutionInfo: string;
|
||||
begin
|
||||
var val := new System.Text.StringBuilder(500);
|
||||
var val := new byte[500];
|
||||
_getsolutioninfo(val);
|
||||
result := val.ToString;
|
||||
result := FromBytes(val);
|
||||
end;
|
||||
|
||||
initialization
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
/// Конструктор учебных заданий для задачника Programming Taskbook.
|
||||
/// Версия 1.7 от 28.10.2020 (С) М. Э. Абрамян, 2016-2020.
|
||||
|
||||
/// Конструктор учебных заданий для задачника Programming Taskbook.
|
||||
/// Версия 1.9 от 26.03.2023 (С) М. Э. Абрамян, 2016-2023.
|
||||
/// Все компоненты конструктора могут вызываться либо как классовые методы класса pt,
|
||||
/// либо как обычные константы и процедуры.
|
||||
unit PT4MakerNetX;
|
||||
|
||||
|
||||
interface
|
||||
|
||||
const
|
||||
|
|
@ -20,12 +21,14 @@ const
|
|||
/// формулировки должны разделяться символами #13, #10 или #13#10.
|
||||
procedure NewTask(topic, tasktext: string);
|
||||
|
||||
|
||||
/// Процедура, с которой должно начинаться определение нового задания.
|
||||
/// Должна вызываться в процедуре с именем, начинающемся с текста Task.
|
||||
/// Параметр tasktext содержит формулировку задания; отдельные строки
|
||||
/// формулировки должны разделяться символами #13, #10 или #13#10.
|
||||
procedure NewTask(tasktext: string);
|
||||
|
||||
|
||||
/// Добавляет комментарий в новой строке раздела исходных даннных.
|
||||
procedure DataComm(comm: string);
|
||||
|
||||
|
|
@ -124,26 +127,48 @@ procedure SetRequiredDataCount(n: integer);
|
|||
/// (запуски нумеруются от 1).
|
||||
function CurrentTest: integer;
|
||||
|
||||
/// Генерирует случайное целов в диапазоне от M до N включительно.
|
||||
/// Генерирует случайное целое число в диапазоне от M до N включительно.
|
||||
/// Если M >= N, то возвращает M.
|
||||
function Random(M, N: integer): integer;
|
||||
|
||||
/// Генерирует случайное вещественное на промежутке [A, B).
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B).
|
||||
/// Если промежуток [A, B) пуст, то возвращает A.
|
||||
function Random(A, B: real): real;
|
||||
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B)
|
||||
/// с одним дробным знаком и случайной добавкой порядка 1e-7.
|
||||
/// Если промежуток [A, B) пуст, то возвращает A, округленное
|
||||
/// до одного дробного знака и снабженное добавкой порядка 1e-7.
|
||||
function Random1(A, B: real): real;
|
||||
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B)
|
||||
/// с двумя дробными знаками и случайной добавкой порядка 1e-7.
|
||||
/// Если промежуток [A, B) пуст, то возвращает A, округленное
|
||||
/// до двух дробных знаков и снабженное добавкой порядка 1e-7.
|
||||
function Random2(A, B: real): real;
|
||||
|
||||
/// Генерирует случайную строку длины len, состоящую
|
||||
/// из цифр и строчных (т.е. маленьких) латинских букв.
|
||||
function RandomName(len: integer): string;
|
||||
|
||||
/// Создает новую группу с кратким описанием GroupDescription,
|
||||
/// информацией об авторе GroupAuthor и набором необязательных опций, объединяемых операцией or.
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4).
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4
|
||||
/// и возможных суффиксов _ru или _en).
|
||||
/// В группу включаются задания, определенные в процедурах, имена которых начинаются с текста Task.
|
||||
/// Процедура NewGroup должна быть вызвана в процедуре inittaskgroup без параметров, которую
|
||||
/// необходимо описать в библиотеке с группой заданий (все буквы в имени inittaskgroup - строчные).
|
||||
procedure NewGroup(GroupDescription, GroupAuthor: string; Options: integer := 0);
|
||||
|
||||
/// Создает новую группу с кратким описанием GroupDescription, английским описанием GroupEnDescription,
|
||||
/// информацией об авторе GroupAuthor и набором необязательных опций, объединяемых операцией or.
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4
|
||||
/// и возможных суффиксов _ru или _en).
|
||||
/// В группу включаются задания, определенные в процедурах, имена которых начинаются с текста Task.
|
||||
/// Процедура NewGroup должна быть вызвана в процедуре inittaskgroup без параметров, которую
|
||||
/// необходимо описать в библиотеке с группой заданий (все буквы в имени inittaskgroup - строчные).
|
||||
procedure NewGroup(GroupDescription, GroupEnDescription, GroupAuthor: string; Options: integer := 0);
|
||||
|
||||
/// Обеспечивает регистрацию созданной группы в электронном задачнике.
|
||||
/// Процедура ActivateNET(S) должна быть вызвана в процедуре activate(S: string),
|
||||
/// которую необходимо описать в библиотеке с группой заданий (все буквы в имени activate - строчные).
|
||||
|
|
@ -154,6 +179,11 @@ procedure ActivateNET(S: string);
|
|||
/// в процедуре с именем, начинающемся с текста Task.
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer);
|
||||
|
||||
/// Импортирует в создаваемую группу существующее задание
|
||||
/// из группы GroupName с номером TaskNumber. Должна вызываться
|
||||
/// в процедуре с именем, начинающемся с текста Task.
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer; TopicDescription: string);
|
||||
|
||||
/// Возвращает массив из 116 русских слов.
|
||||
function GetWords: array of string;
|
||||
/// Возвращает массив из 116 английских слов.
|
||||
|
|
@ -163,10 +193,12 @@ function GetSentences: array of string;
|
|||
/// Возвращает массив из 61 английского предложения.
|
||||
function GetEnSentences: array of string;
|
||||
/// Возвращает массив из 85 русских многострочных текстов.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
function GetTexts: array of string;
|
||||
/// Возвращает массив из 85 английских многострочных текстов.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
function GetEnTexts: array of string;
|
||||
|
||||
/// Возвращает случайное русское слово из массива,
|
||||
|
|
@ -183,11 +215,13 @@ function RandomSentence: string;
|
|||
function RandomEnSentence: string;
|
||||
/// Возвращает случайный русский многострочный текст из массива,
|
||||
/// входящего в конструктор учебных заданий.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
function RandomText: string;
|
||||
/// Возвращает случайный английский многострочный текст из массива,
|
||||
/// входящего в конструктор учебных заданий.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
function RandomEnText: string;
|
||||
|
||||
|
||||
|
|
@ -284,6 +318,7 @@ class procedure NewTask(topic, tasktext: string);
|
|||
begin
|
||||
PT4MakerNetX.NewTask(topic, tasktext);
|
||||
end;
|
||||
|
||||
/// Процедура, с которой должно начинаться определение нового задания.
|
||||
/// Должна вызываться в процедуре с именем, начинающемся с текста Task.
|
||||
/// Параметр tasktext содержит формулировку задания; отдельные строки
|
||||
|
|
@ -292,6 +327,7 @@ class procedure NewTask(tasktext: string);
|
|||
begin
|
||||
PT4MakerNetX.NewTask(tasktext);
|
||||
end;
|
||||
|
||||
/// Добавляет комментарий в новой строке раздела исходных даннных.
|
||||
class procedure DataComm(comm: string);
|
||||
begin
|
||||
|
|
@ -447,18 +483,34 @@ begin
|
|||
result := PT4MakerNetX.CurrentTest;
|
||||
end;
|
||||
|
||||
/// Генерирует случайное целов в диапазоне от M до N включительно.
|
||||
/// Генерирует случайное целое число в диапазоне от M до N включительно.
|
||||
/// Если M >= N, то возвращает M.
|
||||
class function Random(M, N: integer): integer;
|
||||
begin
|
||||
result := PT4MakerNetX.Random(M, N);
|
||||
end;
|
||||
/// Генерирует случайное вещественное на промежутке [A, B).
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B).
|
||||
/// Если промежуток [A, B) пуст, то возвращает A.
|
||||
class function Random(A, B: real): real;
|
||||
begin
|
||||
result := PT4MakerNetX.Random(A, B);
|
||||
end;
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B)
|
||||
/// с одним дробным знаком и случайной добавкой порядка 1e-7.
|
||||
/// Если промежуток [A, B) пуст, то возвращает A, округленное
|
||||
/// до одного дробного знака и снабженное добавкой порядка 1e-7.
|
||||
class function Random1(A, B: real): real;
|
||||
begin
|
||||
result := PT4MakerNetX.Random1(A, B);
|
||||
end;
|
||||
/// Генерирует случайное вещественное число на промежутке [A, B)
|
||||
/// с двумя дробными знаками и случайной добавкой порядка 1e-7.
|
||||
/// Если промежуток [A, B) пуст, то возвращает A, округленное
|
||||
/// до двух дробных знаков и снабженное добавкой порядка 1e-7.
|
||||
class function Random2(A, B: real): real;
|
||||
begin
|
||||
result := PT4MakerNetX.Random2(A, B);
|
||||
end;
|
||||
/// Генерирует случайную строку длины len, состоящую
|
||||
/// из цифр и строчных (т.е. маленьких) латинских букв.
|
||||
class function RandomName(len: integer): string;
|
||||
|
|
@ -468,7 +520,8 @@ end;
|
|||
|
||||
/// Создает новую группу с кратким описанием GroupDescription,
|
||||
/// информацией об авторе GroupAuthor и набором необязательных опций, объединяемых операцией or.
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4).
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4
|
||||
/// и возможных суффиксов _ru или _en).
|
||||
/// В группу включаются задания, определенные в процедурах, имена которых начинаются с текста Task.
|
||||
/// Процедура NewGroup должна быть вызвана в процедуре inittaskgroup без параметров, которую
|
||||
/// необходимо описать в библиотеке с группой заданий (все буквы в имени inittaskgroup - строчные).
|
||||
|
|
@ -476,6 +529,17 @@ class procedure NewGroup(GroupDescription, GroupAuthor: string; Options: integer
|
|||
begin
|
||||
PT4MakerNetX.NewGroup(GroupDescription, GroupAuthor, Options);
|
||||
end;
|
||||
/// Создает новую группу с кратким описанием GroupDescription, английским описанием GroupEnDescription,
|
||||
/// информацией об авторе GroupAuthor и набором необязательных опций, объединяемых операцией or.
|
||||
/// Имя группы определяется по имени библиотеки (путем отбрасывания префикса PT4
|
||||
/// и возможных суффиксов _ru или _en).
|
||||
/// В группу включаются задания, определенные в процедурах, имена которых начинаются с текста Task.
|
||||
/// Процедура NewGroup должна быть вызвана в процедуре inittaskgroup без параметров, которую
|
||||
/// необходимо описать в библиотеке с группой заданий (все буквы в имени inittaskgroup - строчные).
|
||||
class procedure NewGroup(GroupDescription, GroupEnDescription, GroupAuthor: string; Options: integer := 0);
|
||||
begin
|
||||
PT4MakerNetX.NewGroup(GroupDescription, GroupEnDescription, GroupAuthor, Options);
|
||||
end;
|
||||
/// Обеспечивает регистрацию созданной группы в электронном задачнике.
|
||||
/// Процедура ActivateNET(S) должна быть вызвана в процедуре activate(S: string),
|
||||
/// которую необходимо описать в библиотеке с группой заданий (все буквы в имени activate - строчные).
|
||||
|
|
@ -490,6 +554,13 @@ class procedure UseTask(GroupName: string; TaskNumber: integer);
|
|||
begin
|
||||
PT4MakerNetX.UseTask(GroupName, TaskNumber);
|
||||
end;
|
||||
/// Импортирует в создаваемую группу существующее задание
|
||||
/// из группы GroupName с номером TaskNumber. Должна вызываться
|
||||
/// в процедуре с именем, начинающемся с текста Task.
|
||||
class procedure UseTask(GroupName: string; TaskNumber: integer; TopicDescription: string);
|
||||
begin
|
||||
PT4MakerNetX.UseTask(GroupName, TaskNumber, TopicDescription);
|
||||
end;
|
||||
/// Возвращает массив из 116 русских слов.
|
||||
class function GetWords: array of string;
|
||||
begin
|
||||
|
|
@ -511,13 +582,15 @@ begin
|
|||
result := PT4MakerNetX.GetEnSentences;
|
||||
end;
|
||||
/// Возвращает массив из 85 русских многострочных текстов.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
class function GetTexts: array of string;
|
||||
begin
|
||||
result := PT4MakerNetX.GetTexts;
|
||||
end;
|
||||
/// Возвращает массив из 85 английских многострочных текстов.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
class function GetEnTexts: array of string;
|
||||
begin
|
||||
result := PT4MakerNetX.GetEnTexts;
|
||||
|
|
@ -548,14 +621,16 @@ begin
|
|||
end;
|
||||
/// Возвращает случайный русский многострочный текст из массива,
|
||||
/// входящего в конструктор учебных заданий.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
class function RandomText: string;
|
||||
begin
|
||||
result := PT4MakerNetX.RandomText;
|
||||
end;
|
||||
/// Возвращает случайный английский многострочный текст из массива,
|
||||
/// входящего в конструктор учебных заданий.
|
||||
/// Каждая строка текста оканчивается символами #13#10.
|
||||
/// Строки текста разделяются символами #13#10.
|
||||
/// В конце текста символы #13#10 отсутствуют.
|
||||
class function RandomEnText: string;
|
||||
begin
|
||||
result := PT4MakerNetX.RandomEnText;
|
||||
|
|
@ -659,7 +734,7 @@ var
|
|||
yd, yr, ye, nd, nr, pr, wd: integer;
|
||||
nt, ut, fd, fr: boolean;
|
||||
fmt: string;
|
||||
tasks := new List<MethodInfo>(200);
|
||||
tasks := new List<MethodInfo>(100);
|
||||
|
||||
procedure Show(s: string);
|
||||
begin
|
||||
|
|
@ -1180,13 +1255,14 @@ begin
|
|||
ResultS('\B'+Copy(ErrorMessage(ErrMes7),1,76)+'\b', '', 1, 1);
|
||||
end;
|
||||
|
||||
function GetGroupName(assname: string): string;
|
||||
function GetGroupName(assname: string; var libname: string): string;
|
||||
begin
|
||||
result := copy(assname, 1, pos(',', assname)-1);
|
||||
var p := pos('_', result);
|
||||
libname := copy(assname, 1, pos(',', assname)-1);
|
||||
result := libname;
|
||||
var p := pos('_', libname);
|
||||
if p > 0 then
|
||||
delete(result, p, 100);
|
||||
delete(result, 1, 3);
|
||||
delete(result, p, 100); // удаление суффикса, определяющего язык интерфейса
|
||||
delete(result, 1, 3); // удаление префикса PT4
|
||||
end;
|
||||
|
||||
function AcceptedLanguage(opt: integer): boolean;
|
||||
|
|
@ -1198,23 +1274,26 @@ begin
|
|||
or (lang and lgPascal = lgPascal) and (opt and OptionPascalLanguages = OptionPascalLanguages);
|
||||
end;
|
||||
|
||||
|
||||
procedure NewGroup(GroupDescription, GroupAuthor: string; Options: integer);
|
||||
|
||||
begin
|
||||
if not AcceptedLanguage(Options) then exit; // недопустимый текущий язык
|
||||
NewGroup(GroupDescription, '', GroupAuthor, Options);
|
||||
end;
|
||||
|
||||
procedure NewGroup(GroupDescription, GroupEnDescription, GroupAuthor: string; Options: integer);
|
||||
begin
|
||||
if not AcceptedLanguage(Options) then
|
||||
exit; // недопустимый текущий язык
|
||||
var ass := Assembly.GetCallingAssembly;
|
||||
var GroupName := GetGroupName(ass.FullName);
|
||||
var nm := 'PT4' + GroupName;
|
||||
var LibName := '';
|
||||
var GroupName := GetGroupName(ass.FullName, LibName);
|
||||
tasks.Clear;
|
||||
var GroupKey := 'GK';
|
||||
foreach var e in ass.GetType(nm + '.' + nm).GetMethods do
|
||||
foreach var e in ass.GetType(LibName + '.' + LibName).GetMethods.OrderBy(e -> e.Name.ToUpper) do //2018.08
|
||||
if e.Name.ToUpper.StartsWith('TASK') then
|
||||
begin
|
||||
tasks.Add(e);
|
||||
GroupKey := GroupKey + Copy(e.Name, 5, 100);
|
||||
end;
|
||||
tasks := tasks.OrderBy(e -> e.Name).ToList; // Сортировка задач!
|
||||
if tasks.Count = 0 then
|
||||
begin
|
||||
Show('Группа ' + GroupName + ' не содержит заданий'#13#10+
|
||||
|
|
@ -1225,11 +1304,14 @@ begin
|
|||
begin
|
||||
Show('Группа ' + GroupName + ' содержит более 999 заданий.');
|
||||
exit;
|
||||
end;
|
||||
end;
|
||||
GroupKey := Copy(GroupKey, 1, 30);
|
||||
if Options and OptionUseAddition = OptionUseAddition then
|
||||
GroupKey := GroupKey + '#UseAddition#';
|
||||
if Options and OptionHideExamples = OptionHideExamples then
|
||||
GroupKey := GroupKey + '#HideExamples#';
|
||||
if GroupEnDescription.Trim <> '' then
|
||||
GroupKey := GroupKey + '#EnTopic<' + GroupEnDescription.Trim + '>#';
|
||||
CreateGroup(GroupName, GroupDescription, GroupAuthor,
|
||||
GroupKey, tasks.Count, RunTask);
|
||||
end;
|
||||
|
|
@ -1257,6 +1339,18 @@ begin
|
|||
result := PT4TaskMakerNET.RandomR(A, B);
|
||||
end;
|
||||
|
||||
function Random1(A, B: real): real;
|
||||
begin
|
||||
result := Random(Round(a*10), Round(b*10)) / 10
|
||||
+ Random * 1.0e-7;
|
||||
end;
|
||||
|
||||
function Random2(A, B: real): real;
|
||||
begin
|
||||
result := Random(Round(a*100), Round(b*100)) / 100
|
||||
+ Random * 1.0e-7;
|
||||
end;
|
||||
|
||||
function CurrentTest: integer;
|
||||
begin
|
||||
if CheckTT then exit;
|
||||
|
|
@ -1270,6 +1364,13 @@ begin
|
|||
ut := true;
|
||||
end;
|
||||
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer; TopicDescription: string);
|
||||
begin
|
||||
if ut then exit;
|
||||
PT4TaskMakerNET.UseTask(GroupName, TaskNumber, TopicDescription);
|
||||
ut := true;
|
||||
end;
|
||||
|
||||
function GetWords: array of string;
|
||||
begin
|
||||
Result := ArrGen(WordCount, i -> WordSample(i));
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
/// Конструктор для электронного задачника Programming Taskbook 4.14
|
||||
/// Конструктор для электронного задачника Programming Taskbook 4.23
|
||||
|
||||
unit PT4TaskMakerNET;
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Конструктор для электронного задачника Programming Taskbook 4.14
|
||||
// Конструктор для электронного задачника Programming Taskbook 4.23
|
||||
//------------------------------------------------------------------------------
|
||||
// Модуль для создания NET-библиотек с группами заданий в системе PascalABC.NET
|
||||
//
|
||||
// Copyright (c) 2013-2015 М.Э.Абрамян
|
||||
// Электронный задачник Programming Taskbook Copyright (c) М.Э.Абрамян,1998-2015
|
||||
// Copyright (c) 2013-2023 М.Э.Абрамян
|
||||
// Электронный задачник Programming Taskbook Copyright (c) М.Э.Абрамян,1998-2023
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
|
@ -38,9 +39,12 @@ const
|
|||
lgJava = $0010000; // добавлено в версии 4.11
|
||||
lgRuby = $0020000; // добавлено в версии 4.12
|
||||
lgWithPointers = $000003D;
|
||||
lgWithObjects = $00FFF80; // добавлено в версии 4.11
|
||||
lgWithObjects = $0FFFF80; // изменено в версии 4.22
|
||||
lgNET = $000FF00;
|
||||
lgAll = $0FFFFFF; // изменено в версии 4.10
|
||||
lgFS = $0000800; // добавлено в версии 4.19
|
||||
lgJulia = $0040000; // добавлено в версии 4.22
|
||||
lgC = $0000008; // добавлено в версии 4.23
|
||||
|
||||
type
|
||||
|
||||
|
|
@ -67,9 +71,13 @@ procedure CreateGroup(GroupName, GroupDescription, GroupAuthor, GroupKey: string
|
|||
/// Добавляет к создаваемой группе задание из другой группы
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer);
|
||||
|
||||
/// Добавляет к создаваемой группе задание из другой группы
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer; TopicDescription: string); // добавлено в версии 4.19
|
||||
|
||||
/// Должна указываться первой при определении нового задания
|
||||
procedure CreateTask(SubgroupName: string); overload;
|
||||
|
||||
|
||||
/// Должна указываться первой при определении нового задания
|
||||
procedure CreateTask; overload;
|
||||
|
||||
|
|
@ -253,12 +261,12 @@ procedure SetTestCount(N: integer);
|
|||
/// надо указывать B пробелов (элементы нумеруются от 1)
|
||||
function Center(I, N, W, B: integer): integer;
|
||||
|
||||
/// Возвращает псевдослучайное целое число, лежащее
|
||||
/// Возвращает случайное целое число, лежащее
|
||||
/// в диапазоне от M до N включительно. Если указанный
|
||||
/// диапазон пуст, то возвращает M.
|
||||
function RandomN(M, N: integer): integer; // добавлено в версии 4.11
|
||||
|
||||
/// Возвращает псевдослучайное вещественное число, лежащее
|
||||
/// Возвращает случайное вещественное число, лежащее
|
||||
/// на полуинтервале [A, B). Если указанный полуинтервал
|
||||
/// пуст, то возвращает A.
|
||||
function RandomR(A, B: real): real; // добавлено в версии 4.11
|
||||
|
|
@ -421,7 +429,7 @@ procedure SetProcess(ProcessRank: integer);
|
|||
|
||||
implementation
|
||||
|
||||
uses System.Runtime.InteropServices;
|
||||
uses System.Runtime.InteropServices, System.Text;
|
||||
|
||||
function LoadLibrary(FileName: string): integer;
|
||||
external 'kernel32.dll' Name 'LoadLibrary';
|
||||
|
|
@ -444,25 +452,26 @@ type
|
|||
TSFunc = function : string;
|
||||
TSFuncN = function (N: integer): string;
|
||||
TProc = procedure;
|
||||
TProcS = procedure (S: string);
|
||||
TProcSCN2 = procedure (S: string; C: Char; N1, N2: integer);
|
||||
TProcSN = procedure (S: string; N: integer);
|
||||
TProcSN2 = procedure (S: string; N1, N2: integer);
|
||||
TProcSN3 = procedure (S: string; N1, N2, N3: integer);
|
||||
TProcSN4 = procedure (S: string; N1, N2, N3, N4: integer);
|
||||
TProcSN5 = procedure (S: string; N1, N2, N3, N4, N5: integer);
|
||||
TProcSN6 = procedure (S: string; N1, N2, N3, N4, N5, N6: integer);
|
||||
TProcSRN3 = procedure (S: string; R: real; N1, N2, N3: integer);
|
||||
TProcSR2N3 = procedure (S: string; R1, R2: real; N1, N2, N3: integer);
|
||||
TProcSR3N3 = procedure (S: string; R1, R2, R3: real; N1, N2, N3: integer);
|
||||
TProcS2 = procedure (S1, S2: string);
|
||||
TProcS2N2 = procedure (S1, S2: string; N1, N2: integer);
|
||||
TProcS4NP = procedure (S1, S2, S3, S4: string; N: integer; P: TInitTaskProc);
|
||||
TProcS = procedure (S: array of byte);
|
||||
TProcSCN2 = procedure (S: array of byte; C: Char; N1, N2: integer);
|
||||
TProcSN = procedure (S: array of byte; N: integer);
|
||||
TProcSN2 = procedure (S: array of byte; N1, N2: integer);
|
||||
TProcSN3 = procedure (S: array of byte; N1, N2, N3: integer);
|
||||
TProcSN4 = procedure (S: array of byte; N1, N2, N3, N4: integer);
|
||||
TProcSN5 = procedure (S: array of byte; N1, N2, N3, N4, N5: integer);
|
||||
TProcSN6 = procedure (S: array of byte; N1, N2, N3, N4, N5, N6: integer);
|
||||
TProcSRN3 = procedure (S: array of byte; R: real; N1, N2, N3: integer);
|
||||
TProcSR2N3 = procedure (S: array of byte; R1, R2: real; N1, N2, N3: integer);
|
||||
TProcSR3N3 = procedure (S: array of byte; R1, R2, R3: real; N1, N2, N3: integer);
|
||||
TProcS2 = procedure (S1, S2: array of byte);
|
||||
TProcS2N2 = procedure (S1, S2: array of byte; N1, N2: integer);
|
||||
TProcS4NP = procedure (S1, S2, S3, S4: array of byte; N: integer; P: TInitTaskProc);
|
||||
TProcN = procedure (N: integer);
|
||||
TProcNP = procedure (N: integer; P: pointer);
|
||||
TProcN3 = procedure (N1, N2, N3: integer);
|
||||
TProcN4 = procedure (N1, N2, N3, N4: integer);
|
||||
TProcSvN = procedure (S: string; var N: integer);
|
||||
TProcSvN = procedure (S: array of byte; var N: integer);
|
||||
TProcSNS = procedure (S1: array of byte; N: integer; S2: array of byte);
|
||||
|
||||
var
|
||||
creategroup_: TProcS4NP;
|
||||
|
|
@ -502,9 +511,17 @@ var
|
|||
setprocess_: TProcN;
|
||||
currentversion_: TSFunc; // добавлено в версии 4.10
|
||||
currenttest_: TNFunc; // добавлено в версии 4.11
|
||||
usetaskex_: TProcSNS; // добавлено в версии 4.19
|
||||
|
||||
FHandle: integer;
|
||||
|
||||
function ToBytes(s: string): array of byte;
|
||||
begin
|
||||
var utf8 := Encoding.Unicode;
|
||||
var ansi := Encoding.GetEncoding(1251);
|
||||
result := Encoding.Convert(utf8, ansi, utf8.GetBytes(S));
|
||||
end;
|
||||
|
||||
procedure ActivateNET(S: string);
|
||||
begin
|
||||
FHandle := LoadLibrary(S);
|
||||
|
|
@ -581,6 +598,8 @@ begin
|
|||
setprocess_ := TProcN(Marshal.GetDelegateForFunctionPointer(GetProcAddress(FHandle, 'setprocess'), typeof(TProcN)));
|
||||
currentversion_ := TSFunc(Marshal.GetDelegateForFunctionPointer(GetProcAddress(FHandle, 'currentversion'), typeof(TSFunc))); // добавлено в версии 4.10
|
||||
currenttest_ := TNFunc(Marshal.GetDelegateForFunctionPointer(GetProcAddress(FHandle, 'curt'), typeof(TNFunc))); // добавлено в версии 4.11
|
||||
usetaskex_ := TProcSNS(Marshal.GetDelegateForFunctionPointer(GetProcAddress(FHandle, 'usetaskex'), typeof(TProcSNS))); // добавлено в версии 4.19
|
||||
|
||||
end;
|
||||
|
||||
//=============================================================================
|
||||
|
|
@ -591,18 +610,26 @@ procedure CreateGroup(GroupName, GroupDescription, GroupAuthor, GroupKey: string
|
|||
TaskCount: integer; InitTaskProc: TInitTaskProc);
|
||||
begin
|
||||
p := InitTaskProc;
|
||||
creategroup_(GroupName, GroupDescription, GroupAuthor,
|
||||
GroupKey, TaskCount, p);
|
||||
creategroup_(ToBytes(GroupName), ToBytes(GroupDescription), ToBytes(GroupAuthor),
|
||||
ToBytes(GroupKey), TaskCount, p);
|
||||
end;
|
||||
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer);
|
||||
begin
|
||||
usetask_(GroupName, TaskNumber);
|
||||
usetask_(ToBytes(GroupName), TaskNumber);
|
||||
end;
|
||||
|
||||
procedure UseTask(GroupName: string; TaskNumber: integer; TopicDescription: string);
|
||||
begin
|
||||
if usetaskex_ <> nil then
|
||||
usetaskex_(ToBytes(GroupName), TaskNumber, ToBytes(TopicDescription))
|
||||
else
|
||||
usetask_(ToBytes(GroupName), TaskNumber);
|
||||
end;
|
||||
|
||||
procedure CreateTask(SubgroupName: string);
|
||||
begin
|
||||
createtask_(SubgroupName);
|
||||
createtask_(ToBytes(SubgroupName));
|
||||
end;
|
||||
|
||||
procedure CreateTask;
|
||||
|
|
@ -610,6 +637,15 @@ begin
|
|||
CreateTask('');
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function CurrentLanguage: integer;
|
||||
begin
|
||||
result := currentlanguage_;
|
||||
|
|
@ -622,7 +658,7 @@ end;
|
|||
|
||||
procedure TaskText(S: string; X, Y: integer);
|
||||
begin
|
||||
tasktext_(S, X, Y);
|
||||
tasktext_(ToBytes(S), X, Y);
|
||||
end;
|
||||
|
||||
procedure TaskText(S: string);
|
||||
|
|
@ -666,18 +702,18 @@ begin
|
|||
end;
|
||||
case n of
|
||||
0: ;
|
||||
1: tasktext_(Copy(S, p1[1], p2[1]), 0, 3);
|
||||
1: tasktext(Copy(S, p1[1], p2[1]), 0, 3);
|
||||
2: for i := 1 to n do
|
||||
tasktext_(Copy(S, p1[i], p2[i]), 0, 2*i);
|
||||
tasktext(Copy(S, p1[i], p2[i]), 0, 2*i);
|
||||
3, 4:
|
||||
for i := 1 to n do
|
||||
tasktext_(Copy(S, p1[i], p2[i]), 0, i+1);
|
||||
tasktext(Copy(S, p1[i], p2[i]), 0, i+1);
|
||||
else
|
||||
begin
|
||||
for i := 1 to 5 do
|
||||
tasktext_(Copy(S, p1[i], p2[i]), 0, i);
|
||||
tasktext(Copy(S, p1[i], p2[i]), 0, i);
|
||||
for i := 6 to n do
|
||||
tasktext_(Copy(S, p1[i], p2[i]), 0, 0);
|
||||
tasktext(Copy(S, p1[i], p2[i]), 0, 0);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
|
@ -692,212 +728,212 @@ end;
|
|||
|
||||
procedure DataB (Cmt: string; B: boolean; X, Y: integer);
|
||||
begin
|
||||
datab_(Cmt, BtoN(B), X, Y);
|
||||
datab_(ToBytes(Cmt), BtoN(B), X, Y);
|
||||
end;
|
||||
|
||||
procedure DataB (B: boolean; X, Y: integer);
|
||||
begin
|
||||
datab_('', BtoN(B), X, Y);
|
||||
datab_(ToBytes(''), BtoN(B), X, Y);
|
||||
end;
|
||||
|
||||
procedure DataN (Cmt: string; N: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan_(Cmt, N, X, Y, W);
|
||||
datan_(ToBytes(Cmt), N, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataN (N: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan_('', N, X, Y, W);
|
||||
datan_(ToBytes(''), N, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataN2(Cmt: string; N1, N2: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan2_(Cmt, N1, N2, X, Y, W);
|
||||
datan2_(ToBytes(Cmt), N1, N2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataN2(N1, N2: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan2_('', N1, N2, X, Y, W);
|
||||
datan2_(ToBytes(''), N1, N2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataN3(Cmt: string; N1, N2, N3: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan3_(Cmt, N1, N2, N3, X, Y, W);
|
||||
datan3_(ToBytes(Cmt), N1, N2, N3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataN3(N1, N2, N3: integer; X, Y, W: integer);
|
||||
begin
|
||||
datan3_('', N1, N2, N3, X, Y, W);
|
||||
datan3_(ToBytes(''), N1, N2, N3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR(Cmt: string; R: real; X, Y, W: integer);
|
||||
begin
|
||||
datar_(Cmt, R, X, Y, W);
|
||||
datar_(ToBytes(Cmt), R, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR(R: real; X, Y, W: integer);
|
||||
begin
|
||||
datar_('', R, X, Y, W);
|
||||
datar_(ToBytes(''), R, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR2(Cmt: string; R1, R2: real; X, Y, W: integer);
|
||||
begin
|
||||
datar2_(Cmt, R1, R2, X, Y, W);
|
||||
datar2_(ToBytes(Cmt), R1, R2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR2(R1, R2: real; X, Y, W: integer);
|
||||
begin
|
||||
datar2_('', R1, R2, X, Y, W);
|
||||
datar2_(ToBytes(''), R1, R2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR3(Cmt: string; R1, R2, R3: real; X, Y, W: integer);
|
||||
begin
|
||||
datar3_(Cmt, R1, R2, R3, X, Y, W);
|
||||
datar3_(ToBytes(Cmt), R1, R2, R3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataR3(R1, R2, R3: real; X, Y, W: integer);
|
||||
begin
|
||||
datar3_('', R1, R2, R3, X, Y, W);
|
||||
datar3_(ToBytes(''), R1, R2, R3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure DataC(Cmt: string; C: char; X, Y: integer);
|
||||
begin
|
||||
datac_(Cmt, C, X, Y);
|
||||
datac_(ToBytes(Cmt), C, X, Y);
|
||||
end;
|
||||
|
||||
procedure DataC(C: char; X, Y: integer);
|
||||
begin
|
||||
datac_('', C, X, Y);
|
||||
datac_(ToBytes(''), C, X, Y);
|
||||
end;
|
||||
|
||||
procedure DataS(Cmt: string; S: string; X, Y: integer);
|
||||
begin
|
||||
datas_(Cmt, S, X, Y);
|
||||
datas_(ToBytes(Cmt), ToBytes(S), X, Y);
|
||||
end;
|
||||
|
||||
procedure DataS(S: string; X, Y: integer);
|
||||
begin
|
||||
datas_('', S, X, Y);
|
||||
datas_(ToBytes(''), ToBytes(S), X, Y);
|
||||
end;
|
||||
|
||||
procedure DataP(Cmt: string; NP: integer; X, Y: integer);
|
||||
begin
|
||||
datap_ (Cmt, NP, X, Y);
|
||||
datap_ (ToBytes(Cmt), NP, X, Y);
|
||||
end;
|
||||
|
||||
procedure DataP(NP: integer; X, Y: integer);
|
||||
begin
|
||||
datap_ ('', NP, X, Y);
|
||||
datap_ (ToBytes(''), NP, X, Y);
|
||||
end;
|
||||
|
||||
procedure DataComment(Cmt: string; X, Y: integer);
|
||||
begin
|
||||
datacomment_(Cmt, X, Y);
|
||||
datacomment_(ToBytes(Cmt), X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultB(Cmt: string; B: boolean; X, Y: integer);
|
||||
begin
|
||||
resultb_(Cmt, BtoN(B), X, Y);
|
||||
resultb_(ToBytes(Cmt), BtoN(B), X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultB(B: boolean; X, Y: integer);
|
||||
begin
|
||||
resultb_('', BtoN(B), X, Y);
|
||||
resultb_(ToBytes(''), BtoN(B), X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultN(Cmt: string; N: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn_(Cmt, N, X, Y, W);
|
||||
resultn_(ToBytes(Cmt), N, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultN(N: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn_('', N, X, Y, W);
|
||||
resultn_(ToBytes(''), N, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultN2(Cmt: string; N1, N2: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn2_(Cmt, N1, N2, X, Y, W);
|
||||
resultn2_(ToBytes(Cmt), N1, N2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultN2(N1, N2: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn2_('', N1, N2, X, Y, W);
|
||||
resultn2_(ToBytes(''), N1, N2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultN3(Cmt: string; N1, N2, N3: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn3_(Cmt, N1, N2, N3, X, Y, W);
|
||||
resultn3_(ToBytes(Cmt), N1, N2, N3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultN3(N1, N2, N3: integer; X, Y, W: integer);
|
||||
begin
|
||||
resultn3_('', N1, N2, N3, X, Y, W);
|
||||
resultn3_(ToBytes(''), N1, N2, N3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR(Cmt: string; R: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr_(Cmt, R, X, Y, W);
|
||||
resultr_(ToBytes(Cmt), R, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR(R: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr_('', R, X, Y, W);
|
||||
resultr_(ToBytes(''), R, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR2(Cmt: string; R1, R2: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr2_(Cmt, R1, R2, X, Y, W);
|
||||
resultr2_(ToBytes(Cmt), R1, R2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR2(R1, R2: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr2_('', R1, R2, X, Y, W);
|
||||
resultr2_(ToBytes(''), R1, R2, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR3(Cmt: string; R1, R2, R3: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr3_(Cmt, R1, R2, R3, X, Y, W);
|
||||
resultr3_(ToBytes(Cmt), R1, R2, R3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultR3(R1, R2, R3: real; X, Y, W: integer);
|
||||
begin
|
||||
resultr3_('', R1, R2, R3, X, Y, W);
|
||||
resultr3_(ToBytes(''), R1, R2, R3, X, Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultC(Cmt: string; C: char; X, Y: integer);
|
||||
begin
|
||||
resultc_(Cmt, C, X, Y);
|
||||
resultc_(ToBytes(Cmt), C, X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultC(C: char; X, Y: integer);
|
||||
begin
|
||||
resultc_('', C, X, Y);
|
||||
resultc_(ToBytes(''), C, X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultS(Cmt: string; S: string; X, Y: integer);
|
||||
begin
|
||||
results_(Cmt, S, X, Y);
|
||||
results_(ToBytes(Cmt), ToBytes(S), X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultS(S: string; X, Y: integer);
|
||||
begin
|
||||
results_('', S, X, Y);
|
||||
results_(ToBytes(''), ToBytes(S), X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultP(Cmt: string; NP: integer; X, Y: integer);
|
||||
begin
|
||||
resultp_(Cmt, NP, X, Y);
|
||||
resultp_(ToBytes(Cmt), NP, X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultP(NP: integer; X, Y: integer);
|
||||
begin
|
||||
resultp_('', NP, X, Y);
|
||||
resultp_(ToBytes(''), NP, X, Y);
|
||||
end;
|
||||
|
||||
procedure ResultComment(Cmt: string; X, Y: integer);
|
||||
begin
|
||||
resultcomment_(Cmt, X, Y);
|
||||
resultcomment_(ToBytes(Cmt), X, Y);
|
||||
end;
|
||||
|
||||
procedure SetPrecision(N: integer);
|
||||
|
|
@ -922,52 +958,52 @@ end;
|
|||
|
||||
procedure DataFileN(FileName: string; Y, W: integer);
|
||||
begin
|
||||
datafilen_(FileName, Y, W);
|
||||
datafilen_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure DataFileR(FileName: string; Y, W: integer);
|
||||
begin
|
||||
datafiler_(FileName, Y, W);
|
||||
datafiler_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure DataFileC(FileName: string; Y, W: integer);
|
||||
begin
|
||||
datafilec_(FileName, Y, W);
|
||||
datafilec_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure DataFileS(FileName: string; Y, W: integer);
|
||||
begin
|
||||
datafiles_(FileName, Y, W);
|
||||
datafiles_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure DataFileT(FileName: string; Y1, Y2: integer);
|
||||
begin
|
||||
datafilet_(FileName, Y1, Y2);
|
||||
datafilet_(ToBytes(FileName), Y1, Y2);
|
||||
end;
|
||||
|
||||
procedure ResultFileN(FileName: string; Y, W: integer);
|
||||
begin
|
||||
resultfilen_(FileName, Y, W);
|
||||
resultfilen_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultFileR(FileName: string; Y, W: integer);
|
||||
begin
|
||||
resultfiler_(FileName, Y, W);
|
||||
resultfiler_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultFileC(FileName: string; Y, W: integer);
|
||||
begin
|
||||
resultfilec_(FileName, Y, W);
|
||||
resultfilec_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultFileS(FileName: string; Y, W: integer);
|
||||
begin
|
||||
resultfiles_(FileName, Y, W);
|
||||
resultfiles_(ToBytes(FileName), Y, W);
|
||||
end;
|
||||
|
||||
procedure ResultFileT(FileName: string; Y1, Y2: integer);
|
||||
begin
|
||||
resultfilet_(FileName, Y1, Y2);
|
||||
resultfilet_(ToBytes(FileName), Y1, Y2);
|
||||
end;
|
||||
|
||||
procedure SetPointer(NP: integer; P: PNode);
|
||||
|
|
@ -1082,12 +1118,12 @@ end;
|
|||
|
||||
procedure CommentText(S: string);
|
||||
begin
|
||||
commenttext_(S);
|
||||
commenttext_(ToBytes(S));
|
||||
end;
|
||||
|
||||
procedure UseComment(GroupName, SubgroupName: string);
|
||||
begin
|
||||
usecomment_(GroupName, SubgroupName);
|
||||
usecomment_(ToBytes(GroupName), ToBytes(SubgroupName));
|
||||
end;
|
||||
|
||||
procedure UseComment(GroupName: string);
|
||||
|
|
@ -1097,7 +1133,7 @@ end;
|
|||
|
||||
procedure Subgroup(SubgroupName: string);
|
||||
begin
|
||||
subgroup_(SubgroupName);
|
||||
subgroup_(ToBytes(SubgroupName));
|
||||
end;
|
||||
|
||||
procedure SetObjectStyle;
|
||||
|
|
@ -1123,7 +1159,7 @@ end;
|
|||
procedure CreateTask(SubgroupName: string; var ProcessCount: integer);
|
||||
begin
|
||||
if createtask2_ <> nil then
|
||||
createtask2_(SubgroupName, ProcessCount)
|
||||
createtask2_(ToBytes(SubgroupName), ProcessCount)
|
||||
else
|
||||
ShowError('The CreateTask procedure with ProcessCount parameter', '4.9');
|
||||
end;
|
||||
|
|
@ -1167,10 +1203,6 @@ begin
|
|||
result := Random * (B-A) + A;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
initialization
|
||||
|
||||
finalization
|
||||
|
|
|
|||
746
bin/Lib/TasksArr.pas
Normal file
746
bin/Lib/TasksArr.pas
Normal file
|
|
@ -0,0 +1,746 @@
|
|||
unit TasksArr;
|
||||
|
||||
uses LightPT;
|
||||
|
||||
var AllTaskNames := Arr('Arr1','Arr2','Arr3','Arr4','Arr5','Arr6',
|
||||
'Arr_Sum0','Arr_Sum1','Arr_Sum2','Arr_Sum3','Arr_Sum4','Arr_CountA1','Arr_CountA2',
|
||||
'Arr_Replace1','Arr_Replace2','Arr_Find1','Arr_Find2','Arr_Find3','Arr_Find4',
|
||||
'Arr_Index1','Arr_Index2','Arr_Index2a','Arr_Index3','Arr_Index4',
|
||||
'Arr_MinMax1','Arr_MinMax2','Arr_MinMax3','Arr_MinMax4','Arr_Neighbors1','Arr_MinMaxInd1','Arr_MinMaxInd2',
|
||||
'Arr_Fill1','Arr_Fill2','Заполнение1','ЗаполнениеЛямбда1','Заполнение2','ЗаполнениеЛямбда2',
|
||||
'ЗаполнениеПоПред1','ЗаполнениеПоПред2','ЗаполнениеГеом1','ЗаполнениеГеом2','ЗаполнениеСумма1','ЗаполнениеСумма2',
|
||||
'Arr_Transf1','Arr_Transf1a','Arr_Transf2','Arr_Transf3','Arr_Transf4','Arr_Transf5','Arr_Transf7',
|
||||
'Arr_Transf8','Arr_Transf9','Arr_Transf6',
|
||||
'Arr_Reverse1','Arr_Reverse2','Arr_Reverse3','Arr_Reverse3a',
|
||||
'Arr_Count1','Arr_Count2','Arr_Count3','Arr_Count4',
|
||||
'Arr_FindIndex1','Arr_FindIndex2',
|
||||
'Arr_Filter1','Arr_GenFilter1','Arr_GenFilter2',
|
||||
'Arr_Op1',
|
||||
'Arr_Slice1','Arr_Slice2','Arr_Slice3','Arr_Slice7','Arr_Slice10','Arr_Slice11','Arr_Slice12',
|
||||
'Arr_InsDel1','Arr_InsDel2','Arr_InsDel3',
|
||||
'Arr_Shift1','Arr_Shift2',
|
||||
'List1','List2','List3','List4','List5','List6','List6a','List6b','List7','List8','List9','List9a','List9b',
|
||||
'Sort1','Sort2','Sort3',
|
||||
'BubbleSort','BubbleSort2');
|
||||
|
||||
procedure CheckTaskT(name: string);
|
||||
begin
|
||||
FlattenOutput; // Во всех задачах на массивы
|
||||
ClearOutputListFromSpaces; // Это чтобы a.Print работал. По идее, надо писать всегда. Яне знаю задач, где пробелы в ответе
|
||||
|
||||
case name of
|
||||
'Arr1','Arr2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(InitialOutput := |cInt|*5);
|
||||
CheckOutputSeq(|cInt|*10);
|
||||
// Надо проверить, что Output[9] - целое ненулевое
|
||||
if OutputList.Count<10 then // чтобы не получить исключение
|
||||
exit;
|
||||
if OutIsInt(9) then
|
||||
if OutInt(9) = 0 then
|
||||
begin
|
||||
ColoredMessage('Массив надо заполнить ненулевыми значениями');
|
||||
TaskResult := BadSolution;
|
||||
end;
|
||||
end;
|
||||
'Arr3','Arr4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
TaskResult := PartialSolution; // То есть, уже начали проверять, уже под контролем
|
||||
CheckData(|cInt|*5, |cInt|*5, |cInt|*10);
|
||||
if TaskResult <> PartialSolution then
|
||||
exit;
|
||||
|
||||
CheckOutputSeq(InputList);
|
||||
end;
|
||||
'Arr5','Arr6': begin
|
||||
// Проверка того что введено и выведено 10 значений, что ввод совпадает с выводом и что вывод в диапазоне от 2 до 5
|
||||
// Что плохо - все Check неявно меняют TaskResult, а здесь надо еще и явно
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
|
||||
TaskResult := PartialSolution; // потому что если просто запустить - будет InitialSolution
|
||||
|
||||
CheckOutputSeq(InputList);
|
||||
// Дополнительная проверка
|
||||
if TaskResult = Solved then
|
||||
begin
|
||||
// проверим на диапазон от 2 до 5
|
||||
var a := IntArr(n);
|
||||
if a.Any(x->x not in 2..5) then
|
||||
begin
|
||||
TaskResult := BadSolution;
|
||||
ColoredMessage('Результирующие данные должны быть от 2 до 5',MsgColorGray);
|
||||
exit;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
'Arr_Sum0': begin
|
||||
// Это паттерн: вводится n, а потом вводится n элементов массива
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := Int;
|
||||
CheckInput(|cInt| + n*|cInt|);
|
||||
var a := IntArr(n);
|
||||
CheckOutput(a.Sum)
|
||||
end;
|
||||
'Arr_Sum1','Arr_Sum2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
// Это всё надо. Начальный ввод - 10 целых, весь ввод - тоже
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*(n+1), |cInt|*n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var p := integer(a.Product);
|
||||
CheckOutputAfterInitial(p)
|
||||
end;
|
||||
'Arr_Sum3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*(n+1), |cInt|*n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.Product)
|
||||
end;
|
||||
'Arr_Sum4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var ave := a.Average;
|
||||
CheckOutputAfterInitialSeq(|ave|*2)
|
||||
end;
|
||||
'Arr_CountA1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.CountOf(3));
|
||||
end;
|
||||
'Arr_CountA2': begin
|
||||
ClearOutputListFromSpaces; // Кроме чисел тут строки
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var lst := ObjectList.New;
|
||||
var a := IntArr(n);
|
||||
var cnt4 := a.CountOf(4);
|
||||
var cnt5 := a.CountOf(5);
|
||||
|
||||
case cnt4.CompareTo(cnt5) of
|
||||
1: lst.Add('четвёрок больше');
|
||||
0: lst.Add('одинаково');
|
||||
-1: lst.Add('пятёрок больше');
|
||||
end;
|
||||
CheckOutputAfterInitialSeq(lst);
|
||||
end;
|
||||
'Arr_Replace1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var arr := IntArr(n);
|
||||
arr.Replace(2,3);
|
||||
CheckOutputAfterInitialSeq(arr);
|
||||
end;
|
||||
'Arr_Replace2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var arr := IntArr(n);
|
||||
arr.Replace(2,22);
|
||||
arr.Replace(5,55);
|
||||
arr.Replace(22,5);
|
||||
arr.Replace(55,2);
|
||||
CheckOutputAfterInitialSeq(arr);
|
||||
end;
|
||||
'Arr_Find1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 5;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var has2 := 2 in a;
|
||||
CheckOutputAfterInitial(has2);
|
||||
end;
|
||||
'Arr_Find2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 5;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
TestCount := 10;
|
||||
GenerateTestData := tnum -> begin
|
||||
var a := ArrRandomInteger(n,2,5);
|
||||
if tnum = 2 then
|
||||
a := ArrFill(n,1);
|
||||
InputList.AddTestData(a);
|
||||
end;
|
||||
|
||||
var a := IntArr(n);
|
||||
var haseven := a.FindIndex(x -> x.IsEven) <> -1;
|
||||
CheckOutputAfterInitial(haseven);
|
||||
end;
|
||||
'Arr_Find3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 5;
|
||||
CheckData(|cInt|*n, |cInt|*n, |cInt|*n);
|
||||
TestCount := 10;
|
||||
GenerateTestData := tnum -> begin
|
||||
var a := ArrRandomInteger(n,1,99);
|
||||
if tnum = 2 then
|
||||
a := ArrRandomInteger(n,1,30)
|
||||
else if tnum = 3 then
|
||||
a := ArrRandomInteger(n,51,99);
|
||||
InputList.AddTestData(a);
|
||||
end;
|
||||
|
||||
var a := IntArr(n);
|
||||
var haseven := a.ToArray.FindIndex(x -> x in 40..50) <> -1;
|
||||
CheckOutputAfterInitial(haseven);
|
||||
end;
|
||||
|
||||
'Arr_Find4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 3;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
TestCount := 10;
|
||||
GenerateTestData := tnum -> begin
|
||||
var a := ArrRandomInteger(n,2,5);
|
||||
if tnum = 2 then
|
||||
a := ArrFill(n,11);
|
||||
InputList.AddTestData(a);
|
||||
end;
|
||||
|
||||
var a := IntArr(n);
|
||||
var allodd := a.All(x -> x.IsOdd);
|
||||
CheckOutputAfterInitial(allodd);
|
||||
end;
|
||||
'Arr_Index1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
TestCount := 10;
|
||||
GenerateTestData := tnum -> begin
|
||||
var a := ArrRandomInteger(n,2,5);
|
||||
if tnum = 2 then
|
||||
a := ArrFill(n,5);
|
||||
InputList.AddTestData(a);
|
||||
end;
|
||||
|
||||
var a := IntArr(n);
|
||||
var ind := a.FindIndex(x -> x = 2);
|
||||
CheckOutputAfterInitial(ind);
|
||||
end;
|
||||
'Arr_Index2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
TestCount := 10;
|
||||
GenerateTestData := tnum -> begin
|
||||
var a := ArrRandomInteger(n,2,5);
|
||||
if tnum = 2 then
|
||||
a := ArrFill(n,4);
|
||||
InputList.AddTestData(a);
|
||||
end;
|
||||
|
||||
var a := IntArr(n);
|
||||
var ind := a.FindLastIndex(x -> x = 5);
|
||||
CheckOutputAfterInitial(ind);
|
||||
end;
|
||||
'Arr_Index2a': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
var a := IntArr(n);
|
||||
var ind2 := a.IndexOf(2);
|
||||
var ind5 := a.IndexOf(5);
|
||||
CheckOutputAfterInitialSeq(|ind2,ind5|);
|
||||
end;
|
||||
'Arr_Index3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 20;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var arr := IntArr(n);
|
||||
var ind2 := arr.IndexOf(2);
|
||||
var ind5 := arr.IndexOf(5);
|
||||
Swap(arr[ind2],arr[ind5]);
|
||||
CheckOutputAfterInitialSeq(arr);
|
||||
end;
|
||||
'Arr_Index4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 30;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
var arr := IntArr(n);
|
||||
var ind := arr.IndexOf(2);
|
||||
ind := arr.IndexOf(2,ind + 1);
|
||||
CheckOutputAfterInitial(ind);
|
||||
end;
|
||||
|
||||
'Arr_MinMax1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
var min := a.Min;
|
||||
CheckOutputAfterInitial(min);
|
||||
end;
|
||||
'Arr_MinMax2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var max := a.Max;
|
||||
CheckOutputAfterInitial(max);
|
||||
end;
|
||||
'Arr_MinMax3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.Min);
|
||||
end;
|
||||
'Arr_MinMax4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10,tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(|a.Min,a.Max|);
|
||||
end;
|
||||
|
||||
'Arr_Neighbors1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 20;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt*n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var cnt := 0;
|
||||
for var i := 0 to n-2 do
|
||||
if (a[i] = 2) and (a[i+1] = 5) then
|
||||
cnt += 1;
|
||||
CheckOutputAfterInitial(cnt);
|
||||
end;
|
||||
'Arr_MinMaxInd1': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(10);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.IndexMax,a.IndexMax);
|
||||
end;
|
||||
'Arr_MinMaxInd2': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(10);
|
||||
|
||||
var a := IntArr(n);
|
||||
var indmax := a.IndexMax;
|
||||
var indmin := a.IndexMin;
|
||||
Swap(a[indmax],a[indmin]);
|
||||
CheckOutputSeq(a);
|
||||
end;
|
||||
|
||||
'Arr_Fill1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := nil);
|
||||
|
||||
CheckOutputSeq(ArrFill(10,1));
|
||||
end;
|
||||
'Arr_Fill2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := nil);
|
||||
|
||||
CheckOutputSeq(ArrFill(10,1));
|
||||
end;
|
||||
'Заполнение1','ЗаполнениеЛямбда1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(ArrGen(10,i->i*i));
|
||||
end;
|
||||
'Заполнение2','ЗаполнениеЛямбда2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(ArrGen(10,1,i->i+2));
|
||||
end;
|
||||
'ЗаполнениеПоПред1','ЗаполнениеПоПред2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(ArrGen(10,5,i->i+5));
|
||||
end;
|
||||
'ЗаполнениеГеом1','ЗаполнениеГеом2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(ArrGen(10,1,i->i*2));
|
||||
end;
|
||||
'ЗаполнениеСумма1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(ArrGen(10,5,i->i+5).Sum);
|
||||
end;
|
||||
'ЗаполнениеСумма2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(ArrGen(10,1,i->i*2).Sum);
|
||||
end;
|
||||
|
||||
// 'Arr_Transf1' 'Arr_Transf1a' 'Arr_Transf2' 'Arr_Transf3' 'Arr_Transf4' 'Arr_Transf5' 'Arr_Transf7' 'Arr_Transf8' 'Arr_Transf9'- задачник
|
||||
'Arr_Transf6': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
foreach var i in a.Indices do
|
||||
if i.IsOdd then
|
||||
a[i] := 0;
|
||||
CheckOutputAfterInitialSeq(a);
|
||||
end;
|
||||
|
||||
'Arr_Reverse1','Arr_Reverse2': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(a.Reverse);
|
||||
end;
|
||||
'Arr_Reverse3': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
for var i:= 0 to n div 2 - 1 do
|
||||
Swap(a[i],a[i + n div 2]);
|
||||
CheckOutputAfterInitialSeq(a);
|
||||
end;
|
||||
|
||||
'Arr_Reverse3a': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
|
||||
var out := IntArr(n);
|
||||
var out0 := Copy(out);
|
||||
Reverse(out, 0, 5);
|
||||
Reverse(out, 5, 5);
|
||||
CheckOutputSeq(out0 + out);
|
||||
end;
|
||||
|
||||
'Arr_Count1','Arr_Count2': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.Count(x -> x.IsEven));
|
||||
end;
|
||||
'Arr_Count3': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitial(a.CountOf(3),a.CountOf(4),a.CountOf(5));
|
||||
end;
|
||||
'Arr_Count4': begin
|
||||
var n := 30;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(|a.CountOf(a.Min),a.CountOf(a.Max)|);
|
||||
end;
|
||||
|
||||
'Arr_FindIndex1': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(|a.FindIndex(x-> x.IsOdd),a.FindLastIndex(x-> x.IsOdd)|);
|
||||
end;
|
||||
'Arr_FindIndex2': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
var i1 := a.FindIndex(x -> x.IsEven);
|
||||
var i2 := a.FindLastIndex(x -> x.IsOdd);
|
||||
Swap(a[i1],a[i2]);
|
||||
CheckOutputAfterInitialSeq(a);
|
||||
end;
|
||||
|
||||
'Arr_Filter1': begin
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateTests(10, tInt(1,100) * n);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(a.Where(x->x<50));
|
||||
end;
|
||||
'Arr_GenFilter1': begin
|
||||
CheckData(Input := Empty);
|
||||
var a := ArrGen(50,1,x->x+2);
|
||||
CheckOutputSeq(a.Where(x->x mod 7 = 0));
|
||||
end;
|
||||
'Arr_GenFilter2': begin
|
||||
var n := 40;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
var a := ArrGen(40,1,1,(x,y)->x+y);
|
||||
CheckOutputAfterInitialSeq(a.Where(x->x mod 5 = 0));
|
||||
end;
|
||||
|
||||
'Arr_Op1': begin
|
||||
CheckData(Empty);
|
||||
var a := |1,2,3|*5;
|
||||
var b := |0| * 6 + |1| * 6;
|
||||
var c := |1,2,3|*3 + |4,5,6|*3;
|
||||
var d := |1| * 5 + |2| * 5 + |1| * 5 + |2| * 5;
|
||||
CheckOutputSeq(a+b+c+d);
|
||||
end;
|
||||
|
||||
'Arr_Slice1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
var a := Arr(0..9);
|
||||
CheckOutputSeq(a + a[2:6] + a[:4] + a[2:]);
|
||||
end;
|
||||
'Arr_Slice2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
var a := Arr(0..9);
|
||||
CheckOutputSeq(a + a[:2] + a[5:] + a[1:^1]);
|
||||
end;
|
||||
'Arr_Slice3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt| * n + |cInt| * 2);
|
||||
var a := Arr(0..9);
|
||||
CheckOutputSeq(a + |9| + |8| + |7| + a[^2:] + a[1:^1])
|
||||
end;
|
||||
'Arr_Slice7': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
var a := Arr(0..9);
|
||||
CheckOutputSeq(a + a[5::-1] + a[9::-2])
|
||||
end;
|
||||
'Arr_Slice10': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
var a := |6,2,4,3,6,1,7,8,2,4|;
|
||||
CheckOutput(a[:5].Sum);
|
||||
end;
|
||||
'Arr_Slice11': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
var a := |6,2,4,3,6,1,7,8,2,4|;
|
||||
CheckOutput(a[5:].Min);
|
||||
end;
|
||||
'Arr_Slice12': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
var a := |6,2,4,3,6,1,7,8,2,4|;
|
||||
CheckOutput(a[::2].Average);
|
||||
end;
|
||||
|
||||
'Arr_InsDel1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
var a := Arr(0..9);
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
CheckOutputSeq(a + a[:5] + a[6:]);
|
||||
end;
|
||||
'Arr_InsDel2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
var a := Arr(0..9);
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
CheckOutputSeq(a + a[:5] + |333| + a[5:]);
|
||||
end;
|
||||
'Arr_InsDel3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
var a := Arr(0..9);
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
CheckOutputSeq(a + a[:1] + |555| + a[1:^1] + |555| + a[^1:]);
|
||||
end;
|
||||
|
||||
'Arr_Shift1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
var a := Arr(0..9);
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
CheckOutputSeq(a + a[1:] + |0|);
|
||||
end;
|
||||
'Arr_Shift2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
var a := Arr(0..9);
|
||||
CheckData(InitialOutput := |cInt| * n);
|
||||
CheckOutputSeq(a + |0| + a[:^1]);
|
||||
end;
|
||||
|
||||
'List1': begin
|
||||
ClearOutputListFromSpaces;
|
||||
CheckData(InitialOutput := |cInt|);
|
||||
CheckOutput('Иванов','Петров','Сидоров');
|
||||
end;
|
||||
'List2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(11,2,13,4,15);
|
||||
end;
|
||||
'List3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(1,3,5,7);
|
||||
end;
|
||||
'List4': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq((1..7).Select(x->x*x));
|
||||
end;
|
||||
'List5': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(10);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(a.Where(x->x.IsEven));
|
||||
end;
|
||||
'List6': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(10);
|
||||
|
||||
var a := IntArr(n);
|
||||
CheckOutputAfterInitialSeq(a.Where(x->x.IsEven)+a.Where(x->x.IsOdd));
|
||||
end;
|
||||
'List6a': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(InitialInput := |cInt|*3);
|
||||
GenerateAutoTests(10);
|
||||
|
||||
var a := IntArr(3);
|
||||
CheckOutputSeq(|1,3,5|+a);
|
||||
end;
|
||||
'List6b': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(|1,3,5,2,4,6,9,8,7|);
|
||||
end;
|
||||
'List7': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 20;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(5);
|
||||
var a := IntArr(10);
|
||||
var b := IntArr(10);
|
||||
CheckOutputAfterInitialSeq(a.Interleave(b));
|
||||
end;
|
||||
'List8': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
var b := a.ToList;
|
||||
b.Insert(2,555);
|
||||
CheckOutputSeq(a+b);
|
||||
end;
|
||||
'List9': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
var b := a.ToList;
|
||||
if b.Count>0 then
|
||||
b.RemoveAt(2);
|
||||
CheckOutputSeq(a+b);
|
||||
end;
|
||||
'List9a': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq((1..10));
|
||||
end;
|
||||
'List9b': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialInput := |cInt|*n);
|
||||
var a := IntArr(n);
|
||||
CheckOutputSeq(a);
|
||||
end;
|
||||
|
||||
'Sort1': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(5);
|
||||
var a := IntArr(n);
|
||||
CheckOutputSeq(a+a.Sorted);
|
||||
end;
|
||||
'Sort2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(|cInt|*n, |cInt|*n);
|
||||
GenerateAutoTests(5);
|
||||
var a := IntArr(n);
|
||||
CheckOutputSeq(a+a.SortedDescending);
|
||||
end;
|
||||
'Sort3': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 9;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
CheckOutputSeq(a + a.Sorted);
|
||||
end;
|
||||
'BubbleSort': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 10;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
var b := Copy(a);
|
||||
for var j:=n-1 downto 1 do
|
||||
if b[j-1] > b[j] then
|
||||
Swap(b[j-1], b[j]);
|
||||
CheckOutputSeq(a + b);
|
||||
end;
|
||||
'BubbleSort2': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
var n := 9;
|
||||
CheckData(InitialOutput := |cInt|*n);
|
||||
|
||||
var a := OutSliceIntArr(0,n-1);
|
||||
CheckOutputSeq(a+a.Sorted);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
initialization
|
||||
CheckTask := CheckTaskT;
|
||||
finalization
|
||||
end.
|
||||
846
bin/Lib/log.txt
846
bin/Lib/log.txt
|
|
@ -1,846 +0,0 @@
|
|||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2741
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(procedure_call _procedure_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 4036
|
||||
в PascalABCCompiler.SyntaxTree.procedure_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 22005
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(assign _assign) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 220
|
||||
в PascalABCCompiler.SyntaxTree.assign.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 1098
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(procedure_call _procedure_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 4036
|
||||
в PascalABCCompiler.SyntaxTree.procedure_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 22005
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(procedure_call _procedure_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 4036
|
||||
в PascalABCCompiler.SyntaxTree.procedure_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 22005
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(procedure_call _procedure_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 4036
|
||||
в PascalABCCompiler.SyntaxTree.procedure_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 22005
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.CompiledScope.GetInstance(List`1 gen_args, Boolean exact) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 5661
|
||||
в CodeCompletion.ProcScope.GetInstance(List`1 gen_args) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 2416
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.select_method(SymScope[] meths, TypeScope tleft, TypeScope tright, TypeScope obj, Boolean obj_instanced, List`1 arg_types, expression[] args) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3275
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3334
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2919
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(method_call _method_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3284
|
||||
в PascalABCCompiler.SyntaxTree.method_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 15347
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(dot_node _dot_node) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2888
|
||||
в PascalABCCompiler.SyntaxTree.dot_node.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 14519
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(procedure_call _procedure_call) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 4036
|
||||
в PascalABCCompiler.SyntaxTree.procedure_call.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 22005
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(statement_list _statement_list) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 183
|
||||
в PascalABCCompiler.SyntaxTree.statement_list.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 752
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2747
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2743
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2743
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2743
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2743
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 2743
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 60
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(array_const_new acn) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 5612
|
||||
в PascalABCCompiler.SyntaxTree.array_const_new.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 54187
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 246
|
||||
Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
|
||||
Имя параметра: index
|
||||
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
|
||||
в System.Collections.Generic.List`1.get_Item(Int32 index)
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(array_const_new acn) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 5612
|
||||
в PascalABCCompiler.SyntaxTree.array_const_new.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 54187
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 246
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 7968
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 560
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(program_module _program_module) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 3019
|
||||
в PascalABCCompiler.SyntaxTree.program_module.visit(IVisitor visitor) в D:\PABC_Git\SyntaxTree\tree\Tree.cs:строка 13211
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.Convert(compilation_unit cu) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 63
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
Ссылка на объект не указывает на экземпляр объекта.
|
||||
в CodeCompletion.UnknownScope.IsEqual(SymScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 8077
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 410
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(TypeScope ts, String name) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 482
|
||||
в CodeCompletion.SymScope.GetExtensionMethods(String name, TypeScope ts) в D:\PABC_Git\CodeCompletion\SymTable.cs:строка 367
|
||||
в CodeCompletion.DomSyntaxTreeVisitor.visit(bin_expr _bin_expr) в D:\PABC_Git\CodeCompletion\DomSyntaxTreeVisitor.cs:строка 561
|
||||
1691
bin/Lib/xPT4MakerNetX.pas
Normal file
1691
bin/Lib/xPT4MakerNetX.pas
Normal file
File diff suppressed because it is too large
Load diff
1231
bin/Lib/xPT4TaskMakerNET.pas
Normal file
1231
bin/Lib/xPT4TaskMakerNET.pas
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -18,6 +18,6 @@ P.ptCommentQuote{text-align:left;margin-left:120px;margin-top:0px;margin-bottom:
|
|||
P.ptCommentContinue{text-align:justify;}
|
||||
P.ptFooter{text-align:right;font-size:10pt;font-style:italic;margin-right:0px;}
|
||||
SPAN.ptSpecial{font-family:"Arial";}
|
||||
PRE{font-family:"Courier New";text-align:left;font-size:10pt;text-indent:0px;margin-top:5px; margin-right:10px; margin-bottom:0px; margin-left:60px;}
|
||||
PRE{text-align:left;font-size:10pt;text-indent:0px;margin-top:5px; margin-right:10px; margin-bottom:0px; margin-left:60px;}
|
||||
CODE{font-size:10pt;}
|
||||
P.ptPicture{font-family:Arial, sans-serif;margin-top: 5px;margin-bottom: 5px;margin-left: 60px;font-size: small;color: #000080;text-indent: 0pt;text-align: justify}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
N“票ª|10PABC2 NC:\Program Files (x86)\PascalABC.NET\PT4 NV8Â˜í«·®®#"%'%&&*&$#"%'%&&*&6b3:'%&&*&$#"%'%8>>674;7?<?8<98<257566:643257566:6
|
||||
Nmikhail|10PABC1 NC:\Program Files (x86)\PascalABC.NET\PT4 NV82roqrgmo"%'%&&*&$#"%'%&&*&:¢8:'%&&*&$#"%'%=6;<8756>;;;B;88;=@78=>;9;:;8>87@<
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
PROGRAMMING TASKBOOK FOR PASCALABC.NET
|
||||
|
||||
Copyright (c) M. Abramyan, 1998-2018
|
||||
Copyright (c) M. Abramyan, 1998-2023
|
||||
|
||||
|
||||
LICENSE FOR USE AND DISTRIBUTION
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ PROGRAMMING TASKBOOK FOR PASCALABC.NET
|
|||
Электронный задачник по программированию
|
||||
(версия для системы PascalABC.NET)
|
||||
|
||||
Copyright (c) <20>. <20>. <20>בנאל<D790>ם, 1998-2018
|
||||
Copyright (c) <20>. <20>. <20>בנאל<D790>ם, 1998-2023
|
||||
|
||||
|
||||
ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ ОБ ИСПОЛЬЗОВАНИИ И РАСПРОСТРАНЕНИИ
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ ArrSlice
|
|||
ArrShift
|
||||
ArrObj
|
||||
ObjArray
|
||||
ZFunc
|
||||
ZSeries
|
||||
ZMinmax
|
||||
ZArray
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@ loadver=4
|
|||
==cc|вложенные циклы|19
|
||||
==mix|разные задачи на управляющие операторы|10
|
||||
==p|процедуры без параметров|10
|
||||
==ps|процедуры без параметров простые|10
|
||||
==pp|процедуры с параметрами|8
|
||||
=DM|Исполнитель Чертежник||%f.pas|uses Drawman;%#%#begin%# Task('%t%n');%#%#end.
|
||||
==a|вводные задания|6
|
||||
|
|
|
|||
Binary file not shown.
BIN
bin/PT4/pt4pabc2.dll
Normal file
BIN
bin/PT4/pt4pabc2.dll
Normal file
Binary file not shown.
BIN
bin/PT4/xpt4pabc2.dll
Normal file
BIN
bin/PT4/xpt4pabc2.dll
Normal file
Binary file not shown.
Loading…
Reference in a new issue