Исправление var a, var b, var c
This commit is contained in:
parent
2fbdeaaa2c
commit
1dbd724756
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
|||
public const string Major = "3";
|
||||
public const string Minor = "2";
|
||||
public const string Build = "0";
|
||||
public const string Revision = "1323";
|
||||
public const string Revision = "1325";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%COREVERSION%=0
|
||||
%REVISION%=1323
|
||||
%REVISION%=1325
|
||||
%MINOR%=2
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
// This CSharp output file generated by Gardens Point LEX
|
||||
// Version: 1.1.3.301
|
||||
// Machine: DESKTOP-8EAQPI9
|
||||
// DateTime: 17.10.2016 12:57:52
|
||||
// DateTime: 19.10.2016 11:16:29
|
||||
// UserName: ?????????
|
||||
// GPLEX input file <ABCPascal.lex>
|
||||
// GPLEX frame file <embedded resource>
|
||||
|
|
|
|||
|
|
@ -2324,7 +2324,7 @@ var_variable_list
|
|||
{
|
||||
$$ = new addressed_value_list($2 as addressed_value,@$);
|
||||
}
|
||||
| variable_list tkComma tkVar variable
|
||||
| var_variable_list tkComma tkVar variable
|
||||
{
|
||||
($1 as addressed_value_list).Add($4 as addressed_value);
|
||||
($1 as addressed_value_list).source_context = LexLocation.MergeAll(@1,@2,@3,@4);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -135,6 +135,8 @@ script=
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.2.0.1323'
|
||||
!define VERSION '3.2.0.1325'
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3789,110 +3789,6 @@ begin
|
|||
Result := res;
|
||||
end;
|
||||
|
||||
{type
|
||||
// Вспомогательный класс для генерации бесконечной последовательности целых, начиная с заданного значения
|
||||
IntNumbersClass = class(SeqBaseInteger,IEnumerable<integer>,IEnumerator<integer>)
|
||||
private
|
||||
first,cur: integer;
|
||||
public
|
||||
constructor (first: integer := 0);
|
||||
begin
|
||||
Self.first := first;
|
||||
cur := first-1;
|
||||
end;
|
||||
function get_Current: integer; virtual;
|
||||
begin
|
||||
Result := cur;
|
||||
end;
|
||||
function MoveNext(): boolean; virtual;
|
||||
begin
|
||||
Result := True;
|
||||
cur += 1;
|
||||
end;
|
||||
procedure Dispose(); override;
|
||||
begin
|
||||
cur := first-1;
|
||||
end;
|
||||
end;}
|
||||
|
||||
// Вспомогательный класс для генерации рекуррентных последовательностей
|
||||
{ IterateClass<T> = class(SeqBase<T>,IEnumerable<T>,IEnumerator<T>)
|
||||
private
|
||||
first: T;
|
||||
cur: T;
|
||||
next: T->T;
|
||||
isfirst := true;
|
||||
public
|
||||
constructor (first: T; next: T->T);
|
||||
begin
|
||||
Self.first := first;
|
||||
cur := first;
|
||||
Self.next := next;
|
||||
end;
|
||||
|
||||
function get_Current: T; virtual;
|
||||
begin
|
||||
Result := cur;
|
||||
end;
|
||||
|
||||
function MoveNext(): boolean; virtual;
|
||||
begin
|
||||
Result := True;
|
||||
if isfirst then
|
||||
isfirst := false
|
||||
else cur := next(cur)
|
||||
end;
|
||||
|
||||
procedure Dispose(); override;
|
||||
begin
|
||||
cur := first;
|
||||
isfirst := true;
|
||||
end;
|
||||
end;
|
||||
|
||||
// Вспомогательный класс для генерации рекуррентных последовательностей по двум предыдущим значениям
|
||||
Iterate2Class<T> = class(SeqBase<T>,IEnumerable<T>,IEnumerator<T>)
|
||||
private
|
||||
first,second: T;
|
||||
a,b: T;
|
||||
next: (T,T)->T;
|
||||
isfirst := true;
|
||||
public
|
||||
constructor (first,second: T; next: (T,T)->T);
|
||||
begin
|
||||
Self.first := first;
|
||||
Self.second := second;
|
||||
a := first;
|
||||
b := second;
|
||||
Self.next := next;
|
||||
end;
|
||||
|
||||
function get_Current: T; virtual;
|
||||
begin
|
||||
Result := a;
|
||||
end;
|
||||
|
||||
function MoveNext(): boolean; virtual;
|
||||
begin
|
||||
Result := True;
|
||||
if isfirst then
|
||||
isfirst := false
|
||||
else
|
||||
begin
|
||||
var v := next(a,b);
|
||||
a := b;
|
||||
b := v;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure Dispose(); override;
|
||||
begin
|
||||
a := first;
|
||||
b := second;
|
||||
isfirst := true;
|
||||
end;
|
||||
end;}
|
||||
|
||||
/// Возвращает бесконечную рекуррентную последовательность элементов, задаваемую начальным элементом first и функцией next
|
||||
function Iterate<T>(first: T; next: T->T): sequence of T;
|
||||
begin
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Reference in a new issue