Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- abstract class Ride {
- bool ride();
- }
- abstract class Train implements Ride {
- bool ride() {
- // pociag nie jezdzi sam bez rozkladu
- return false;
- }
- }
- mixin Pon on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 1;
- }
- }
- mixin Wt on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 2;
- }
- }
- mixin Sr on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 3;
- }
- }
- mixin Czw on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 4;
- }
- }
- mixin Pt on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 5;
- }
- }
- mixin Sob on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 6;
- }
- }
- mixin Nd on Ride {
- bool ride() {
- return super.ride() || DateTime.now().weekday == 7;
- }
- }
- class Tygodniowy extends Train with Pon, Wt, Sr, Czw, Pt, Sob, Nd {}
- class Weekendowy extends Train with Sob, Nd {}
- class WTygodniu extends Train with Pon, Wt, Sr, Czw, Pt {}
- class Srodowy extends Train with Sr {}
- void main() {
- print('ktory pociag przyjezdza');
- print('tygodniowy ${Tygodniowy().ride()}');
- print('weekendowy ${Weekendowy().ride()}');
- print('w tygodniu ${WTygodniu().ride()}');
- print('srodowy ${Srodowy().ride()}');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement