call method
Implementation
@override
Object? call(Interpreter interpreter, List<Object?> arguments,
Map<Symbol, Object?> namedArguments) {
Widget? child;
var childParsed = namedArguments[const Symbol('child')];
if (childParsed != null) {
child = childParsed as Widget;
}
var duration = namedArguments[const Symbol('duration')];
if (duration == null) {
throw "duration required in AnimatedContainer";
}
Duration? reverseDuration;
var reverseDurationParsed = namedArguments[const Symbol('reverseDuration')];
if (reverseDurationParsed != null) {
reverseDuration = reverseDurationParsed as Duration;
}
Curve curve = Curves.linear;
var curveParsed = namedArguments[const Symbol('curve')];
if (curveParsed != null) {
curve = curveParsed as Curve;
}
void Function()? onEnd;
var onEndParsed = namedArguments[const Symbol('onEnd')];
if (onEndParsed != null) {
onEnd = () {
(onEndParsed as LoxFunction).call(interpreter, [], {});
};
}
AlignmentGeometry alignment = Alignment.center;
var alignmentParsed = namedArguments[const Symbol('alignment')];
if (alignmentParsed != null) {
alignment = alignmentParsed as AlignmentGeometry;
}
return AnimatedSize(
duration: duration as Duration,
reverseDuration: reverseDuration,
alignment: alignment,
curve: curve,
onEnd: onEnd,
child: child,
);
}