File: //opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyo
�
�M!Vc           @   s�   d  d l  Z  d  d l Z d d l m Z d  d l m Z d d l m Z e  j d � Z d e	 f d �  �  YZ
 d e
 f d	 �  �  YZ d
 e
 f d �  �  YZ d e
 f d
 �  �  YZ
 d e f d �  �  YZ d e f d �  �  YZ d �  Z d S(   i����Ni   (   t   util(   t   compats   (?:(.+?)@)?(\w+)?((?:\+|-)\d+)t
   RevisionErrorc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR      s   t   RangeNotAncestorErrorc           B   s   e  Z d  �  Z RS(   c         C   sB   | |  _  | |  _ t t |  � j d | p- d | p6 d f � d  S(   Ns-   Revision %s is not an ancestor of revision %st   base(   t   lowert   uppert   superR   t   __init__(   t   selfR   R   (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR
      s
    		(   R   R   R
   (    (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR      s   t
   MultipleHeadsc           B   s   e  Z d  �  Z RS(   c         C   s?   | |  _  | |  _ t t |  � j d | d j | � f � d  S(   Ns6   Multiple heads are present for given argument '%s'; %ss   , (   t   headst   argumentR	   R   R
   t   join(   R   R
   R   (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR
      s
    		(   R   R   R
   (    (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR      s   t   ResolutionErrorc           B   s   e  Z d  �  Z RS(   c         C   s#   t  t |  � j | � | |  _ d  S(   N(   R	   R   R
   R   (   R   t   messageR   (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR
   $   s    (   R   R   R
   (    (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR   #   s   t   RevisionMapc           B   sR  e  Z d  Z d �  Z e j d �  � Z e j d �  � Z e j d �  � Z e j d �  � Z	 e j d �  � Z
 d �  Z e d � Z
 d	 �  Z e d
 � Z d d � Z d �  Z d
 �  Z d �  Z d �  Z d d � Z e d � Z e d � Z d �  Z d �  Z e e e d � Z d e e d � Z d e e d � Z e d � Z e e d � Z  RS(   s�   Maintains a map of :class:`.Revision` objects.
    :class:`.RevisionMap` is used by :class:`.ScriptDirectory` to maintain
    and traverse the collection of :class:`.Script` objects, which are
    themselves instances of :class:`.Revision`.
    c         C   s
   | |  _  d S(   s
  Construct a new :class:`.RevisionMap`.
        :param generator: a zero-arg callable that will generate an iterable
         of :class:`.Revision` instances to be used.   These are typically
         :class:`.Script` subclasses within regular Alembic use.
        N(   t
   _generator(   R   t	   generator(    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR
   2   s    c         C   s   |  j  |  j S(   s�   All "head" revisions as strings.
        This is normally a tuple of length one,
        unless unmerged branches are present.
        :return: a tuple of string revision numbers.
        (   t
   _revision_mapR
   (   R   (    (    sH   /opt/alt/python27/lib/python2.7/site-packages/alembic/script/revision.pyR
   <