pairConnectIO method

void pairConnectIO(
  1. Module module,
  2. Interface<PairDirection> srcInterface,
  3. PairRole role, {
  4. String uniquify(
    1. String original
    )?,
})
inherited

A simplified version of connectIO for PairInterfaces where by only specifying the role, the input and output tags can be inferred.

Implementation

void pairConnectIO(
    Module module, Interface<PairDirection> srcInterface, PairRole role,
    {String Function(String original)? uniquify}) {
  final List<PairDirection> inputTags;
  final List<PairDirection> outputTags;
  final inOutTags = [
    PairDirection.commonInOuts,
  ];

  switch (role) {
    case PairRole.consumer:
      inputTags = [
        PairDirection.sharedInputs,
        PairDirection.fromProvider,
      ];
      outputTags = [
        PairDirection.fromConsumer,
      ];

    case PairRole.provider:
      inputTags = [
        PairDirection.sharedInputs,
        PairDirection.fromConsumer,
      ];
      outputTags = [
        PairDirection.fromProvider,
      ];
  }

  connectIO(
    module,
    srcInterface,
    inputTags: inputTags,
    outputTags: outputTags,
    inOutTags: inOutTags,
    uniquify: uniquify,
  );
}