This commit is contained in:
miks1965 2018-10-02 19:46:41 +03:00
parent 266554388b
commit bb2ef43840
9 changed files with 491 additions and 453 deletions

View file

@ -15,7 +15,7 @@ internal static class RevisionClass
public const string Major = "3"; public const string Major = "3";
public const string Minor = "4"; public const string Minor = "4";
public const string Build = "2"; public const string Build = "2";
public const string Revision = "1813"; public const string Revision = "1814";
public const string MainVersion = Major + "." + Minor; public const string MainVersion = Major + "." + Minor;
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision; public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;

View file

@ -1,4 +1,4 @@
%COREVERSION%=2
%REVISION%=1813
%MINOR%=4 %MINOR%=4
%REVISION%=1814
%COREVERSION%=2
%MAJOR%=3 %MAJOR%=3

View file

@ -1,9 +1,9 @@
// //
// This CSharp output file generated by Gardens Point LEX // This CSharp output file generated by Gardens Point LEX
// Version: 1.1.3.301 // Version: 1.1.3.301
// Machine: IVAN-PC // Machine: DESKTOP-A6LT9RI
// DateTime: 30.09.2018 11:51:35 // DateTime: 02.10.2018 18:24:40
// UserName: Ivan // UserName: ?????????
// GPLEX input file <ABCPascal.lex> // GPLEX input file <ABCPascal.lex>
// GPLEX frame file <embedded resource> // GPLEX frame file <embedded resource>
// //

View file

@ -817,8 +817,6 @@ const_factor
{ $$ = $1; } { $$ = $1; }
| unsigned_number | unsigned_number
{ $$ = $1; } { $$ = $1; }
| literal
{ $$ = $1; }
| tkNil | tkNil
{ {
$$ = new nil_const(); $$ = new nil_const();
@ -887,6 +885,8 @@ sign
const_variable const_variable
: identifier : identifier
{ $$ = $1; } { $$ = $1; }
| literal // SSM 02.10.18 для '123'.Length при инициализации констант
{ $$ = $1; }
| tkInherited identifier | tkInherited identifier
{ {
$$ = new inherited_ident($2.name, @$); $$ = new inherited_ident($2.name, @$);

File diff suppressed because it is too large Load diff

View file

@ -218,5 +218,6 @@ script=

View file

@ -1 +1 @@
!define VERSION '3.4.2.1813' !define VERSION '3.4.2.1814'

View file

@ -1836,6 +1836,24 @@ function ReadMatrInteger(m, n: integer): array [,] of integer;
/// Возвращает матрицу m на n вещественных, введенных с клавиатуры /// Возвращает матрицу m на n вещественных, введенных с клавиатуры
function ReadMatrReal(m, n: integer): array [,] of real; function ReadMatrReal(m, n: integer): array [,] of real;
// -----------------------------------------------------
//>> Подпрограммы для создания кортежей # Subroutines for tuple generation
// -----------------------------------------------------
///- function Rec(x1: T1, x2: T2,...): (T1,T2,...);
/// Возвращает кортеж из элементов разных типов
function Rec<T1, T2>(x1: T1; x2: T2): System.Tuple<T1, T2>;
///--
function Rec<T1, T2, T3>(x1: T1; x2: T2; x3: T3): (T1, T2, T3);
///--
function Rec<T1, T2, T3, T4>(x1: T1; x2: T2; x3: T3; x4: T4): (T1, T2, T3, T4);
///--
function Rec<T1, T2, T3, T4, T5>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5): (T1, T2, T3, T4, T5);
///--
function Rec<T1, T2, T3, T4, T5, T6>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6): (T1, T2, T3, T4, T5, T6);
///--
function Rec<T1, T2, T3, T4, T5, T6, T7>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6; x7: T7): (T1, T2, T3, T4, T5, T6, T7);
// ----------------------------------------------------- // -----------------------------------------------------
//>> Короткие функции Lst, LLst, HSet, SSet, Dict, KV # Short functions Lst, HSet, SSet, Dict, KV //>> Короткие функции Lst, LLst, HSet, SSet, Dict, KV # Short functions Lst, HSet, SSet, Dict, KV
// ----------------------------------------------------- // -----------------------------------------------------
@ -4260,6 +4278,21 @@ begin
Result := ReadSeqStringWhile(cond); Result := ReadSeqStringWhile(cond);
end; end;
// -----------------------------------------------------------------------------
// Функции Rec для создания кортежей
// -----------------------------------------------------------------------------
function Rec<T1, T2>(x1: T1; x2: T2) := Tuple.Create(x1, x2);
function Rec<T1, T2, T3>(x1: T1; x2: T2; x3: T3) := Tuple.Create(x1, x2, x3);
function Rec<T1, T2, T3, T4>(x1: T1; x2: T2; x3: T3; x4: T4) := Tuple.Create(x1, x2, x3, x4);
function Rec<T1, T2, T3, T4, T5>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5) := Tuple.Create(x1, x2, x3, x4, x5);
function Rec<T1, T2, T3, T4, T5, T6>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6) := Tuple.Create(x1, x2, x3, x4, x5, x6);
function Rec<T1, T2, T3, T4, T5, T6, T7>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6; x7: T7) := Tuple.Create(x1, x2, x3, x4, x5, x6, x7);
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Функции Lst, LLst, Dict, KV, HSet, SSet // Функции Lst, LLst, Dict, KV, HSet, SSet
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------

View file

@ -0,0 +1,4 @@
begin
var a: integer := '123'.Length;
Assert(a=3);
end.