-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDuckTyping.cs
More file actions
29 lines (24 loc) · 748 Bytes
/
Copy pathDuckTyping.cs
File metadata and controls
29 lines (24 loc) · 748 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using static Sequences.Helpers;
namespace Sequences
{
[Run(8)]
public class DuckTyping : IEnumerable<int>
{
public DuckTyping()
{
foreach (var item in (IEnumerable<int>) this)
Console.WriteLine($" {item}");
}
private readonly IEnumerable<int> _storyPoints = StoryPoints;
IEnumerator<int> IEnumerable<int>.GetEnumerator() =>
_storyPoints.GetEnumerator();
IEnumerator IEnumerable.GetEnumerator() =>
_storyPoints.GetEnumerator();
public IEnumerator<int> GetEnumerator() =>
_storyPoints.Reverse().GetEnumerator();
}
}