public function matchObjects(DataList $objects, $data)
    {
        // Detect Filter:
        
        $name = $this->getMatchOnName();
        
        if (isset($data[$name])) {
            
            $filter  = [];
            $matchOn = $data[$name];
            
            if (is_array($matchOn)) {
                
                // Handle Array Filter:
                
                if (ArrayLib::is_associative($matchOn)) {
                    
                    $filter = $matchOn;
                    
                } else {
                    
                    foreach ($matchOn as $field) {
                        
                        if (isset($data[$field])) {
                            $filter[$field] = $data[$field];
                        }
                        
                    }
                    
                }
                
            } elseif (isset($data[$matchOn])) {
                
                // Handle String Filter:
                
                $filter[$matchOn] = $data[$matchOn];
                
            }
            
            foreach ($filter as $k => $v) {
                $filter[$k] = $this->processValue($v);
            }
            
            return $objects->filter($filter);
            
        }
        
        return $objects;
    }