public function getMethods($scope = null, $inherit = false, $static = null)
    {
        $return = $this->methodScopes;

        foreach (array_keys($return) as $key) {
            $validScope = false;
            $validScope = $this->getScopeType($key);

            if ($validScope) {
                $methods = $this->reflectionClass->getMethods($validScope);

                $return = $this->getClassMethods($methods, $inherit, $key, $static, $return);
            }
        }

        return (is_null($scope)) ? $return : $return[$scope];
    }