Click here to Skip to main content
15,891,943 members
Home / Discussions / C#
   

C#

 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
BillWoodruff25-Jan-22 3:23
professionalBillWoodruff25-Jan-22 3:23 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell30-Jan-22 6:37
jschell30-Jan-22 6:37 
AnswerRe: How would you describe what an IEnumerable is to a bright student of C# Pin
#realJSOP24-Jan-22 23:44
mve#realJSOP24-Jan-22 23:44 
AnswerRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk26-Jan-22 5:31
endo funk26-Jan-22 5:31 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
Gerry Schmitz26-Jan-22 6:13
mveGerry Schmitz26-Jan-22 6:13 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk26-Jan-22 9:40
endo funk26-Jan-22 9:40 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
Gerry Schmitz27-Jan-22 16:58
mveGerry Schmitz27-Jan-22 16:58 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk27-Jan-22 19:35
endo funk27-Jan-22 19:35 
Count() is not a method of IEnumerable.
It is an extension on IEnumerable<TSource>, the state machine is sub typed to IEnumerable; see reference runtime code below:
runtime/Count.cs at dotnet/runtime · GitHub

A state machine can learn; you could probably get a good estimate the 2nd time around; all other things being equal.
I see no example of this in the code for Linq. In .Net 6 Microsoft has added TryGetNonEnumeratedCount to try to compute the compute the count without enumeration; failing which they fallback on enumerating the collection, reference runtime code below:
runtime/Count.cs at dotnet/runtime · GitHub

If the IEnumerable returns an object, you could even have it return a status report every so often; you're not limited to returning a particular type.
It's as mentioned before is a state machine that is sub typed to IEnumerable; so barring guesstimate extension methods like TryGetNonEnumeratedCount; it requires enumeration to return a result. Select allows mapping from 1 encapsulated type to another; however the collection object (IEnumerable) is resolute for Linq.
Modifying the outer collection object; usually involves a traverse map; Linq AFAIK doesn't have any traversal extension methods; but it's fairly easy to build your own; re the building blocks for it are already there... Aggregate, SelectMany, and Select.
Side note: Arguably ToList and ToArray are basic traversals.

modified 28-Jan-22 1:52am.

GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
Gerry Schmitz28-Jan-22 5:50
mveGerry Schmitz28-Jan-22 5:50 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk28-Jan-22 6:40
endo funk28-Jan-22 6:40 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
Gerry Schmitz28-Jan-22 7:29
mveGerry Schmitz28-Jan-22 7:29 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk28-Jan-22 8:46
endo funk28-Jan-22 8:46 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
BillWoodruff26-Jan-22 23:52
professionalBillWoodruff26-Jan-22 23:52 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
BillWoodruff26-Jan-22 23:39
professionalBillWoodruff26-Jan-22 23:39 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk27-Jan-22 6:44
endo funk27-Jan-22 6:44 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
BillWoodruff27-Jan-22 23:44
professionalBillWoodruff27-Jan-22 23:44 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk28-Jan-22 2:11
endo funk28-Jan-22 2:11 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell30-Jan-22 7:08
jschell30-Jan-22 7:08 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk30-Jan-22 14:22
endo funk30-Jan-22 14:22 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell17-Feb-22 10:22
jschell17-Feb-22 10:22 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk17-Feb-22 14:22
endo funk17-Feb-22 14:22 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell30-Jan-22 7:07
jschell30-Jan-22 7:07 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell30-Jan-22 7:06
jschell30-Jan-22 7:06 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
endo funk30-Jan-22 14:21
endo funk30-Jan-22 14:21 
GeneralRe: How would you describe what an IEnumerable is to a bright student of C# Pin
jschell17-Feb-22 10:28
jschell17-Feb-22 10:28 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.