makeOperations method

OperationResult makeOperations(
  1. Mapper mapper,
  2. MappingDefinition definition
)

Implementation

OperationResult makeOperations(Mapper mapper, MappingDefinition definition)  {
  var sourceTree = SourceTree(definition.sourceClass, matches);
  var targetTree = TargetTree(definition.targetClass, matches);

  var operations = targetTree.makeOperations(sourceTree, mapper, definition);
  Function? constructor;
  if ( targetTree.root.resultDefinition != null ) {
    constructor = targetTree.root.resultDefinition!.constructor;
  }
  else {
    constructor = TypeDescriptor.forType(definition.targetClass).constructor; // hmmm
  }

  return OperationResult(operations: operations, constructor: constructor ?? () => {} , stackSize: sourceTree.stackSize);
}