�
�ZYc�����������@`�s.��d��d�l��m�Z�d��d�l��m�Z�d��d�l��m�Z�d��d�l��m�Z�d��d�l�Z�d��d�l�Z�d��d�l�Z�d�d�l�m	�Z	�e
�d���\�Z�Z�Z
�d	�e�f�d
�������YZ�d�e�f�d�������YZ�d�d�d
���Z�d�d�d�d�d���Z�d�d�d���Z�d�d�d���Z�d����Z�d�d�d�d�d���Z�d�d�d�d�d���Z�d�S(���i����(���t���absolute_import(���t���division(���t���print_function(���t���unicode_literalsNi���(���t���utilsi���t���Positionc�����������B`�s����e��Z�d��Z�d�Z�d�d�d�d���Z�d����Z�d����Z�d����Z�d����Z	�d	����Z
�d
����Z�d����Z�d����Z
�d
����Z�d����Z�RS(���uU���
    Represents a position in the source file which we
    want to inform about.
    u���filenameu���lineu���columnc���������C`�s���|�|��_��|�|��_�|�|��_�d��S(���N(���t���filenamet���linet���column(���t���selfR���R���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__init__/���s����		c���������C`�s1���|�|��j��|��j�|��j�f�|�j��|�j�|�j�f���S(���N(���R���R���R���(���R	���t���othert���op(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���_compare4���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���t���operatort���lt(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__lt__8���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���R���t���gt(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__gt__;���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���R���t���ge(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__ge__>���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���R���t���le(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__le__A���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���R���t���eq(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__eq__D���s����c���������C`�s���|��j��|�t�j���S(���N(���R
���R���t���ne(���R	���R���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__ne__G���s����c���������C`�s���t��|��j�|��j�|��j�f���S(���N(���t���hashR���R���R���(���R	���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__hash__J���s����c���������C`�s2���d�t��j�j�|��j���|��j�p!�d�|��j�p-�d�f�S(���Nu���<Position %s:%d:%d>i����(���t���ost���patht���basenameR���R���R���(���R	���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���__repr__M���s����c���������C`�s����t��j�j�|��j���}�t��j�j�|���}�t��j�j�|�|�f���}�|�r]�t��j�j�|�|���}�n��|��j�d��k	�r��d�|�|��j�|��j�f�S|��j�d��k	�r��d�|�|��j�f�Sd�|�f�Sd��S(���Nu���%s:%d:%du���%s:%du���%s:(	���R���R���t���realpathR���t���commonprefixt���relpathR���t���NoneR���(���R	���t���cwdR���t
���common_prefix(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���formatR���s����(���u���filenameu���lineu���columnN(���t���__name__t
���__module__t���__doc__t	���__slots__R$���R
���R
���R���R���R���R���R���R���R���R ���R'���(����(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyR���'���s���									t
���MessageLoggerc�����������B`�st���e��Z�d�Z�d�d�d����Z�e�d������Z�d����Z�d����Z�d����Z	�d�d�d�d�d���Z
�d�d�d���Z�d����Z�RS(	���c���������C`�sX���|�d��k�r�t�j�}�n��t�j����|��_�|�|��_�|�|��_�g��|��_�d�|��_	�d�|��_
�d��S(���Ni����(���R$���t���syst���stderrR���t���getcwdt���_cwdt���_outputt
���_namespacet���_enable_warningst���_warning_countt���_error_count(���R	���t	���namespacet���output(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyR
���d���s����				c���������O`�s+���|��j��d��k�r$�|��|�|����|��_��n��|��j��S(���N(���t	���_instanceR$���(���t���clst���argst���kwargs(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���getn���s����c���������C`�s
���|�|��_��d��S(���N(���R3���(���R	���t	���log_types(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���enable_warningst���s����c���������C`�s���|��j��S(���N(���R4���(���R	���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���get_warning_countw���s����c���������C`�s���|��j��S(���N(���R5���(���R	���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���get_error_countz���s����c���
������C`�s��t��j�d���|��j�d�7_�|�|��j�k�r/�d�St�|���t�k�rP�t�|���}�n��t�|�t���rk�|�g�}�n��|�s��t�d���g�}�n��x8�|�d� D],�}�|��j	�j
�d�|�j�d�|��j���f���q��W|�d�j�d�|��j���}�|�t
�k�r��d�}	�n9�|�t�k�rd	�}	�|��j�d�7_�n�|�t�k�r%d
�}	�n��|�d�k	�r[|�d�k	�r[d�|�|�d�|�d
�f�}�n��|�r�|��j�r�d�|�|	�|��j�j�|�|�f�}�q�d�|�|	�|�|�f�}�n;�|��j�r�d�|�|	�|��j�j�|�f�}�n�d�|�|	�|�f�}�|��j	�j
�|���|�t�k�rt��j�d���t�|�����n��d�S(���u����
        Log a warning, using optional file positioning information.
        If the warning is related to a ast.Node type, see log_node().
        u���warningi���Nu	���<unknown>i����u���%s:
R%���u���Warningu���Erroru���Fatalu���%s
%s
%su��� u���^u���%s: %s: %s: %s: %s
u���%s: %s: %s: %s
u���%s: %s: %s
u���fatal(���R���t���break_on_debug_flagR4���R3���t���typet���sett���listt
���isinstanceR���R1���t���writeR'���R0���t���WARNINGt���ERRORR5���t���FATALR$���R2���t���namet
���SystemExit(
���R	���t���log_typet���textt	���positionst���prefixt
���marker_post���marker_linet���positiont
���last_positiont
���error_type(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���log}���sH����
*							
c���������C`�s����|�r	�nB�t��|�d�d���r'�|�j�}�n$�|�rB�|�j�rB�|�j�}�n	�t����}�|�rs�d�t��|�d�|�j���|�f�}�n5�|�r��t�|�d���r��d�|�j�j�|�j�|�f�}�n��|��j�|�|�|���d�S(���uR��
        Log a warning, using information about file positions from
        the given node.  The optional context argument, if given, should be
        another ast.Node type which will also be displayed.  If no file position
        information is available from the node, the position data from the
        context will be used.
        u���file_positionsu���%s: %su���symbolu���nameu
���(%s)%s: %sN(	���t���getattrR$���t���file_positionsRC���RJ���t���hasattrt	���__class__R(���RU���(���R	���RL���t���nodeRM���t���contextRN���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���log_node����s����	"c���������C`�s*���|��j��|�|�|�j�d�d�|�j�f��d�S(���u1���Log a warning in the context of the given symbol.RO���u���symbol='%s'N(���RU���RR���t���ident(���R	���RL���t���symbolRM���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt
���log_symbol����s����N(
���R(���R)���R$���R8���R
���t���classmethodR<���R>���R?���R@���RU���R\���R_���(����(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyR,���a���s���
			7c���������C`�s/���t��j����}�|�j�|��|�|�d�|�d�|��d��S(���NR[���RN���(���R,���R<���R\���(���RL���RZ���RM���R[���RN���t���ml(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyR\�������s����c���������C`�s,���t��j����}�|�j�t�|��|�|�|�|���d��S(���N(���R,���R<���RU���RG���(���RM���RN���RO���RP���RQ���Ra���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���warn����s����c���������C`�s ���t��t�|��|�d�|�d�|��d��S(���NR[���RN���(���R\���RG���(���RZ���RM���R[���RN���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt	���warn_node����s����c���������C`�s ���t��t�|��|�d�|�d�|��d��S(���NR[���RN���(���R\���RH���(���RZ���RM���R[���RN���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt
���error_node����s����c���������C`�s#���t��j����}�|�j�t�|��|���d��S(���N(���R,���R<���R_���RG���(���R^���RM���Ra���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���warn_symbol����s����c���������C`�s,���t��j����}�|�j�t�|��|�|�|�|���d��S(���N(���R,���R<���RU���RH���(���RM���RN���RO���RP���RQ���Ra���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���error����s����c���������C`�s,���t��j����}�|�j�t�|��|�|�|�|���d��S(���N(���R,���R<���RU���RI���(���RM���RN���RO���RP���RQ���Ra���(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���fatal����s����(���t
���__future__R����R���R���R���R���R-���R���t����R���t���rangeRG���RH���RI���t���objectR���R,���R$���R\���Rb���Rc���Rd���Re���Rf���Rg���(����(����(����sq���/home/vagrant/ruby-gnome2.win64/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/message.pyt���<module>���s"���:q