Beispiel #1
0
def veval_ast_str(astc: 'AstContext', local_field: 'values.Field',
                  graph: 'Graph'):
    '''
    Ex. "str"
    '''
    assert (isinstance(astc.nast, gast.gast.Str))
    lineprop = utils.LineProperty(astc.lineno)
    value = values.StrValue(astc.nast.s)
    ret = values.Object(value)

    name = utils.create_obj_value_name_with_constant(
        ret.get_value().internal_value)
    ret.name = name
    ret.get_value().name = name
    return ret
Beispiel #2
0
def veval_ast_name_constant(astc: 'AstContext', local_field: 'values.Field',
                            graph: 'Graph'):
    '''
    Ex. True
    '''
    assert (isinstance(astc.nast, gast.gast.NameConstant))
    lineprop = utils.LineProperty(astc.lineno)
    ret = None
    if astc.nast.value == True:
        ret = values.Object(values.BoolValue(True))
    if astc.nast.value == False:
        ret = values.Object(values.BoolValue(False))
    if astc.nast.value is None:
        ret = values.Object(values.NoneValue())

    name = utils.create_obj_value_name_with_constant(
        ret.get_value().internal_value)
    ret.name = name
    ret.get_value().name = name
    return ret