Aic @ s d Z d d l Z d d l Z d d l m Z y d d l m Z Wn! e k re d d l m Z n Xd d g Z d d d YZ e e d Z e d k re e j d k r e Z n" e j d Z e e e e Z x+ e j Z e r d e e GHq Pq n d S( s8 A lexical analyzer class for simple shell-like syntaxes.iN( t deque( t StringIOt shlext splitc B sz e Z d Z d d e d Z d Z d d Z d Z d Z d Z d Z d d d Z d Z d Z RS( s8 A lexical analyzer class for simple shell-like syntaxes.c C s< t | t r t | } n | d k r? | | _ | | _ n t j | _ d | _ | | _ | ro d | _ n d | _ d | _ d | _ | j r | j d 7_ n d | _ t | _ d | _ d | _ d | _ d | _ t | _ d | _ d | _ d | _ t | _ d | _ | j r8d | j | j f GHn d S( Nt t #t? abcdfeghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_s> s s '"s \t "t i i s shlex: reading from %s, line %d( t isinstancet basestringR t Nonet instreamt infilet syst stdint posixt eoft commenterst wordcharst whitespacet Falset whitespace_splitt quotest escapet escapedquotest stateR t pushbackt linenot debugt tokent filestackt source( t selfR R R ( ( s /usr/lib64/python2.7/shlex.pyt __init__ s<