protected function itemSupportsMethodCall(IsMetInterface $item, $methodName)
    {
        $hash = spl_object_hash($item);

        if (empty($this->methodNamesPerItem)
            || !isset($this->methodNamesPerItem[$hash])) {
            $itemMethods = array_flip(get_class_methods($item));
            $this->methodNamesPerItem[$hash] = $itemMethods;
        }

        return (isset($this->methodNamesPerItem[$hash][$methodName]));
    }