diff --git a/source/FingerBoard-Core/FBParallelActivation.class.st b/source/FingerBoard-Core/FBParallelActivation.class.st index 84283a7..538567f 100644 --- a/source/FingerBoard-Core/FBParallelActivation.class.st +++ b/source/FingerBoard-Core/FBParallelActivation.class.st @@ -3,7 +3,8 @@ Class { #superclass : #FBBaseActivation, #instVars : [ 'values', - 'arguments' + 'arguments', + 'metadata' ], #category : #'FingerBoard-Core-Model' } @@ -24,9 +25,40 @@ FBParallelActivation >> arguments [ ] { #category : #initialization } -FBParallelActivation >> initializeValues: anInteger [ +FBParallelActivation >> initializeValues: anInteger [ + arguments := Array new: anInteger. - values := Array new: anInteger + values := Array new: anInteger. + metadata := Array new: anInteger. +] + +{ #category : #'as yet unclassified' } +FBParallelActivation >> metadataAt: key ifAbsent: aBlock [ + + ^ (self metadataAtIndex: executor index) at: key + ifAbsent: aBlock +] + +{ #category : #'as yet unclassified' } +FBParallelActivation >> metadataAt: key put: anObject [ + + (self metadataAtIndex: executor index) at: key + put: anObject +] + +{ #category : #'as yet unclassified' } +FBParallelActivation >> metadataAtIndex: index [ + + ^ (metadata at: index) ifNil: [ + metadata at: index put: (FBActivationMetadata new + schema: self metadataSchema; + activation: self; + yourself) ] +] + +{ #category : #initialization } +FBParallelActivation >> metadataSchema [ + ^ node metadataSchema ] { #category : #printing }