code: public static function isMap($value)
      {
          return ($value === array() || (is_array($value) && !self::isList($value)) || $value instanceof \stdClass);
      }
docs: Checks whether the given argument is a map (hash map / assoc array or stdClass)
  
  An empty array is considered both a list and a map.
  
  An empty stdClass is considered a map.
  
  @param mixed $value
  @return bool