cleanup
This commit is contained in:
parent
84916448a9
commit
82e95d82d1
@ -54,16 +54,18 @@ class ShellLexer:
|
|||||||
log.shlexer.vdebug("in state {!r} I see character: {!r}".format(
|
log.shlexer.vdebug("in state {!r} I see character: {!r}".format(
|
||||||
self.state, nextchar))
|
self.state, nextchar))
|
||||||
if self.state is None:
|
if self.state is None:
|
||||||
self.token = None # past end of file
|
# past end of file
|
||||||
|
self.token = None
|
||||||
break
|
break
|
||||||
elif self.state == ' ':
|
elif self.state == ' ':
|
||||||
if nextchar is None:
|
if nextchar is None:
|
||||||
self.state = None # end of file
|
self.state = None
|
||||||
break
|
break
|
||||||
elif nextchar in self.whitespace:
|
elif nextchar in self.whitespace:
|
||||||
log.shlexer.vdebug("I see whitespace in whitespace state")
|
log.shlexer.vdebug("I see whitespace in whitespace state")
|
||||||
if self.token or quoted:
|
if self.token or quoted:
|
||||||
break # emit current token
|
# emit current token
|
||||||
|
break
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
elif nextchar in self.escape:
|
elif nextchar in self.escape:
|
||||||
@ -76,7 +78,7 @@ class ShellLexer:
|
|||||||
self.state = 'a'
|
self.state = 'a'
|
||||||
elif self.state in self.quotes:
|
elif self.state in self.quotes:
|
||||||
quoted = True
|
quoted = True
|
||||||
if nextchar is None: # end of file
|
if nextchar is None:
|
||||||
log.shlexer.vdebug("I see EOF in quotes state")
|
log.shlexer.vdebug("I see EOF in quotes state")
|
||||||
self.state = None
|
self.state = None
|
||||||
break
|
break
|
||||||
@ -87,9 +89,9 @@ class ShellLexer:
|
|||||||
escapedstate = self.state
|
escapedstate = self.state
|
||||||
self.state = nextchar
|
self.state = nextchar
|
||||||
else:
|
else:
|
||||||
self.token = self.token + nextchar
|
self.token += nextchar
|
||||||
elif self.state in self.escape:
|
elif self.state in self.escape:
|
||||||
if nextchar is None: # end of file
|
if nextchar is None:
|
||||||
log.shlexer.vdebug("I see EOF in escape state")
|
log.shlexer.vdebug("I see EOF in escape state")
|
||||||
self.token += self.state
|
self.token += self.state
|
||||||
self.state = None
|
self.state = None
|
||||||
@ -98,12 +100,12 @@ class ShellLexer:
|
|||||||
# character may be escaped within quotes.
|
# character may be escaped within quotes.
|
||||||
if (escapedstate in self.quotes and nextchar != self.state and
|
if (escapedstate in self.quotes and nextchar != self.state and
|
||||||
nextchar != escapedstate):
|
nextchar != escapedstate):
|
||||||
self.token = self.token + self.state
|
self.token += self.state
|
||||||
self.token = self.token + nextchar
|
self.token += nextchar
|
||||||
self.state = escapedstate
|
self.state = escapedstate
|
||||||
elif self.state == 'a':
|
elif self.state == 'a':
|
||||||
if nextchar is None:
|
if nextchar is None:
|
||||||
self.state = None # end of file
|
self.state = None
|
||||||
break
|
break
|
||||||
elif nextchar in self.whitespace:
|
elif nextchar in self.whitespace:
|
||||||
log.shlexer.vdebug("shlex: I see whitespace in word state")
|
log.shlexer.vdebug("shlex: I see whitespace in word state")
|
||||||
@ -118,7 +120,7 @@ class ShellLexer:
|
|||||||
escapedstate = 'a'
|
escapedstate = 'a'
|
||||||
self.state = nextchar
|
self.state = nextchar
|
||||||
else:
|
else:
|
||||||
self.token = self.token + nextchar
|
self.token += nextchar
|
||||||
result = self.token
|
result = self.token
|
||||||
self.token = ''
|
self.token = ''
|
||||||
if not quoted and result == '':
|
if not quoted and result == '':
|
||||||
|
Loading…
Reference in New Issue
Block a user