nl_tokens: ### _set Handles setting nested properties by finding the nested observable and recursively calling _set on it . Eventually it calls __set with the __type converted value to set and the current value . The current value is passed for two reasons : - so __set can trigger an event if the value has changed . - for advanced setting behavior that define . set can do . If the map is initializing the current value does not need to be read because no change events are dispatched anyway .
pl_tokens: function ( attr , value , keepKey ) { attr = attr + "" ; var dotIndex = attr . indexOf ( '.' ) , current ; if ( dotIndex >= 0 && ! keepKey ) { var first = attr . substr ( 0 , dotIndex ) , second = attr . substr ( dotIndex + 1 ) ; current = this [ inSetupSymbol ] ? undefined : this . ___get ( first ) ; if ( canReflect . isMapLike ( <mask> ) ) { canReflect . setKeyValue ( current , second , value ) ; } else { current = this [ inSetupSymbol ] ? undefined : this . ___get ( attr ) ; // //Convert if there is a converter.  Remove in 3.0. if ( this . __convert ) { value = this . __convert ( attr , value ) ; } this . __set ( attr , this . __type ( value , attr ) , current ) ; } } else { current = this [ inSetupSymbol ] ? undefined : this . ___get ( attr ) ; // //Convert if there is a converter.  Remove in 3.0. if ( this . __convert ) { value = this . __convert ( attr , value ) ; } this . __set ( attr , this . __type ( value , attr ) , current ) ; } }