git/GitTree.st
author Claus Gittinger <cg@exept.de>
Sat, 28 Jul 2018 10:08:05 +0200
branchcvs_MAIN
changeset 849 aa8ba960d939
parent 481 0cfef855baa2
permissions -rw-r--r--
#OTHER by cg icon references cleaned up (use ToolbarIconLibrary - not GenericToolbarIconLibrary)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     1
"{ Package: 'stx:libscm/git' }"
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     2
2
9731a2e41428 - More API methods...
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 0
diff changeset
     3
GitObject subclass:#GitTree
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     4
	instanceVariableNames:''
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     5
	classVariableNames:''
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     6
	poolDictionaries:''
28
f6f0a4bbaaee Class category rename (SCM-Git-Model -> SCM-Git-Core)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 20
diff changeset
     7
	category:'SCM-Git-Core'
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     8
!
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     9
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    10
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    11
!GitTree class methodsFor:'accessing'!
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    12
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    13
libraryName
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    14
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    15
    OperatingSystem isUNIXlike ifTrue:[^'libgit2.so'].
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    16
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    17
    OperatingSystem isMSWINDOWSlike ifTrue:[^'git2.dll'].
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    18
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    19
    self error:'Library name for host OS is not known'
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    20
!
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    21
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    22
structSize
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    23
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    24
    ^0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    25
! !
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    26
4
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    27
!GitTree methodsFor:'accessing'!
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    28
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    29
/ name
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    30
    "Returns an tree entry with given name"
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    31
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    32
    self subclassResponsibility
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    33
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    34
    "Created: / 10-09-2012 / 19:04:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
20
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    35
!
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    36
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    37
oid     
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    38
    oid isNil ifTrue:[
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    39
        oid := GitOid fromBytes: (GitPrimitives prim_git_tree_id: handle).
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    40
    ].
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    41
    ^ oid
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    42
24ae01b36807 fixes, test_01a finished & passed on linux
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 10
diff changeset
    43
    "Created: / 30-09-2012 / 10:40:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    44
! !
b52b9cfe9b77 - GitObject
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 2
diff changeset
    45
5
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    46
!GitTree methodsFor:'private-accessing'!
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    47
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    48
getHandleClass
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    49
    ^GitTreeHandle
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    50
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    51
    "Created: / 17-09-2012 / 21:20:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    52
! !
57c20a77e549 - Refactored to use handles
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 4
diff changeset
    53
9
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    54
!GitTree methodsFor:'testing'!
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    55
10
3d98ee6c5c64 - GitStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 9
diff changeset
    56
isGitTree
9
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    57
    ^true
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    58
10
3d98ee6c5c64 - GitStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 9
diff changeset
    59
    "Created: / 19-09-2012 / 13:58:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    60
!
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    61
10
3d98ee6c5c64 - GitStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 9
diff changeset
    62
isGitTreeish
9
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    63
    ^true
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    64
10
3d98ee6c5c64 - GitStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 9
diff changeset
    65
    "Created: / 19-09-2012 / 13:58:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    66
! !
2783c9882d30 - GitSubmoduleUpdateType
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 5
diff changeset
    67
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    68
!GitTree class methodsFor:'documentation'!
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    69
31
d96d7eff6efc - GitDiffDeltaStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 28
diff changeset
    70
version_GIT
d96d7eff6efc - GitDiffDeltaStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 28
diff changeset
    71
    "Never, ever change this method. Ask JV or CG why"
d96d7eff6efc - GitDiffDeltaStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 28
diff changeset
    72
    ^thisContext method mclass theNonMetaclass instVarNamed: #revision
d96d7eff6efc - GitDiffDeltaStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 28
diff changeset
    73
!
d96d7eff6efc - GitDiffDeltaStructure
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 28
diff changeset
    74
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    75
version_SVN
481
0cfef855baa2 Initial import from upstream repository
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    76
    ^ '$Id$'
0
71c763bbb4bc - GitConfig
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    77
! !