mirror of
https://github.com/SkinnyMind/libgit2dart.git
synced 2025-05-05 04:39:07 -04:00
feat(tree): add bindings and api
This commit is contained in:
parent
6bd04bb09d
commit
84ee4be945
22 changed files with 316 additions and 84 deletions
|
@ -164,46 +164,12 @@ class IndexEntry {
|
|||
/// Returns id of the index entry as sha-1 hex.
|
||||
String get sha => _oidToHex(_indexEntryPointer.ref.id);
|
||||
|
||||
GitFilemode get mode {
|
||||
switch (_indexEntryPointer.ref.mode) {
|
||||
case 0:
|
||||
return GitFilemode.undreadable;
|
||||
case 16384:
|
||||
return GitFilemode.tree;
|
||||
case 33188:
|
||||
return GitFilemode.blob;
|
||||
case 33261:
|
||||
return GitFilemode.blobExecutable;
|
||||
case 40960:
|
||||
return GitFilemode.link;
|
||||
case 57344:
|
||||
return GitFilemode.commit;
|
||||
default:
|
||||
return GitFilemode.undreadable;
|
||||
}
|
||||
}
|
||||
/// Returns the UNIX file attributes of a index entry.
|
||||
GitFilemode get mode => intToGitFilemode(_indexEntryPointer.ref.mode);
|
||||
|
||||
/// Sets the UNIX file attributes of a index entry.
|
||||
set mode(GitFilemode mode) {
|
||||
switch (mode) {
|
||||
case GitFilemode.undreadable:
|
||||
_indexEntryPointer.ref.mode = 0;
|
||||
break;
|
||||
case GitFilemode.tree:
|
||||
_indexEntryPointer.ref.mode = 16384;
|
||||
break;
|
||||
case GitFilemode.blob:
|
||||
_indexEntryPointer.ref.mode = 33188;
|
||||
break;
|
||||
case GitFilemode.blobExecutable:
|
||||
_indexEntryPointer.ref.mode = 33261;
|
||||
break;
|
||||
case GitFilemode.link:
|
||||
_indexEntryPointer.ref.mode = 40960;
|
||||
break;
|
||||
case GitFilemode.commit:
|
||||
_indexEntryPointer.ref.mode = 57344;
|
||||
break;
|
||||
}
|
||||
_indexEntryPointer.ref.mode = gitFilemodeToInt(mode);
|
||||
}
|
||||
|
||||
String _oidToHex(git_oid oid) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue