code: def evaluate(self, path):
          
          result = False
          cause = None
  
          for f in self.filters:
  
              cause, result = f.evaluate(path)
              if not result:
                  break
  
          return cause, result
docs: This method evaluates attributes of the path.
  
          Returns the cause and result of matching.
          Both cause and result are returned from filters
          that this object contains.
  
          ``path`` specifies the path.