%PDF- %PDF-
Direktori : /opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/ext/declarative/ |
Current File : //opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/ext/declarative/clsregistry.pyo |
� ��4]c @ sm d Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z e � Z d � Z d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ e j e � d � � d e f d � � YZ d � Z d e f d � � YZ d � Z d � Z d S( s� Routines to handle the string class registry used by declarative. This system allows specification of classes and expressions used in :func:`.relationship` using strings. i����Ni ( t exc( t inspection( t util( t class_mapper( t interfaces( t ColumnProperty( t RelationshipProperty( t SynonymProperty( t _get_table_keyc C s | | j k rN | j | } t | t � s[ t | | g � } | j | <q[ n | | j | <y | j d } Wn+ t k r� t d d � | j d <} n X| j j d � } xX | r| j d � } | j | � } x | D] } | j | � } q� W| j | | � q� Wd S( s^ Add a class to the _decl_class_registry associated with the given declarative class. t _sa_module_registryt .i N( t _decl_class_registryt isinstancet _MultipleClassMarkert KeyErrort _ModuleMarkert Nonet __module__t splitt popt get_modulet add_class( t classnamet clst existingt root_modulet tokenst tokent module( ( sY /opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/ext/declarative/clsregistry.pyR ! s # R c B sD e Z d Z d Z d d � Z d � Z d � Z d � Z d � Z RS( sR refers to multiple classes of the same name within _decl_class_registry. t on_removet contentst __weakref__c C sK | | _ t g | D] } t j | | j � ^ q � | _ t j | � d S( N( R t sett weakreft reft _remove_itemR t _registriest add( t selft classesR t item( ( sY /opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/ext/declarative/clsregistry.pyt __init__Q s .c C s d � | j D� S( Nc s s | ] } | � Vq d S( N( ( t .0R"