Merge branch 'master' of github.com:pascalabcnet/pascalabcnet
This commit is contained in:
commit
eccf3682ea
|
|
@ -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 = "1363";
|
||||
public const string Revision = "1366";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%COREVERSION%=0
|
||||
%REVISION%=1363
|
||||
%MINOR%=2
|
||||
%REVISION%=1366
|
||||
%COREVERSION%=0
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.2.0.1363'
|
||||
!define VERSION '3.2.0.1366'
|
||||
|
|
|
|||
|
|
@ -1272,6 +1272,7 @@ procedure Str(r: real; var s: string);
|
|||
procedure Str(r: single; var s: string);
|
||||
///--
|
||||
procedure Str(s1: string; var s: string);
|
||||
|
||||
/// Возвращает позицию подстроки subs в строке s. Если не найдена, возвращает 0
|
||||
function Pos(subs, s: string; from: integer := 1): integer;
|
||||
/// Возвращает позицию подстроки subs в строке s начиная с позиции from. Если не найдена, возвращает 0
|
||||
|
|
@ -1280,6 +1281,7 @@ function PosEx(subs, s: string; from: integer := 1): integer;
|
|||
function LastPos(subs, s: string): integer;
|
||||
/// Возвращает позицию последнего вхождения подстроки subs в строке s начиная с позиции from. Если не найдена, возвращает 0
|
||||
function LastPos(subs, s: string; from: integer): integer;
|
||||
|
||||
/// Возвращает длину строки
|
||||
function Length(s: string): integer;
|
||||
/// Устанавливает длину строки s равной n
|
||||
|
|
@ -6187,7 +6189,7 @@ end;
|
|||
// -----------------------------------------------------
|
||||
function PascalABCVersion: string;
|
||||
begin
|
||||
Result := '3.2';
|
||||
Result := '3.2.0.1364';
|
||||
end;
|
||||
|
||||
function ParamCount: integer;
|
||||
|
|
@ -7192,30 +7194,49 @@ function Pos(subs, s: string; from: integer): integer;
|
|||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.IndexOf(subs, from - 1) + 1;
|
||||
else Result := s.IndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function PosEx(subs, s: string; from: integer): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.IndexOf(subs, from - 1) + 1;
|
||||
else Result := s.IndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(subs, s: string): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.LastIndexOf(subs, s.Length - 1) + 1;
|
||||
else Result := s.LastIndexOf(subs, s.Length - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(subs, s: string; from: integer): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.LastIndexOf(subs, from - 1) + 1;
|
||||
else Result := s.LastIndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function Pos(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.IndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function PosEx(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.IndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(c: char; s: string): integer;
|
||||
begin
|
||||
Result := s.LastIndexOf(c, s.Length - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.LastIndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function Length(s: string): integer;
|
||||
begin
|
||||
|
|
@ -9658,6 +9679,43 @@ begin
|
|||
Result := (Self[0],Self[1],Self[2],Self[3],Self[4],Self[5],v);
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := Self.Equals( v ) ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<><T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := not Self.Equals( v ) ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) < 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) <= 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator><T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) > 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator>=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) >= 0 ;
|
||||
end;
|
||||
|
||||
|
||||
// --------------------------------------------
|
||||
// Методы расширения типа Tuple # Extension methods for Tuple
|
||||
// -------------------------------------------
|
||||
|
|
@ -9898,34 +9956,6 @@ begin
|
|||
// SSM 31.03.09
|
||||
var FmtStr := '{0,' + NumOfChars.ToString + ':f' + abs(NumOfSignesAfterDot).ToString + '}';
|
||||
Result := Format(FmtStr, value);
|
||||
{var s := value.ToString(ENCultureInfo);
|
||||
var i := s.IndexOf('.')+1;
|
||||
if NumOfSignesAfterDot>=0 then
|
||||
begin
|
||||
if i=0 then
|
||||
begin
|
||||
s := s + '.';
|
||||
for var j:=1 to NumOfSignesAfterDot do
|
||||
s := s + '0'
|
||||
end
|
||||
else if NumOfSignesAfterDot=0 then begin
|
||||
s := Round(value).ToString(ENCultureInfo);
|
||||
//s := s.SubString(0,i-1);
|
||||
end else
|
||||
begin
|
||||
var d := s.Length - i;
|
||||
if NumOfSignesAfterDot>d then
|
||||
for var j:=1 to NumOfSignesAfterDot-d do
|
||||
s := s + '0'
|
||||
else if NumOfSignesAfterDot<d then begin
|
||||
var p := Round(Math.Pow(10,NumOfSignesAfterDot));
|
||||
s := (Round(value*p) / p).ToString(ENCultureInfo);
|
||||
//s := s.SubString(0,s.IndexOf('.')+1+NumOfSignesAfterDot)
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
s := s.PadLeft(NumOfChars);
|
||||
result := s;}
|
||||
end;
|
||||
|
||||
procedure StringDefaultPropertySet(var s: string; index: integer; c: char);
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1272,6 +1272,7 @@ procedure Str(r: real; var s: string);
|
|||
procedure Str(r: single; var s: string);
|
||||
///--
|
||||
procedure Str(s1: string; var s: string);
|
||||
|
||||
/// Возвращает позицию подстроки subs в строке s. Если не найдена, возвращает 0
|
||||
function Pos(subs, s: string; from: integer := 1): integer;
|
||||
/// Возвращает позицию подстроки subs в строке s начиная с позиции from. Если не найдена, возвращает 0
|
||||
|
|
@ -1280,6 +1281,7 @@ function PosEx(subs, s: string; from: integer := 1): integer;
|
|||
function LastPos(subs, s: string): integer;
|
||||
/// Возвращает позицию последнего вхождения подстроки subs в строке s начиная с позиции from. Если не найдена, возвращает 0
|
||||
function LastPos(subs, s: string; from: integer): integer;
|
||||
|
||||
/// Возвращает длину строки
|
||||
function Length(s: string): integer;
|
||||
/// Устанавливает длину строки s равной n
|
||||
|
|
@ -6187,7 +6189,7 @@ end;
|
|||
// -----------------------------------------------------
|
||||
function PascalABCVersion: string;
|
||||
begin
|
||||
Result := '3.2';
|
||||
Result := '3.2.0.1364';
|
||||
end;
|
||||
|
||||
function ParamCount: integer;
|
||||
|
|
@ -7192,30 +7194,49 @@ function Pos(subs, s: string; from: integer): integer;
|
|||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.IndexOf(subs, from - 1) + 1;
|
||||
else Result := s.IndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function PosEx(subs, s: string; from: integer): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.IndexOf(subs, from - 1) + 1;
|
||||
else Result := s.IndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(subs, s: string): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.LastIndexOf(subs, s.Length - 1) + 1;
|
||||
else Result := s.LastIndexOf(subs, s.Length - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(subs, s: string; from: integer): integer;
|
||||
begin
|
||||
if (subs = nil) or (subs.Length = 0) then
|
||||
Result := 0
|
||||
else Result := s.LastIndexOf(subs, from - 1) + 1;
|
||||
else Result := s.LastIndexOf(subs, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function Pos(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.IndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function PosEx(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.IndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(c: char; s: string): integer;
|
||||
begin
|
||||
Result := s.LastIndexOf(c, s.Length - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function LastPos(c: char; s: string; from: integer): integer;
|
||||
begin
|
||||
Result := s.LastIndexOf(c, from - 1,System.StringComparison.Ordinal) + 1;
|
||||
end;
|
||||
|
||||
function Length(s: string): integer;
|
||||
begin
|
||||
|
|
@ -9658,6 +9679,43 @@ begin
|
|||
Result := (Self[0],Self[1],Self[2],Self[3],Self[4],Self[5],v);
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := Self.Equals( v ) ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<><T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := not Self.Equals( v ) ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) < 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator<=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) <= 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator><T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) > 0 ;
|
||||
end;
|
||||
|
||||
///--
|
||||
function operator>=<T1, T2> (Self: (T1,T2); v: (T1,T2)): boolean; extensionmethod;
|
||||
begin
|
||||
Result := (Self as System.IComparable).CompareTo( v ) >= 0 ;
|
||||
end;
|
||||
|
||||
|
||||
// --------------------------------------------
|
||||
// Методы расширения типа Tuple # Extension methods for Tuple
|
||||
// -------------------------------------------
|
||||
|
|
@ -9898,34 +9956,6 @@ begin
|
|||
// SSM 31.03.09
|
||||
var FmtStr := '{0,' + NumOfChars.ToString + ':f' + abs(NumOfSignesAfterDot).ToString + '}';
|
||||
Result := Format(FmtStr, value);
|
||||
{var s := value.ToString(ENCultureInfo);
|
||||
var i := s.IndexOf('.')+1;
|
||||
if NumOfSignesAfterDot>=0 then
|
||||
begin
|
||||
if i=0 then
|
||||
begin
|
||||
s := s + '.';
|
||||
for var j:=1 to NumOfSignesAfterDot do
|
||||
s := s + '0'
|
||||
end
|
||||
else if NumOfSignesAfterDot=0 then begin
|
||||
s := Round(value).ToString(ENCultureInfo);
|
||||
//s := s.SubString(0,i-1);
|
||||
end else
|
||||
begin
|
||||
var d := s.Length - i;
|
||||
if NumOfSignesAfterDot>d then
|
||||
for var j:=1 to NumOfSignesAfterDot-d do
|
||||
s := s + '0'
|
||||
else if NumOfSignesAfterDot<d then begin
|
||||
var p := Round(Math.Pow(10,NumOfSignesAfterDot));
|
||||
s := (Round(value*p) / p).ToString(ENCultureInfo);
|
||||
//s := s.SubString(0,s.IndexOf('.')+1+NumOfSignesAfterDot)
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
s := s.PadLeft(NumOfChars);
|
||||
result := s;}
|
||||
end;
|
||||
|
||||
procedure StringDefaultPropertySet(var s: string; index: integer; c: char);
|
||||
|
|
|
|||
Loading…
Reference in a new issue