lib/packages/core-classes.js
function() {

		var property_container = this._value_container.getValue(),
			value = null,
			is_connected = false;

		if (property_container != null) {

			// Collection implements Properties, so if _property_name is not a number - then `get` will be called
			if (property_container.isCollection && /^\d+$/.test(this._property_name)) {

				if (this._enumerable_changed_listener == null) {

					this._enumerable_changed_listener = property_container.on('collection_changed', this.onValueChanged, this);
					this._property_container = property_container;

				}

				value = property_container.getValueAt(+this._property_name);

			} else if (property_container.isProperties) {

				if (this._property_changed_listener == null) {

					this._property_changed_listener = property_container.onPropertyChanged(this._property_name, this.onValueChanged, this);
					this._property_container = property_container;

				}

				value = property_container.get(this._property_name);

			} else {

				value = property_container[this._property_name];

			}

			is_connected = true;

		}

		if (value !== this._value || this._is_connected != is_connected) {

			this._value = value;
			this._is_connected = is_connected;

			this._fire('changed');

		}

	}
function() {

		var property_container = this._value_container.getValue(),
			value = null,
			is_connected = false;

		if (property_container != null) {

			// Collection implements Properties, so if _property_name is not a number - then `get` will be called
			if (property_container.isCollection && /^\d+$/.test(this._property_name)) {

				if (this._enumerable_changed_listener == null) {

					this._enumerable_changed_listener = property_container.on('collection_changed', this.onValueChanged, this);
					this._property_container = property_container;

				}

				value = property_container.getValueAt(+this._property_name);

			} else if (property_container.isProperties) {

				if (this._property_changed_listener == null) {

					this._property_changed_listener = property_container.onPropertyChanged(this._property_name, this.onValueChanged, this);
					this._property_container = property_container;

				}

				value = property_container.get(this._property_name);

			} else {

				value = property_container[this._property_name];

			}

			is_connected = true;

		}

		if (value !== this._value || this._is_connected != is_connected) {

			this._value = value;
			this._is_connected = is_connected;

			this._fire('changed');

		}

	}
function ( ) { var property_container = this . _value_container . getValue ( ) , value = null , is_connected = false ; if ( property_container != null ) { // Collection implements Properties, so if _property_name is not a number - then `get` will be called if ( property_container . isCollection && / ^\d+$ / . test ( this . _property_name ) ) { if ( this . _enumerable_changed_listener == null ) { this . _enumerable_changed_listener = property_container . on ( 'collection_changed' , this . onValueChanged , this ) ; this . _property_container = property_container ; } value = property_container . getValueAt ( + this . _property_name ) ; } else if ( property_container . isProperties ) { if ( this . _property_changed_listener == null ) { this . _property_changed_listener = property_container . onPropertyChanged ( this . _property_name , this . onValueChanged , this ) ; this . _property_container = property_container ; } value = property_container . get ( this . _property_name ) ; } else { value = property_container [ this . _property_name ] ; } is_connected = true ; } if ( value !== this . _value || this . _is_connected != is_connected ) { this . _value = value ; this . _is_connected = is_connected ; this . _fire ( 'changed' ) ; } }
Get `_property_container` from `_value_container`, and get `_property_name` from `_property_container`
Get _property_container from _value_container and get _property_name from _property_container