Source code for dhtmlparser.specialdict

#! /usr/bin/env python
# -*- coding: utf-8 -*-
#
# Interpreter version: python 2.7
#
# Imports =====================================================================


# Functions & objects =========================================================
[docs]class SpecialDict(dict): """ This dictionary stores items case sensitive, but compare them case INsensitive. """ def __contains__(self, key): keys = super(SpecialDict, self).keys() return key.lower() in set(map(lambda x: x.lower(), keys)) def __getitem__(self, key): key = key.lower() for item in self.keys(): if key == item.lower(): return super(SpecialDict, self).__getitem__(item) raise KeyError("Can't find key '%s'!" % key)