Add Context.enter_item function for processing marked iterable items
This commit is contained in:
parent
02c913f315
commit
891a9cbaa5
|
@ -58,3 +58,6 @@ class Context(tuple):
|
||||||
|
|
||||||
def enter_key(self, value, key):
|
def enter_key(self, value, key):
|
||||||
return self + ((value.keydict[key], value[key]),)
|
return self + ((value.keydict[key], value[key]),)
|
||||||
|
|
||||||
|
def enter_item(self, name, item):
|
||||||
|
return self + ((MarkedUnicode(name, item.mark), item),)
|
||||||
|
|
|
@ -8,7 +8,6 @@ from copy import copy
|
||||||
|
|
||||||
from powerline.lib.unicode import unicode
|
from powerline.lib.unicode import unicode
|
||||||
from powerline.lint.markedjson.error import echoerr, DelayedEchoErr
|
from powerline.lint.markedjson.error import echoerr, DelayedEchoErr
|
||||||
from powerline.lint.markedjson.markedvalue import MarkedUnicode
|
|
||||||
from powerline.lint.selfcheck import havemarks
|
from powerline.lint.selfcheck import havemarks
|
||||||
from powerline.lint.context import list_sep
|
from powerline.lint.context import list_sep
|
||||||
|
|
||||||
|
@ -108,7 +107,7 @@ class Spec(object):
|
||||||
item,
|
item,
|
||||||
value.mark,
|
value.mark,
|
||||||
data,
|
data,
|
||||||
context + ((MarkedUnicode('list item ' + unicode(i), item.mark), item),),
|
context.enter_item('list item ' + unicode(i), item),
|
||||||
echoerr
|
echoerr
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
|
@ -149,7 +148,7 @@ class Spec(object):
|
||||||
item,
|
item,
|
||||||
value.mark,
|
value.mark,
|
||||||
data,
|
data,
|
||||||
context + ((MarkedUnicode('tuple item ' + unicode(i), item.mark), item),),
|
context.enter_item('tuple item ' + unicode(i), item),
|
||||||
echoerr
|
echoerr
|
||||||
)
|
)
|
||||||
if ihadproblem:
|
if ihadproblem:
|
||||||
|
|
Loading…
Reference in New Issue