forked from Memnarch/Delphinus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
DN.Package.Version.pas
84 lines (70 loc) · 2.14 KB
/
DN.Package.Version.pas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
{
#########################################################
# Copyright by Alexander Benikowski #
# This unit is part of the Delphinus project hosted on #
# https://github.com/Memnarch/Delphinus #
#########################################################
}
unit DN.Package.Version;
interface
uses
DN.Types,
DN.Version,
DN.Package.Version.Intf;
type
TDNPackageVersion = class(TInterfacedObject, IDNPackageVersion)
private
FName: string;
FValue: TDNVersion;
FCompilerMin: TCompilerVersion;
FCompilerMax: TCompilerVersion;
function GetCompilerMax: TCompilerVersion;
function GetCompilerMin: TCompilerVersion;
function GetName: string;
procedure SetCompilerMax(const Value: TCompilerVersion);
procedure SetCompilerMin(const Value: TCompilerVersion);
procedure SetName(const Value: string);
function GetValue: TDNVersion;
procedure SetValue(const Value: TDNVersion);
public
property Name: string read GetName write SetName;
property Value: TDNVersion read GetValue write SetValue;
property CompilerMin: TCompilerVersion read GetCompilerMin write SetCompilerMin;
property CompilerMax: TCompilerVersion read GetCompilerMax write SetCompilerMax;
end;
implementation
{ TDNPackageVersion }
function TDNPackageVersion.GetCompilerMax: TCompilerVersion;
begin
Result := FCompilerMax;
end;
function TDNPackageVersion.GetCompilerMin: TCompilerVersion;
begin
Result := FCompilerMin;
end;
function TDNPackageVersion.GetName: string;
begin
Result := FName;
end;
function TDNPackageVersion.GetValue: TDNVersion;
begin
Result := FValue;
end;
procedure TDNPackageVersion.SetCompilerMax(const Value: TCompilerVersion);
begin
FCompilerMax := Value;
end;
procedure TDNPackageVersion.SetCompilerMin(const Value: TCompilerVersion);
begin
FCompilerMin := Value;
end;
procedure TDNPackageVersion.SetName(const Value: string);
begin
FName := Value;
TDNVersion.TryParse(FName, FValue);
end;
procedure TDNPackageVersion.SetValue(const Value: TDNVersion);
begin
FValue := Value;
end;
end.