This commit is contained in:
Mikhalkovich Stanislav 2020-06-10 09:09:56 +03:00
parent d4d80e1bb2
commit 1946c710f7
11 changed files with 34 additions and 11 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 = "6"; public const string Minor = "6";
public const string Build = "3"; public const string Build = "3";
public const string Revision = "2494"; public const string Revision = "2496";
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%=3 %COREVERSION%=3
%REVISION%=2494 %REVISION%=2496
%MINOR%=6 %MINOR%=6
%MAJOR%=3 %MAJOR%=3

View file

@ -1 +1 @@
3.6.3.2494 3.6.3.2496

View file

@ -1 +1 @@
!define VERSION '3.6.3.2494' !define VERSION '3.6.3.2496'

View file

@ -129,7 +129,8 @@ namespace SyntaxVisitors
Replace(var_def, newVS); Replace(var_def, newVS);
listNodes[listNodes.Count - 1] = newVS; //SSM 8.11.18 listNodes[listNodes.Count - 1] = newVS; //SSM 8.11.18
base.visit(newVS); ProcessNode(newVS.inital_value); // SSM 10.06.2020 #2103
//base.visit(newVS); // SSM 10.06.2020 - зачем обходить всё?
} }
/*public override void visit(var_statement vs) /*public override void visit(var_statement vs)

View file

@ -722,15 +722,18 @@ begin
Result := visual.RenderOpen(); Result := visual.RenderOpen();
end; end;
procedure ReleaseDC(dc: DrawingContext); procedure HostToRenderBitmap;
begin
dc.Close;
if host.Children.Count > 1000 then
begin begin
rtBmap.Render(host); rtBmap.Render(host);
rtbmapIsCleared := False; rtbmapIsCleared := False;
host.Children.Clear; host.Children.Clear;
end; end;
procedure ReleaseDC(dc: DrawingContext);
begin
dc.Close;
if host.Children.Count > 1000 then
HostToRenderBitmap
end; end;
procedure FastDraw(d: DrawingContext->()); procedure FastDraw(d: DrawingContext->());
@ -1612,6 +1615,7 @@ function GraphWindowType.GetHeight := InvokeReal(GraphWindowTypeGetHeightP);
procedure SaveWindowP(canvas: FrameworkElement; filename: string); procedure SaveWindowP(canvas: FrameworkElement; filename: string);
begin begin
HostToRenderBitmap;
var (scalex,scaley) := ScaleToDevice; var (scalex,scaley) := ScaleToDevice;
var (dpiX,dpiY) := (scalex * 96, scaley * 96); var (dpiX,dpiY) := (scalex * 96, scaley * 96);
@ -1625,7 +1629,9 @@ begin
var mm := (canvas as MyVisualHost).RenderTransform.Value; var mm := (canvas as MyVisualHost).RenderTransform.Value;
mm.Invert; mm.Invert;
r.Transform(mm); r.Transform(mm);
dc.DrawRectangle(Brush.BrushConstruct,nil,r); dc.DrawRectangle(Brushes.White,nil,r);
var rr := Rect(0,0,rtbmap.Width,rtbmap.Height);
dc.DrawImage(rtbmap,rr);
dc.Close; dc.Close;
(canvas as MyVisualHost).children.Insert(0,myvis); (canvas as MyVisualHost).children.Insert(0,myvis);

View file

@ -273,6 +273,7 @@ function operator implicit(Self: (integer, real)): Point; extensionmethod := new
function operator implicit(Self: (real, integer)): Point; extensionmethod := new Point(Self[0], Self[1]); function operator implicit(Self: (real, integer)): Point; extensionmethod := new Point(Self[0], Self[1]);
function operator implicit(Self: (real, real)): Point; extensionmethod := new Point(Self[0], Self[1]); function operator implicit(Self: (real, real)): Point; extensionmethod := new Point(Self[0], Self[1]);
function operator implicit(Self: (integer, integer)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (integer, integer)): Size; extensionmethod := new Size(Self[0], Self[1]);
function operator implicit(Self: (integer, real)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (integer, real)): Size; extensionmethod := new Size(Self[0], Self[1]);
function operator implicit(Self: (real, integer)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (real, integer)): Size; extensionmethod := new Size(Self[0], Self[1]);

View file

@ -2307,6 +2307,8 @@ function Rec<T1, T2, T3, T4, T5>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5): (T1, T
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>(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); 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);
///--
//function Rec<T1, T2, T3, T4, T5, T6, T7, T8>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6; x7: T7; x8: T8): (T1, T2, T3, T4, T5, T6, T7);
// ----------------------------------------------------- // -----------------------------------------------------

10
TestSuite/yi1.pas Normal file
View file

@ -0,0 +1,10 @@
function f1: sequence of byte;
begin
var action: System.Action;
yield 2;
end;
begin
Assert(f1.First=2)
end.

View file

@ -273,6 +273,7 @@ function operator implicit(Self: (integer, real)): Point; extensionmethod := new
function operator implicit(Self: (real, integer)): Point; extensionmethod := new Point(Self[0], Self[1]); function operator implicit(Self: (real, integer)): Point; extensionmethod := new Point(Self[0], Self[1]);
function operator implicit(Self: (real, real)): Point; extensionmethod := new Point(Self[0], Self[1]); function operator implicit(Self: (real, real)): Point; extensionmethod := new Point(Self[0], Self[1]);
function operator implicit(Self: (integer, integer)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (integer, integer)): Size; extensionmethod := new Size(Self[0], Self[1]);
function operator implicit(Self: (integer, real)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (integer, real)): Size; extensionmethod := new Size(Self[0], Self[1]);
function operator implicit(Self: (real, integer)): Size; extensionmethod := new Size(Self[0], Self[1]); function operator implicit(Self: (real, integer)): Size; extensionmethod := new Size(Self[0], Self[1]);

View file

@ -2307,6 +2307,8 @@ function Rec<T1, T2, T3, T4, T5>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5): (T1, T
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>(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); 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);
///--
//function Rec<T1, T2, T3, T4, T5, T6, T7, T8>(x1: T1; x2: T2; x3: T3; x4: T4; x5: T5; x6: T6; x7: T7; x8: T8): (T1, T2, T3, T4, T5, T6, T7);
// ----------------------------------------------------- // -----------------------------------------------------