blob: 4e1a62f0a5ae968ff83ae49f51f8e594a56a5e5b [file] [log] [blame]
>>> (indent 2)
Decl immutableVariableDeclaration(
List<String> names, List<Expr> initializers) =>
(Environment env) {
assert(names.length == initializers.length);
for (int i = 0; i < names.length; ++i) {
env.initialize(names[i],
getter: (TopLevelBinding binding, ExprCont ek, ExprCont k) {
binding.getter = (TopLevelBinding _, ExprCont ek0, ExprCont k0) => ek0(
"Reading static variable '${binding.name}' during its initialization");
initializers[i](env, ek, (v) {
binding.getter =
(TopLevelBinding _, ExprCont ek1, ExprCont k1) => k1(v);
return k(v);
});
},
setter: (value, ExprCont ek, ExprCont k) =>
ek("NoSuchMethodError: method not found: '${names[i]}='"));
}
};
<<<
Decl immutableVariableDeclaration(
List<String> names, List<Expr> initializers) =>
(Environment env) {
assert(names.length == initializers.length);
for (int i = 0; i < names.length; ++i) {
env.initialize(names[i],
getter: (TopLevelBinding binding, ExprCont ek, ExprCont k) {
binding.getter = (TopLevelBinding _, ExprCont ek0,
ExprCont k0) =>
ek0("Reading static variable '${binding.name}' during its initialization");
initializers[i](env, ek, (v) {
binding.getter =
(TopLevelBinding _, ExprCont ek1, ExprCont k1) => k1(v);
return k(v);
});
},
setter: (value, ExprCont ek, ExprCont k) =>
ek("NoSuchMethodError: method not found: '${names[i]}='"));
}
};