1
+ using GitVersion . Extensions ;
1
2
using GitVersion . Helpers ;
2
3
using LibGit2Sharp ;
3
4
@@ -7,20 +8,17 @@ internal sealed class Tag : ITag
7
8
{
8
9
private static readonly LambdaEqualityHelper < ITag > equalityHelper = new ( x => x . Name . Canonical ) ;
9
10
private static readonly LambdaKeyComparer < ITag , string > comparerHelper = new ( x => x . Name . Canonical ) ;
10
-
11
11
private readonly LibGit2Sharp . Tag innerTag ;
12
+
12
13
internal Tag ( LibGit2Sharp . Tag tag )
13
14
{
14
- this . innerTag = tag ;
15
+ this . innerTag = tag . NotNull ( ) ;
15
16
Name = new ReferenceName ( this . innerTag . CanonicalName ) ;
16
17
}
17
- public ReferenceName Name { get ; }
18
18
19
+ public ReferenceName Name { get ; }
19
20
public int CompareTo ( ITag other ) => comparerHelper . Compare ( this , other ) ;
20
21
public bool Equals ( ITag ? other ) => equalityHelper . Equals ( this , other ) ;
21
- public override bool Equals ( object obj ) => Equals ( ( obj as ITag ) ) ;
22
- public override int GetHashCode ( ) => equalityHelper . GetHashCode ( this ) ;
23
- public override string ToString ( ) => Name . ToString ( ) ;
24
22
public string ? TargetSha => this . innerTag . Target . Sha ;
25
23
26
24
public ICommit ? PeeledTargetCommit ( )
@@ -34,4 +32,8 @@ internal Tag(LibGit2Sharp.Tag tag)
34
32
35
33
return target is LibGit2Sharp . Commit commit ? new Commit ( commit ) : null ;
36
34
}
35
+
36
+ public override bool Equals ( object obj ) => Equals ( ( obj as ITag ) ) ;
37
+ public override int GetHashCode ( ) => equalityHelper . GetHashCode ( this ) ;
38
+ public override string ToString ( ) => Name . ToString ( ) ;
37
39
}
0 commit comments