# src/decorators/automount.js

    /*
    	Class level decorator that marks a Property subclass as needing to automount when
    	the parent is shadowed. This is useful for implementing mixin properties that provide
    	behavior for the parent property. Using automount will cause the child property to
    	be immediately shadowed and not wait for the app to access it.

    	Example:
    		@automount
    		class PostopSubscriptionMixinProperty extends ObjectProperty {
    			...
    		}
    */
    export default function automount(target) {
    	if (!target.prototype) {
    		throw new SyntaxError("@automount() must be applied to a class.");
    	}

    	target.shouldAutomount = function() { return true }
    }