parameters: (file_contents)
return_statement: return CheckNode(c2.value, [])
docstring: Return the eval of a gyp file.
    The gyp file is restricted to dictionaries and lists only, and
    repeated keys are not allowed.
    Note that this is slower than eval() is.
docstring_summary: Return the eval of a gyp file.
    The gyp file is restricted to dictionaries and lists only, and
    repeated keys are not allowed.
    Note that this is slower than eval() is.
docstring_tokens: Return the eval of a gyp file . The gyp file is restricted to dictionaries and lists only and repeated keys are not allowed . Note that this is slower than eval () is .
function: def CheckedEval(file_contents):
    """Return the eval of a gyp file.
    The gyp file is restricted to dictionaries and lists only, and
    repeated keys are not allowed.
    Note that this is slower than eval() is.
    """
  
    syntax_tree = ast.parse(file_contents)
    assert isinstance(syntax_tree, ast.Module)
    c1 = syntax_tree.body
    assert len(c1) == 1
    c2 = c1[0]
    assert isinstance(c2, ast.Expr)
    return CheckNode(c2.value, [])
function_tokens: def CheckedEval ( file_contents ) : syntax_tree = ast . parse ( file_contents ) assert isinstance ( syntax_tree , ast . Module ) c1 = syntax_tree . body assert len ( c1 ) == 1 c2 = c1 [ 0 ] assert isinstance ( c2 , ast . Expr ) return CheckNode ( c2 . value , [ ] )