Поправил справку по функции

This commit is contained in:
Mikhalkovich Stanislav 2025-01-22 09:14:44 +03:00
parent 1bd21857cc
commit bba132bd5d
8 changed files with 39 additions and 7 deletions

View file

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

View file

@ -1,4 +1,4 @@
%COREVERSION%=2
%REVISION%=3596
%MINOR%=10
%REVISION%=3597
%COREVERSION%=2
%MAJOR%=3

Binary file not shown.

View file

@ -1 +1 @@
3.10.2.3596
3.10.2.3597

View file

@ -1 +1 @@
!define VERSION '3.10.2.3596'
!define VERSION '3.10.2.3597'

View file

@ -11587,7 +11587,7 @@ begin
end;
end;
/// Превращает последовательность в последовательность n-ок соседних элементов
/// Превращает последовательность в последовательность массивов, содержащих n соседних элементов
function Nwise<T>(Self: sequence of T; n: integer): sequence of array of T; extensionmethod;
begin
var chunk := new Queue<T>(n);

View file

@ -1207,6 +1207,38 @@ namespace PascalABCCompiler.TreeConverter
}
else
{
// SSM 20/01/25 - Tuple<int,int> -> Tuple<double,double>
/*if (formal_param_type.original_generic != null
&& formal_param_type.original_generic.BaseFullName.StartsWith("System.Tuple`")
&& factparams[i].type.original_generic != null
&& factparams[i].type.original_generic.BaseFullName.StartsWith("System.Tuple`")
&& formal_param_type.instance_params.Count == factparams[i].type.instance_params.Count
&& factparams[i] is IFunctionCallNode fpf
&& fpf.function.name == "Create")
{
expressions_list el = null;
function_node fn = null;
if (fpf is common_static_method_call fpf1) {
el = fpf1.parameters;
fn = fpf1.function_node;
}
else if (fpf is compiled_static_method_call fpf2) {
el = fpf2.parameters;
fn = fpf2.function_node;
}
var ccc = syntax_tree_visitor.create_constructor_call(formal_param_type,
el, factparams[i].location);
//factparams[i] = ccc;
possible_type_convertions ptci = new possible_type_convertions();
var ttttt = (ccc as compiled_constructor_call).function_node;
ptci.first = new type_conversion(ttttt);
ptci.second = null;
ptci.from = factparams[i].type;
ptci.to = formal_param_type;
tc.AddElement(ptci);
return tc;
}*/
//issue #2161 - SSM 12.03.2020
//issue #348
if ((formal_param_type == SystemLibrary.SystemLibrary.object_type || formal_param_type.IsDelegate) && factparams[i].type is delegated_methods)

View file

@ -19807,7 +19807,7 @@ namespace PascalABCCompiler.TreeConverter
return adrv;
}
private base_function_call create_constructor_call(type_node tn, expressions_list exprs, location loc, Tuple<bool, List<SyntaxTree.expression>> lambdas_info = null, bool inherited_call=false)
public base_function_call create_constructor_call(type_node tn, expressions_list exprs, location loc, Tuple<bool, List<SyntaxTree.expression>> lambdas_info = null, bool inherited_call=false)
{
if (tn.IsInterface)
{