code: private static function getMethodDefaultArgs($methodName)
      {
          $defaultArgs = array();
          if (isset(self::$methodDefaultArgs[$methodName])) {
              $defaultArgs = self::$methodDefaultArgs[$methodName];
          } elseif (\method_exists(self::$instance, $methodName)) {
              $reflectionMethod = new ReflectionMethod(self::$instance, $methodName);
              $params = $reflectionMethod->getParameters();
              foreach ($params as $reflectionParameter) {
                  $defaultArgs[] = $reflectionParameter->isOptional()
                      ? $reflectionParameter->getDefaultValue()
                      : null;
              }
              self::$methodDefaultArgs[$methodName] = $defaultArgs;
          }
          return $defaultArgs;
      }
docs: Get Method's default argument list
  
  @param string $methodName Name of the method
  
  @return array