parseMethodArgs static method

String parseMethodArgs(
  1. Property arg
)

Implementation

static String parseMethodArgs(Property arg) {
  String question = "";
  if (arg.canBeNull) {
    question = "?";
  }
  if (TypeUtils.isBaseType(arg) || isObject(arg)) {
    return arg.name;
  } else if (TypeUtils.isListType(arg)) {
    // list.map((e) => "InnerClass___custom___" + jsonEncode(abc.toJson())).toList()
    arg.subType[0].name = "e";
    return "${arg.name}$question.map((e) => "
        "${parseMethodArgs(arg.subType[0])}).toList()";
  } else if (TypeUtils.isMapType(arg)) {
    arg.subType[0].name = "k";
    arg.subType[1].name = "v";
    return "${arg.name}$question.map((k,v) => "
        "MapEntry(${parseMethodArgs(arg.subType[0])}, "
        "${parseMethodArgs(arg.subType[1])}))";
  } else {
    //custom class
    //"InnerClass___custom___"+jsonEncode(abc.toJson())
    String formatStr =
        "\"${TypeUtils.getPropertyNameStr(arg)}___custom___\" + jsonEncode(${arg.name}$question.toJson())";
    return formatStr;
  }
}