copyWith method

BuildArguments copyWith(
  1. Arguments? data
)

Creates a copy of this Android arguments instance with updated values.

  • data - New Android arguments to merge with current instance

Returns a new Arguments instance with values from data taking precedence over current values. Null values in data will preserve the corresponding values from the current instance.

This method is useful for creating variants of build configurations without modifying the original instance.

Example usage:

final releaseArgs = debugArgs.copyWith(Arguments(
  variables,
  binaryType: 'aab',
  buildMode: 'release',
  obfuscate: true,
));

Implementation

BuildArguments copyWith(Arguments? data) {
  return Arguments(
    data?.variables ?? variables,
    buildMode: data?.buildMode ?? buildMode,
    binaryType: data?.binaryType ?? binaryType,
    target: data?.target ?? target,
    flavor: data?.flavor ?? flavor,
    dartDefines: data?.dartDefines ?? dartDefines,
    dartDefinesFile: data?.dartDefinesFile ?? dartDefinesFile,
    splitPerAbi: data?.splitPerAbi ?? splitPerAbi,
    customArgs: data?.customArgs ?? customArgs,
    buildName: data?.buildName ?? buildName,
    buildNumber: data?.buildNumber ?? buildNumber,
    pub: data?.pub ?? pub,
    output: data?.output ?? output,
    generateDebugSymbols: data?.generateDebugSymbols ?? generateDebugSymbols,
    configOnly: data?.configOnly ?? configOnly,
    trackWidgetCreation: data?.trackWidgetCreation ?? trackWidgetCreation,
    androidSkipBuildDependencyValidation:
        data?.androidSkipBuildDependencyValidation ??
        androidSkipBuildDependencyValidation,
    analyzeSize: data?.analyzeSize ?? analyzeSize,
    ignoreDeprecation: data?.ignoreDeprecation ?? ignoreDeprecation,
    obfuscate: data?.obfuscate ?? obfuscate,
    targetPlatform: data?.targetPlatform ?? targetPlatform,
    androidProjectArg: data?.androidProjectArg ?? androidProjectArg,
    codeSizeDirectory: data?.codeSizeDirectory ?? codeSizeDirectory,
    splitDebugInfo: data?.splitDebugInfo ?? splitDebugInfo,
  );
}