cellular-automata/lib/src/RuleSet.dart

28 lines
593 B
Dart

import 'dart:math';
import 'package:collection/collection.dart';
abstract class RuleSet {
int checkRange;
bool checkSurvival(int neighbors);
bool checkBirth(int neighbors);
}
class Pattern<Point> extends DelegatingList<Point> {
final String _name;
Pattern(String name, List base)
: _name = name,
super(base);
String get name => _name;
}
class GameOfLife implements RuleSet {
int checkRange = 1;
bool checkSurvival(int neighbors) =>
neighbors == 2 || neighbors == 3 ? true : false;
bool checkBirth(int neighbors) => neighbors == 3 ? true : false;
}