allows method

  1. @override
bool allows(
  1. dynamic operation
)
override

Checks if this permission allows the given operation.

Implementation

@override
bool allows(dynamic operation) {
  if (operation is! Map<String, dynamic>) return false;

  final opType = operation['type'];
  if (opType != 'isolate') return false;

  final requiredSpawn = operation['spawn'] ?? false;
  final requiredCommunicate = operation['communicate'] ?? false;

  if ((requiredSpawn && !_spawn) || (requiredCommunicate && !_communicate)) {
    return false;
  }

  return true;
}