MiniDocs/src/MiniDocs/OrderedDictionary.extension.st

44 lines
1.4 KiB
Smalltalk

Extension { #name : #OrderedDictionary }
{ #category : #'*MiniDocs' }
OrderedDictionary >> addErrata: noteString [
self errata add: noteString
]
{ #category : #'*MiniDocs' }
OrderedDictionary >> asLepiterSnippet [
| response |
self at: 'className' ifAbsent: [ ^ nil ].
(self at: 'className') = 'LeTextSnippet'
ifTrue: [
response := LeTextSnippet new.
response string: (self at: 'content')
].
(self at: 'className') = 'LePharoSnippet'
ifTrue: [
response := LePharoSnippet new.
response code: (self at: 'content')
].
response
uid: (LeUID new uidString: (self at: 'id'));
parent: (self at: 'parent');
createTime: (LeTime new time: ((self at: 'created')asDateAndTime));
editTime: (LeTime new time: ((self at: 'modified') asDateAndTime));
editEmail: (self at: 'modifier');
createEmail: (self at: 'creator').
response metadata at: 'origin' ifPresent: [ response metadata at: 'origin' put: (self at: 'origin') ].
response metadata at: 'errata' ifPresent: [ response metadata at: 'errata' put: (self at: 'errata') ].
^ response
]
{ #category : #'*MiniDocs' }
OrderedDictionary >> errata [
^ self at: 'errata' ifAbsentPut: [ OrderedCollection new]
]
{ #category : #'*MiniDocs' }
OrderedDictionary >> redefineTimestampsBefore: dateAndTime [
self at: 'modified' put: dateAndTime asDateAndTime.
self at: 'created' put: dateAndTime asDateAndTime - 1 second.
]