index.js
function buildDescriptor(node, blueprintKey, descriptor /*, descriptorBuilder*/) {
    if (typeof descriptor.setup === 'function') {
      descriptor.setup(node, blueprintKey);
    }

    if (descriptor.value) {
      defineProperty(node, blueprintKey, descriptor.value);
    } else {
      defineProperty(node, blueprintKey, undefined, function() {
        return descriptor.get.call(this, blueprintKey);
      });
    }
  }
function buildDescriptor(node, blueprintKey, descriptor /*, descriptorBuilder*/) {
    if (typeof descriptor.setup === 'function') {
      descriptor.setup(node, blueprintKey);
    }

    if (descriptor.value) {
      defineProperty(node, blueprintKey, descriptor.value);
    } else {
      defineProperty(node, blueprintKey, undefined, function() {
        return descriptor.get.call(this, blueprintKey);
      });
    }
  }
function buildDescriptor ( node , blueprintKey , descriptor /*, descriptorBuilder*/ ) { if ( typeof descriptor . setup === 'function' ) { descriptor . setup ( node , blueprintKey ) ; } if ( descriptor . value ) { defineProperty ( node , blueprintKey , descriptor . value ) ; } else { defineProperty ( node , blueprintKey , undefined , function ( ) { return descriptor . get . call ( this , blueprintKey ) ; } ) ; } }
Default `Descriptor` builder

@param {TreeNode} node - parent node
@param {String} blueprintKey - key to build
@param {Descriptor} descriptor - descriptor to build
@param {Function} defaultBuilder - default function to build this type of node

@return undefined
Default Descriptor builder