Added membership check (*in*) to Schema

This commit is contained in:
Juan Pablo Amoroso
2019-05-31 16:08:57 -03:00
parent 20d45677b6
commit a0eb881d50
+8
View File
@@ -21,6 +21,10 @@ class Schema:
self._mappings.update(mappings)
return self
def __contains__(self, key):
"""Returns True if key is in schema"""
return key in self._mappings.keys()
def __getattr__(self, key):
"""Returns Field object used to build Filters"""
return Field(key, self._mappings[key])
@@ -43,6 +47,8 @@ class Schema:
class Field:
"""Encapsulates data fields to build filters used by strategies"""
__slots__ = ("name", "mapping")
def __init__(self, name, mapping):
self.name = name
self.mapping = mapping
@@ -80,6 +86,8 @@ class Field:
class Filter:
"""This class determines entry/exit conditions for strategies"""
__slots__ = ("query")
def __init__(self, query):
self.query = query