def __eq__(self, other):
    if (len(self.type) != len(other.type)):
        return False
    for (index, type) in enumerate(self.type):
        if (('*' == type) or ('&' == type) or ('const' == type) or ('volatile' == type)):
            if (type != other.type[index]):
                return False
        elif ((type != other.type[index]) and (type not in map((lambda ext: (other.type[index] + ext)), EXTENSION_POSTFIXES_STANDARD)) and (other.type[index] not in map((lambda ext: (type + ext)), EXTENSION_POSTFIXES_STANDARD))):
            return False
    return (self.arraySize == other.arraySize)
def __eq__(self, other):
    if (len(self.type) != len(other.type)):
        return False
    for (index, type) in enumerate(self.type):
        if (('*' == type) or ('&' == type) or ('const' == type) or ('volatile' == type)):
            if (type != other.type[index]):
                return False
        elif ((type != other.type[index]) and (type not in map((lambda ext: (other.type[index] + ext)), EXTENSION_POSTFIXES_STANDARD)) and (other.type[index] not in map((lambda ext: (type + ext)), EXTENSION_POSTFIXES_STANDARD))):
            return False
    return (self.arraySize == other.arraySize)