Release Notes
Installation
Visual Studio Integration
We added support in Synergy .NET for the OverloadResolutionPriority attribute, which allows you to influence method overload resolution. When multiple overloaded methods are applicable to a method call, the overload with the highest priority value is selected. (The default priority is 0, and higher values indicate higher priority.) This attribute can be helpful when introducing a newer overload (e.g., a more performant implementation) and you want future builds to prefer it without requiring changes to existing calls. For example, in the code below, both overloads of PrintValue are applicable for the call Example.PrintValue(5). Because the short overload has a higher priority, it is selected:
public class Example
public static method PrintValue, void
value, int
proc
Console.WriteLine("int overload")
endmethod
{OverloadResolutionPriority(1)}
public static method PrintValue, void
value, short
proc
Console.WriteLine("short overload")
endmethod
endclass
main
proc
Example.PrintValue(5)
end
Synergy .NET now supports params parameters on selected collection types--e.g., Span<T> (cf. https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13#params-collections)--in addition to arrays. This works like params T[], but instead of collecting arguments into an array, the compiler collects them directly into the specified collection type.
public class Totals
public static method Total, int
params values, Span<int>
proc
data sum, int, 0
foreach data v in values
sum += v
endforeach
mreturn sum
endmethod
endclass
main
proc
Console.WriteLine(Totals.Total(1, 2, 3)) ;6
end
Visual Studio Integration
- Options on the Repository page have been reorganized and reworded for clarity and ease of use. Settings are now easier to understand and follow, making it simpler to configure and manage Repository projects efficiently.
- The Repository page now includes options for automatically generating repository schema files when exiting the Repository program. When the new option "Automatically generate schemas on exiting Repository UI" is selected, the following options are available:
- "Generate a single schema file" creates one schema file for the entire repository project.
- "Generate separate schema files" results in a separate schema file for each repository element, providing greater flexibility in the management of schema files and repository elements.
Visual Studio Integration
SQL Connection
Synergy Language
xfNetLink .NET
xfODBC
Visual Studio Integration
- When hovering over structure fields.
- When used on statements that use parentheses to specify an array element, such as myarray(dvar) in the following:
myarray ,13[d1] dvar ,d2 . . . myvar = myarray(dvar)Repository
SQL Connection
Synergy Language
UI Toolkit
xfNetLink .NET
xfServer
SQL Connection
Synergy Language
xfODBC
xfServer
xfServerPlus
Repository
Synergy Language
xfServer
xfServerPlus
Visual Studio Integration
Installation
Repository
SQL Connection
Synergy Language
UI Toolkit
xfODBC
xfServer
Visual Studio Integration
- Require prototype usage (-qreqproto),
- Define all undefined functions as ^VAL (-X, -qimplicit_functions).
License Manager
Synergy Language
UI Toolkit
Visual Studio Integration
begindata ok, boolean, trueif (!ok)Console.WriteLine("Fail")end