def remove_declaration(self, decl):
access_type = self.find_out_member_access_type(decl)<EOL>if access_type == ACCESS_TYPES.PUBLIC:<EOL><INDENT>container = self.public_members<EOL><DEDENT>elif access_type == ACCESS_TYPES.PROTECTED:<EOL><INDENT>container = self.protected_members<EOL><DEDENT>else:  <EOL><INDENT>container = self.private_members<EOL><DEDENT>del container[container.index(decl)]<EOL>decl.cache.reset()<EOL>
removes decl from  members list

:param decl: declaration to be removed
:type decl: :class:`declaration_t`