Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chromium gyp中变量的范围是什么?_Chromium_Gyp - Fatal编程技术网

Chromium gyp中变量的范围是什么?

Chromium gyp中变量的范围是什么?,chromium,gyp,Chromium,Gyp,在'variables'部分中的文档如下所示: “变量”:可以插值和 用于文件的各种其他部分 (我的重点)。 这似乎排除了使用包含的gyp文件中的变量,也排除了包含设置变量的其他gyp文件的可能性 这是正确的吗?这些变量的范围是什么?如何全局设置变量? 我看到,在铬中,构建/通用。GPRI < /C> >设置了很多变量,但是Cr也使用了魔法 GoPrgLux脚本,它不同于普通代码> GYP。 < P>变量的范围是GIP与C++中局部变量的范围非常相似。假设您在variables字典FOO中定义了

'variables'
部分中的文档如下所示:

“变量”:可以插值和 用于文件的各种其他部分

(我的重点)。 这似乎排除了使用包含的gyp文件中的变量,也排除了包含设置变量的其他gyp文件的可能性

这是正确的吗?这些变量的范围是什么?如何全局设置变量?
我看到,在铬中,<代码>构建/通用。GPRI < /C> >设置了很多变量,但是Cr也使用了魔法<代码> GoPrgLux脚本,它不同于普通代码> GYP。

< P>变量的范围是GIP与C++中局部变量的范围非常相似。假设您在
variables
字典
FOO
中定义了一个变量。
FOO
中定义的变量范围是
BAR
字典,它是
FOO
的父项。您可以在
内的任何位置使用这些变量,而不能在其外部使用


如何全局设置变量

了解所描述的规则很容易。将
变量
字典添加到gyp脚本的顶级字典中,并在其中定义一些变量。它们将在本脚本中的任何位置1可用


这似乎排除了使用包含的gyp文件中的变量,以及 还排除了包含其他设置为 变量

事实并非如此。假设您将
include.gypi
包含到
generator.gyp
脚本中。如果
include.gypi
在其顶级字典中有
variables
部分,则可以在
generator.gyp
中的任何位置访问这些变量。显然,顶级字典中未定义的变量将无法访问



1请记住,
包括
是在变量展开之前解析的。因此,在包含路径中不能使用变量。

< P>变量的范围是GIP与C++中局部变量的范围非常相似。假设您在
variables
字典
FOO
中定义了一个变量。
FOO
中定义的变量范围是
BAR
字典,它是
FOO
的父项。您可以在
内的任何位置使用这些变量,而不能在其外部使用


如何全局设置变量

了解所描述的规则很容易。将
变量
字典添加到gyp脚本的顶级字典中,并在其中定义一些变量。它们将在本脚本中的任何位置1可用


这似乎排除了使用包含的gyp文件中的变量,以及 还排除了包含其他设置为 变量

事实并非如此。假设您将
include.gypi
包含到
generator.gyp
脚本中。如果
include.gypi
在其顶级字典中有
variables
部分,则可以在
generator.gyp
中的任何位置访问这些变量。显然,顶级字典中未定义的变量将无法访问


1请记住,
包括
是在变量展开之前解析的。因此,不能在包含路径中使用变量