Skip to content

Commit 3efe59b

Browse files
committed
WIP
1 parent e6180f6 commit 3efe59b

File tree

4 files changed

+16
-146
lines changed

4 files changed

+16
-146
lines changed

LibGit2Sharp/Core/Handles/Objects.cs

Lines changed: 0 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,6 @@ protected override bool ReleaseHandle()
2222

2323
return true;
2424
}
25-
26-
public static implicit operator git_tree_entry*(TreeEntryHandle handle)
27-
{
28-
return (git_tree_entry*)handle.DangerousGetHandle();
29-
}
3025
}
3126

3227
internal unsafe class ReferenceHandle : Libgit2Object
@@ -47,11 +42,6 @@ protected override bool ReleaseHandle()
4742

4843
return true;
4944
}
50-
51-
public static implicit operator git_reference*(ReferenceHandle handle)
52-
{
53-
return (git_reference*)handle.DangerousGetHandle();
54-
}
5545
}
5646

5747
internal unsafe class RepositoryHandle : Libgit2Object
@@ -72,11 +62,6 @@ protected override bool ReleaseHandle()
7262

7363
return true;
7464
}
75-
76-
public static implicit operator git_repository*(RepositoryHandle handle)
77-
{
78-
return (git_repository*)handle.DangerousGetHandle();
79-
}
8065
}
8166

8267
internal unsafe class SignatureHandle : Libgit2Object
@@ -97,11 +82,6 @@ protected override bool ReleaseHandle()
9782

9883
return true;
9984
}
100-
101-
public static implicit operator git_signature*(SignatureHandle handle)
102-
{
103-
return (git_signature*)handle.DangerousGetHandle();
104-
}
10585
}
10686

10787
internal unsafe class StatusListHandle : Libgit2Object
@@ -122,11 +102,6 @@ protected override bool ReleaseHandle()
122102

123103
return true;
124104
}
125-
126-
public static implicit operator git_status_list*(StatusListHandle handle)
127-
{
128-
return (git_status_list*)handle.DangerousGetHandle();
129-
}
130105
}
131106

132107
internal unsafe class BlameHandle : Libgit2Object
@@ -147,11 +122,6 @@ protected override bool ReleaseHandle()
147122

148123
return true;
149124
}
150-
151-
public static implicit operator git_blame*(BlameHandle handle)
152-
{
153-
return (git_blame*)handle.DangerousGetHandle();
154-
}
155125
}
156126

157127
internal unsafe class DiffHandle : Libgit2Object
@@ -172,11 +142,6 @@ protected override bool ReleaseHandle()
172142

173143
return true;
174144
}
175-
176-
public static implicit operator git_diff*(DiffHandle handle)
177-
{
178-
return (git_diff*)handle.DangerousGetHandle();
179-
}
180145
}
181146

182147
internal unsafe class PatchHandle : Libgit2Object
@@ -197,11 +162,6 @@ protected override bool ReleaseHandle()
197162

198163
return true;
199164
}
200-
201-
public static implicit operator git_patch*(PatchHandle handle)
202-
{
203-
return (git_patch*)handle.DangerousGetHandle();
204-
}
205165
}
206166

207167
internal unsafe class ConfigurationHandle : Libgit2Object
@@ -222,11 +182,6 @@ protected override bool ReleaseHandle()
222182

223183
return true;
224184
}
225-
226-
public static implicit operator git_config*(ConfigurationHandle handle)
227-
{
228-
return (git_config*)handle.DangerousGetHandle();
229-
}
230185
}
231186

232187
internal unsafe class ConflictIteratorHandle : Libgit2Object
@@ -247,11 +202,6 @@ protected override bool ReleaseHandle()
247202

248203
return true;
249204
}
250-
251-
public static implicit operator git_index_conflict_iterator*(ConflictIteratorHandle handle)
252-
{
253-
return (git_index_conflict_iterator*)handle.DangerousGetHandle();
254-
}
255205
}
256206

257207
internal unsafe class IndexHandle : Libgit2Object
@@ -272,11 +222,6 @@ protected override bool ReleaseHandle()
272222

273223
return true;
274224
}
275-
276-
public static implicit operator git_index*(IndexHandle handle)
277-
{
278-
return (git_index*)handle.DangerousGetHandle();
279-
}
280225
}
281226

282227
internal unsafe class ReflogHandle : Libgit2Object
@@ -297,11 +242,6 @@ protected override bool ReleaseHandle()
297242

298243
return true;
299244
}
300-
301-
public static implicit operator git_reflog*(ReflogHandle handle)
302-
{
303-
return (git_reflog*)handle.DangerousGetHandle();
304-
}
305245
}
306246

307247
internal unsafe class TreeBuilderHandle : Libgit2Object
@@ -322,11 +262,6 @@ protected override bool ReleaseHandle()
322262

323263
return true;
324264
}
325-
326-
public static implicit operator git_treebuilder*(TreeBuilderHandle handle)
327-
{
328-
return (git_treebuilder*)handle.DangerousGetHandle();
329-
}
330265
}
331266

332267
internal unsafe class PackBuilderHandle : Libgit2Object
@@ -347,11 +282,6 @@ protected override bool ReleaseHandle()
347282

348283
return true;
349284
}
350-
351-
public static implicit operator git_packbuilder*(PackBuilderHandle handle)
352-
{
353-
return (git_packbuilder*)handle.DangerousGetHandle();
354-
}
355285
}
356286

357287
internal unsafe class NoteHandle : Libgit2Object
@@ -372,11 +302,6 @@ protected override bool ReleaseHandle()
372302

373303
return true;
374304
}
375-
376-
public static implicit operator git_note*(NoteHandle handle)
377-
{
378-
return (git_note*)handle.DangerousGetHandle();
379-
}
380305
}
381306

382307
internal unsafe class DescribeResultHandle : Libgit2Object
@@ -397,11 +322,6 @@ protected override bool ReleaseHandle()
397322

398323
return true;
399324
}
400-
401-
public static implicit operator git_describe_result*(DescribeResultHandle handle)
402-
{
403-
return (git_describe_result*)handle.DangerousGetHandle();
404-
}
405325
}
406326

407327
internal unsafe class SubmoduleHandle : Libgit2Object
@@ -422,11 +342,6 @@ protected override bool ReleaseHandle()
422342

423343
return true;
424344
}
425-
426-
public static implicit operator git_submodule*(SubmoduleHandle handle)
427-
{
428-
return (git_submodule*)handle.DangerousGetHandle();
429-
}
430345
}
431346

432347
internal unsafe class AnnotatedCommitHandle : Libgit2Object
@@ -447,11 +362,6 @@ protected override bool ReleaseHandle()
447362

448363
return true;
449364
}
450-
451-
public static implicit operator git_annotated_commit*(AnnotatedCommitHandle handle)
452-
{
453-
return (git_annotated_commit*)handle.DangerousGetHandle();
454-
}
455365
}
456366

457367
internal unsafe class ObjectDatabaseHandle : Libgit2Object
@@ -472,11 +382,6 @@ protected override bool ReleaseHandle()
472382

473383
return true;
474384
}
475-
476-
public static implicit operator git_odb*(ObjectDatabaseHandle handle)
477-
{
478-
return (git_odb*)handle.DangerousGetHandle();
479-
}
480385
}
481386

482387
internal unsafe class RevWalkerHandle : Libgit2Object
@@ -497,11 +402,6 @@ protected override bool ReleaseHandle()
497402

498403
return true;
499404
}
500-
501-
public static implicit operator git_revwalk*(RevWalkerHandle handle)
502-
{
503-
return (git_revwalk*)handle.DangerousGetHandle();
504-
}
505405
}
506406

507407
internal unsafe class RemoteHandle : Libgit2Object
@@ -522,11 +422,6 @@ protected override bool ReleaseHandle()
522422

523423
return true;
524424
}
525-
526-
public static implicit operator git_remote*(RemoteHandle handle)
527-
{
528-
return (git_remote*)handle.DangerousGetHandle();
529-
}
530425
}
531426

532427
internal unsafe class ObjectHandle : Libgit2Object
@@ -547,11 +442,6 @@ protected override bool ReleaseHandle()
547442

548443
return true;
549444
}
550-
551-
public static implicit operator git_object*(ObjectHandle handle)
552-
{
553-
return (git_object*)handle.DangerousGetHandle();
554-
}
555445
}
556446

557447
internal unsafe class RebaseHandle : Libgit2Object
@@ -572,11 +462,6 @@ protected override bool ReleaseHandle()
572462

573463
return true;
574464
}
575-
576-
public static implicit operator git_rebase*(RebaseHandle handle)
577-
{
578-
return (git_rebase*)handle.DangerousGetHandle();
579-
}
580465
}
581466

582467
internal unsafe class OdbStreamHandle : Libgit2Object
@@ -597,11 +482,6 @@ protected override bool ReleaseHandle()
597482

598483
return true;
599484
}
600-
601-
public static implicit operator git_odb_stream*(OdbStreamHandle handle)
602-
{
603-
return (git_odb_stream*)handle.DangerousGetHandle();
604-
}
605485
}
606486

607487
internal unsafe class WorktreeHandle : Libgit2Object
@@ -622,11 +502,6 @@ protected override bool ReleaseHandle()
622502

623503
return true;
624504
}
625-
626-
public static implicit operator git_worktree*(WorktreeHandle handle)
627-
{
628-
return (git_worktree*)handle.DangerousGetHandle();
629-
}
630505
}
631506

632507
}

LibGit2Sharp/Core/Handles/Objects.tt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,6 @@ for (var i = 0; i < cNames.Length; i++)
8888

8989
return true;
9090
}
91-
92-
public static implicit operator <#= cNames[i] #>*(<#= csNames[i] #> handle)
93-
{
94-
return (<#= cNames[i] #>*)handle.DangerousGetHandle();
95-
}
9691
}
9792

9893
<#

LibGit2Sharp/Core/NativeMethods.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ internal static extern int git_error_set_str(
179179
internal static extern void git_error_set_oom();
180180

181181
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
182-
internal static extern unsafe uint git_blame_get_hunk_count(git_blame* blame);
182+
internal static extern unsafe uint git_blame_get_hunk_count(BlameHandle blame);
183183

184184
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
185185
internal static extern unsafe git_blame_hunk* git_blame_get_hunk_byindex(
@@ -453,7 +453,7 @@ internal static extern unsafe int git_config_delete_entry(
453453
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(StrictUtf8Marshaler))] string name);
454454

455455
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
456-
internal static extern unsafe int git_config_lock(out IntPtr txn, git_config* config);
456+
internal static extern unsafe int git_config_lock(out IntPtr txn, ConfigurationHandle config);
457457

458458
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
459459
internal static extern unsafe int git_config_delete_multivar(
@@ -1256,7 +1256,7 @@ internal static extern unsafe int git_reference_remove(
12561256
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(StrictUtf8Marshaler))] string name);
12571257

12581258
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
1259-
internal static extern unsafe git_oid* git_reference_target(git_reference* reference);
1259+
internal static extern unsafe git_oid* git_reference_target(ReferenceHandle reference);
12601260

12611261
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
12621262
internal static extern unsafe int git_reference_rename(
@@ -1282,7 +1282,7 @@ internal static extern unsafe int git_reference_symbolic_set_target(
12821282

12831283
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
12841284
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(LaxUtf8NoCleanupMarshaler))]
1285-
internal static extern unsafe string git_reference_symbolic_target(git_reference* reference);
1285+
internal static extern unsafe string git_reference_symbolic_target(ReferenceHandle reference);
12861286

12871287
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
12881288
internal static extern unsafe GitReferenceType git_reference_type(ReferenceHandle reference);
@@ -2000,7 +2000,7 @@ internal static extern int git_transport_unregister(
20002000
[MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(StrictUtf8Marshaler))] string prefix);
20012001

20022002
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
2003-
internal static extern unsafe uint git_tree_entry_filemode(git_tree_entry* entry);
2003+
internal static extern unsafe uint git_tree_entry_filemode(TreeEntryHandle entry);
20042004

20052005
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
20062006
internal static extern unsafe git_tree_entry* git_tree_entry_byindex(git_object* tree, UIntPtr idx);
@@ -2015,17 +2015,17 @@ internal static extern unsafe int git_tree_entry_bypath(
20152015
internal static extern unsafe void git_tree_entry_free(git_tree_entry* treeEntry);
20162016

20172017
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
2018-
internal static extern unsafe git_oid* git_tree_entry_id(git_tree_entry* entry);
2018+
internal static extern unsafe git_oid* git_tree_entry_id(TreeEntryHandle entry);
20192019

20202020
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
20212021
[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(LaxUtf8NoCleanupMarshaler))]
2022-
internal static extern unsafe string git_tree_entry_name(git_tree_entry* entry);
2022+
internal static extern unsafe string git_tree_entry_name(TreeEntryHandle entry);
20232023

20242024
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
2025-
internal static extern unsafe GitObjectType git_tree_entry_type(git_tree_entry* entry);
2025+
internal static extern unsafe GitObjectType git_tree_entry_type(TreeEntryHandle entry);
20262026

20272027
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
2028-
internal static extern unsafe UIntPtr git_tree_entrycount(git_object* tree);
2028+
internal static extern unsafe UIntPtr git_tree_entrycount(ObjectHandle tree);
20292029

20302030
[DllImport(libgit2, CallingConvention = CallingConvention.Cdecl)]
20312031
internal static extern unsafe int git_treebuilder_new(out git_treebuilder* builder, git_repository* repo, IntPtr src);

0 commit comments

Comments
 (0)