scoping

    1热度

    1回答

    我试图在全局环境中存储函数中的变量,但是我找到的解决方案都没有找到SO post或different SO post为我工作。这是一个非常简单的例子来说明我的问题。我不能仅仅使用<<-来创建v全局变量,因为我的实际函数创建了几十个变量。 代码(main_file.R) source("function_me.R") #environment(doGlobalThing) <-parent.fra

    1热度

    1回答

    编辑:我没有做好解释我的问题。我对关闭如何感到困惑,函数似乎记住了它以前的环境,但通过递归调用它似乎找到了名称的更新值。 我的困惑通过Thomas Ballinger "Finding closure with closures" talk完美解决:一个可变的 范围在定义被确定,可变值在执行被确定。 因此,无论是递归还是闭包,名称的绑定都是在定义时定义的,但该值可以在之后进行更新。 原题: 装饰上

    0热度

    1回答

    我想自定义范围界定如下: 在扩展AbstractMyDslScopeProvider文件MyDslScopeProvider, 我实现了这个签名的功能: override def IScope getScope(EObject context, EReference reference) ,我用例像这样 ​​ 但我在我的语法中有函数,它有参数,我们可以声明在本地v ARS。我不希望那些本地变量

    0热度

    1回答

    继我的问题: here 我试图自定义范围。我希望在我的语言中的'Predicate'范围内,一些对象将在范围中可见,类型如'typeDef'。 Predicate: 'predicate' name=ID ('(' params=TypedParamList ')')? (':' body=TemporalExpression TOK_SEMI) | ('{' bod

    0热度

    1回答

    我有一个描述is this link 我想在我的getScope功能我实现了使用IResourceScopeCache同样的问题,但我不知道该怎么做。没有找到任何帮助我的东西。 我有这个文件:MyDslScopeProvider.xtend,我重写了getScope()那里。 如何在那里使用缓存? override def IScope getScope(EObject context, ERef

    -2热度

    1回答

    如果我有一个内部类在定义某个字段为“foo”的外部类的上下文中,并且该内部类从另一个类中继承,该类也具有“ foo“字段,其中foo在内部类中是可见的? 这里是一个例子。哪个x被访问? class OuterClass { int x; class NestedClass extends OtherClass { int y = x /* which x is ac

    2热度

    3回答

    我目前正在将代码从页面解析器函数重构为OOP。 我具有包括从一个文件到主功能范围中运行的代码的困难: 对象: class phpFragment { private $sData; function render() { return include $oElement->sData; } } 对象容器类: class pageData {

    -1热度

    1回答

    我试图缓存从一个url到一个变量的响应,并在随后的请求中发送它。为此,我正在写请求的数据事件的变量。该变量已更新,但我无法从事件的回调中访问它。 下面是我生成的代码和日志。 我不明白为什么尽管在data事件回调中得到更新,它在end事件回调中的长度为0。 注:data变量具有url属性,req和res请求和响应变量。 var cache = {} ; //global variable func

    5热度

    4回答

    在下面的打印脚本函数中,'this'没有解析为EmailValidator的实例。我怎样才能纠正这个函数,使其解析为正确的EmailVaildator实例,并反过来让我可以访问_registerServices? class EmailValidator { constructor(private _registerServices: RegisterServices) { }

    4热度

    1回答

    我想,以确定是否在函数内部存在R中的对象: foo <- function() { y <- "hello" if (exists(y, envir = sys.frame())) print(y) } foo() 错误存在(Y,ENVIR = sys.frame()):无效第一个参数 我以为加入envir = sys.frame()会做伎俩。也试过envir = environmen