No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

InvalidOutput.cs 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. namespace Unity.VisualScripting
  4. {
  5. public sealed class InvalidOutput : UnitPort<IUnitInputPort, IUnitInputPort, InvalidConnection>, IUnitInvalidPort, IUnitOutputPort
  6. {
  7. public InvalidOutput(string key) : base(key) { }
  8. public override IEnumerable<InvalidConnection> validConnections => unit?.graph?.invalidConnections.WithSource(this) ?? Enumerable.Empty<InvalidConnection>();
  9. public override IEnumerable<InvalidConnection> invalidConnections => Enumerable.Empty<InvalidConnection>();
  10. public override IEnumerable<IUnitInputPort> validConnectedPorts => validConnections.Select(c => c.destination);
  11. public override IEnumerable<IUnitInputPort> invalidConnectedPorts => invalidConnections.Select(c => c.destination);
  12. public override bool CanConnectToValid(IUnitInputPort port)
  13. {
  14. return false;
  15. }
  16. public override void ConnectToValid(IUnitInputPort port)
  17. {
  18. ConnectInvalid(this, port);
  19. }
  20. public override void ConnectToInvalid(IUnitInputPort port)
  21. {
  22. ConnectInvalid(this, port);
  23. }
  24. public override void DisconnectFromValid(IUnitInputPort port)
  25. {
  26. DisconnectInvalid(this, port);
  27. }
  28. public override void DisconnectFromInvalid(IUnitInputPort port)
  29. {
  30. DisconnectInvalid(this, port);
  31. }
  32. public override IUnitPort CompatiblePort(IUnit unit)
  33. {
  34. return null;
  35. }
  36. }
  37. }