typeFromExpressions static method
FutureOr<ASTType>
typeFromExpressions(
- Iterable<
ASTExpression> expressions, { - VMContext? context,
Implementation
static FutureOr<ASTType> typeFromExpressions(
Iterable<ASTExpression> expressions,
{VMContext? context}) {
var types = expressions.map((e) => e.resolveType(context)).toSet();
if (types.isEmpty) {
return ASTTypeDynamic.instance;
} else if (types.length == 1) {
return types.first;
}
return types.resolveAll().resolveMapped((types) {
if (types.every((t) => t is ASTTypeNumber)) {
return ASTTypeNum.instance;
}
return ASTTypeDynamic.instance;
});
}