import 是一个关键字,但以下工作正常:
import 'dart:io';
void main() {
import() {
print("Imported");
}
import();
}
答案 0 :(得分:3)
是的,这应该有效。我认为是的,您可以合理地确定这将继续有效。为了解释,我们来看看语言规范。
第16.1.1节(保留字)解释保留字不能用作标识符;如果在预期标识符的位置使用保留字,则为编译时错误。以下是保留字列表:assert
,break
,case
,{ {1}},catch
,class
,const
,continue
,default
,do
,
else
,enum
,extends
,false
,final
,finally
,for
,if
,{{ 1}},in
,is
,new
,null
,rethrow
,return
,super
,{{1} },switch
,this
,throw
,true
,try
,var
。请注意,此处未提及void
。
然后,第12.30节(标识符参考)解释了有一组内置标识符,如下所示:while
,with
,{{1} },import
,abstract
,as
,dynamic
,export
,external
,factory
,get
, implements
,import
,library
,operator
。如果是内置标识符,则是编译时错误
用作类的声明名称,类型参数或类型别名。请注意part
属于此组 - 因此您不能将其用作类型,但您可以在其他地方使用它(就像你的情况一样,作为一个函数名称)。
第12.30节中的非规范性部分解释了差异:内置标识符是在Dart中用作关键字的标识符,但不是Javascript中的保留字。
请注意,在这个答案中,我引用了Dart语言规范版本0.30的PDF格式。