call method
Implementation
@override
Object? call(Interpreter interpreter, List<Object?> arguments,
Map<Symbol, Object?> namedArguments) {
List<Widget> children = [];
var childrenParsed = namedArguments[const Symbol('children')];
if (childrenParsed != null) {
children = (childrenParsed as List).cast<Widget>();
}
Axis scrollDirection = Axis.vertical;
var scrollDirectionParsed = namedArguments[const Symbol('scrollDirection')];
if (scrollDirectionParsed != null) {
scrollDirection = scrollDirectionParsed as Axis;
}
bool reverse = false;
var reverseParsed = namedArguments[const Symbol('reverse')];
if (reverseParsed != null) {
reverse = reverseParsed as bool;
}
bool? primary;
var primaryParsed = namedArguments[const Symbol('primary')];
if (primaryParsed != null) {
primary = primaryParsed as bool;
}
bool shrinkWrap = false;
var shrinkWrapParsed = namedArguments[const Symbol('shrinkWrap')];
if (shrinkWrapParsed != null) {
shrinkWrap = shrinkWrapParsed as bool;
}
EdgeInsetsGeometry? padding;
var paddingParsed = namedArguments[const Symbol('padding')];
if (paddingParsed != null) {
padding = paddingParsed as EdgeInsetsGeometry;
}
double? cacheExtent =
parseDouble(namedArguments[const Symbol('cacheExtent')]);
Clip clipBehavior = Clip.hardEdge;
var clipBehaviorParsed = namedArguments[const Symbol('clipBehavior')];
if (clipBehaviorParsed != null) {
clipBehavior = clipBehaviorParsed as Clip;
}
ScrollPhysics? physics;
var physicsParsed = namedArguments[const Symbol('physics')];
if (physicsParsed != null) {
physics = physicsParsed as ScrollPhysics;
}
ScrollController? controller;
var controllerParsed = namedArguments[const Symbol('controller')];
if (controllerParsed != null) {
controller = controllerParsed as ScrollController;
}
int crossAxisCount;
var crossAxisCountParsed = namedArguments[const Symbol('crossAxisCount')];
if (crossAxisCountParsed == null) {
throw "crossAxisCount required in GridView.count";
}
crossAxisCount = crossAxisCountParsed as int;
double mainAxisSpacing =
parseDouble(namedArguments[const Symbol('mainAxisSpacing')]) ?? 0.0;
double crossAxisSpacing =
parseDouble(namedArguments[const Symbol('crossAxisSpacing')]) ?? 0.0;
double childAspectRatio =
parseDouble(namedArguments[const Symbol('childAspectRatio')]) ?? 1.0;
return GridView.count(
scrollDirection: scrollDirection,
reverse: reverse,
primary: primary,
shrinkWrap: shrinkWrap,
padding: padding,
cacheExtent: cacheExtent,
clipBehavior: clipBehavior,
physics: physics,
mainAxisSpacing: mainAxisSpacing,
crossAxisSpacing: crossAxisSpacing,
childAspectRatio: childAspectRatio,
controller: controller,
crossAxisCount: crossAxisCount,
children: children,
);
}