def match(self, keys, partial=True):
if not partial and len(keys) != self.length:<EOL><INDENT>return False<EOL><DEDENT>c = <NUM_LIT:0><EOL>for k in keys:<EOL><INDENT>if c >= self.length:<EOL><INDENT>return False<EOL><DEDENT>a = self.keys[c]<EOL>if a != "<STR_LIT:*>" and k != "<STR_LIT:*>" and k != a:<EOL><INDENT>return False<EOL><DEDENT>c += <NUM_LIT:1><EOL><DEDENT>return True<EOL>
Check if the value of this namespace is matched by
keys

'*' is treated as wildcard

Arguments:

keys -- list of keys

Examples:

    ns = Namespace("a.b.c")
    ns.match(["a"]) #True
    ns.match(["a","b"]) #True
    ns.match(["a","b","c"]) #True
    ns.match(["a","*","c"]) #True
    ns.match(["b","b","c"]) #False