code: function _queryInterface (interfaceDefinition) {
      /*jshint validthis:true*/ // Called with apply
      var
          array = (new gpf.attributes.Map(this))
              .getMemberAttributes("Class")
              .filter(gpf.attributes.InterfaceImplementAttribute),
          builder;
      if (!array.every(function (attribute) {
          builder = attribute._builder;
          return attribute._interfaceDefinition !== interfaceDefinition || !builder;
      })) {
          if ("function" === typeof builder) {
              return builder(this);
          }
          // Expects a member name
          return this[builder]();
      }
      // Otherwise
      return null;
  }
docs: region InterfaceImplement attribute 
  Retrieves an object supporting the provided interface (maybe the object itself).
  This function (added to any object declaring the attribute InterfaceImplementAttribute with a builder) uses the
  InterfaceImplementAttribute attribute list to see if the one corresponding to the interface provides a builder and
  calls it
  
  @param {gpf.interfaces.Interface} interfaceDefinition The expected interface
  @return {Object|null} The object supporting the interface (or null)
  @this Object