本文整理汇总了Python中unit.Unit.is_empty方法的典型用法代码示例。如果您正苦于以下问题:Python Unit.is_empty方法的具体用法?Python Unit.is_empty怎么用?Python Unit.is_empty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类unit.Unit
的用法示例。
在下文中一共展示了Unit.is_empty方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: visitPrimary
# 需要导入模块: from unit import Unit [as 别名]
# 或者: from unit.Unit import is_empty [as 别名]
def visitPrimary(self, ctx):
""" それぞれのPrimaryの値をUnitXObjectにラップして,応答する.
Identifier: variable or function
literal: number, string, boolean, none
PAREN=(): expression
BRACK=[]: list
"""
unit = Unit()
if ctx.unit(): unit = self.visitUnit(ctx.unit())
if ctx.Identifier():
# Here
varname = ctx.Identifier().getText()
unitx_obj = UnitXObject(value=None, varname=varname, unit=unit)
"""
current_scope = self.get_scopes().peek()
if varname in current_scope:
unitx_obj = current_scope[varname]
if not unit.is_empty():
unitx_obj.unit = unit
else:
unitx_obj = UnitXObject(value=None, varname=varname, unit=unit)
"""
found_scope = self.get_scopes().peek().find_scope_of(varname)
if found_scope:
unitx_obj = found_scope[varname]
if not unit.is_empty():
unitx_obj.unit = unit
else:
unitx_obj = UnitXObject(value=None, varname=varname, unit=unit)
unitx_obj.token = ctx.Identifier().getSymbol()
elif ctx.literal():
unitx_obj = self.visitLiteral(ctx.literal())
unitx_obj.unit = unit
elif ctx.start.type == UnitXLexer.LPAREN:
unitx_obj = self.visitExpression(ctx.expression(i=0))
if not unit.is_empty():
unitx_obj.unit = unit
unitx_obj.token = ctx.start
elif ctx.start.type == UnitXLexer.LBRACK:
unitx_objs = []
for an_expr in ctx.expression():
an_obj = self.visitExpression(an_expr)
if not unit.is_empty():
an_obj.unit = unit
unitx_objs.append(an_obj)
unitx_obj = UnitXObject(value = unitx_objs, varname = None, unit=unit, token=ctx.start)
else:
if not self.is_intaractive_run:
raise Exception("Syntax error. EvalVisitor#visitPrimary") # Never happen.
assert(isinstance(unitx_obj, UnitXObject))
return unitx_obj