Chapel中的expand命令返回一个新域。我想增加一个域名,如
var d: domain(1) = {1..5};
writeln(d);
--{1..5}
expand(d)(1);
writeln(d);
--{1..6};
答案 0 :(得分:3)
从Chapel 1.15开始,域上的expand
方法没有就地选项。您需要将expand
的结果分配到所需的域:
var eDom = {1..5};
eDom = eDom.expand(1);
writeln(eDom); // {0..6}
expand
听起来并不像你想要的那样,因为expand
会在每个维度的两个方向上增长域名。要向矩形域添加一个索引,您可以为域分配域文字:
var rDom = {1..5};
const hi = rDom.last + 1;
rDom = {rDom.first..hi};
writeln(rDom); // {1..6}
对于不规则域,您可以使用add
方法:
var aDom = {1, 3, 5, 7}; // an associative domain
aDom.add(9);
writeln(aDom.sorted()); // 1 3 5 7 9
请注意,您无法在矩形域上使用add
方法。这在Chapel语言规范的version 0.983中的第19.8.6节中定义。
答案 1 :(得分:1)
domain
expansion: % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 161 100 161 0 0 89 0 0:00:01 0:00:01 --:--:-- 89
100 88.5M 100 88.5M 0 0 99631 0 0:15:32 0:15:32 --:--:-- 117k
Performing silent installation
10 %
20 %
30 %
40 %
50 %
60 %
Generating start scripts ...
Installing pip and setuptools
90 %
Ignoring indexes: https://pypi.python.org/simple/
Downloading/unpacking setuptools
Downloading/unpacking pip
Installing collected packages: setuptools, pip
Successfully installed setuptools pip
Cleaning up...
100 %
Congratulations! You successfully installed Jython 2.7.0 to directory /usr/local/jython-2.7.0.
---> 0672c44d1960