diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0d1a485..1a8d763 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: false matrix: - pharoversion: [ Pharo64-12, Pharo64-11, Pharo64-10 ] + pharoversion: [ Pharo64-alpha, Pharo64-13, Pharo64-12, Pharo64-11, Pharo64-10 ] name: ${{ matrix.pharoversion }} runs-on: ubuntu-latest steps: diff --git a/repository/Mustache-Core/Object.extension.st b/repository/Mustache-Core/Object.extension.st index 5dfd884..51c984c 100644 --- a/repository/Mustache-Core/Object.extension.st +++ b/repository/Mustache-Core/Object.extension.st @@ -1,7 +1,8 @@ Extension { #name : 'Object' } { #category : '*mustache-core' } -Object >> mustacheDefaultWhenLookupFails [ +Object >> mustacheDefaultWhenLookupFails: failingPartString [ + ^ nil ] @@ -17,10 +18,14 @@ Object >> mustacheDo: aBlock inverted: aBoolean [ { #category : '*mustache-core' } Object >> mustacheLookup: aString [ + "The lookup supports navigation between objects using messages expressed by $. + + For example {{{ site.configuration }}} means that the template accesses the value returned by the message configuration sent to the result of the message site." + (aString = '.') ifTrue: [ ^ self ]. - ^ [ self perform: aString asSymbol ] - on: MessageNotUnderstood - do: [ :err | self mustacheLookupComplex: aString ] + ^ (self respondsTo: aString asSymbol) + ifTrue: [ self perform: aString asSymbol ] + ifFalse: [ self mustacheLookupComplex: aString ] ] { #category : '*mustache-core' }