simplify parenting logic
This commit is contained in:
parent
dec487298e
commit
e94e89be85
|
@ -58,8 +58,7 @@ class OscCommentMacroListener(CommentMacroListener):
|
|||
self.osc = HogDevice(servers)
|
||||
|
||||
def exitDevice(self, ctx: CommentMacroParser.DeviceContext):
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.MacroContext):
|
||||
ctx.parentCtx.device = ctx
|
||||
ctx.parentCtx.device = ctx
|
||||
|
||||
def enterMacro(self, ctx: CommentMacroParser.MacroContext):
|
||||
ctx.device = None
|
||||
|
@ -88,30 +87,25 @@ class OscCommentMacroListener(CommentMacroListener):
|
|||
ctx.targets = []
|
||||
|
||||
def exitMaster(self, ctx: CommentMacroParser.MasterContext):
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.MacroContext):
|
||||
ctx.parentCtx.master = ctx
|
||||
ctx.parentCtx.master = ctx
|
||||
|
||||
def exitNumber(self, ctx: CommentMacroParser.NumberContext):
|
||||
ctx.value = num(ctx.getText())
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.TargetContext):
|
||||
ctx.parentCtx.targets.append(ctx.value)
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.MacroContext):
|
||||
ctx.parentCtx.number = ctx
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.DeviceContext):
|
||||
else:
|
||||
ctx.parentCtx.number = ctx
|
||||
|
||||
def exitSpan(self, ctx: CommentMacroParser.SpanContext):
|
||||
number1 = ctx.children[0].value
|
||||
number2 = ctx.children[2].value
|
||||
if (isinstance(number1, int) and isinstance(number2, int)):
|
||||
if isinstance(ctx.parentCtx, CommentMacroParser.TargetContext):
|
||||
minimum = min(number1, number2)
|
||||
maximum = max(number1, number2)
|
||||
for i in (range(minimum, maximum + 1)):
|
||||
ctx.parentCtx.targets.append(i)
|
||||
minimum = min(number1, number2)
|
||||
maximum = max(number1, number2)
|
||||
for i in (range(minimum, maximum + 1)):
|
||||
ctx.parentCtx.targets.append(i)
|
||||
else:
|
||||
logger.error("ERROR: Spans must be ranged with intigers.")
|
||||
ctx.parentCtx.targets.append(-1)
|
||||
|
||||
def enterTarget(self, ctx: CommentMacroParser.TargetContext):
|
||||
ctx.targets = []
|
||||
|
|
Loading…
Reference in New Issue