Все вопросы: [yield]

54 вопросов

похожие теги: yield-keywordyield-return
3
голосов
2ответов
3400 просмотров

return column values as IEnumerable

I have this code working: public IEnumerable<string> GetEmpNames() { var cmd = SqlCommand("select [EmpName] from [dbo].[Emp]"); using (var rdr = cmd.ExecuteReader()) while (rdr.Read()) yield return (string) rdr["EmpName"]; } However, I'm wondering if there's a...

1
голосов
3ответов
1440 просмотров

Iterating over nested lists with a Next() function, without a generator

Whilst I'd love to solve this problem in python, I'm stuck in Delphi for this one. I have nested lists (actually objects with nested lists as properties, but nevermind), and I want to iterate over them in a generator fashion. That is, I want to write a Next function, which gives me the next item ...

21
голосов
7ответов
5304 просмотров

Caching IEnumerable

public IEnumerable<ModuleData> ListModules() { foreach (XElement m in Source.Descendants("Module")) { yield return new ModuleData(m.Element("ModuleID").Value); } } Initially the above code is great since there is no need to evaluate the entire collection if it is not n...

22
голосов
3ответов
8171 просмотров

yield return versus return select

Which are the advantages/drawbacks of both approaches? return items.Select(item => DoSomething(item)); versus foreach(var item in items) { yield return DoSomething(item); } EDIT As they are MSIL roughly equivalent, which one you find more readable?

6
голосов
2ответов
395 просмотров

yield break; - crazy behaviour

using System; using System.Collections.Generic; using System.Text; using System.Collections; namespace ConsoleApplication4 { class Program { static void Main (string[] args) { var test1 = Test1(1, 2); var test2 = Test2(3, 4); } sta...

0
голосов
2ответов
263 просмотров

Is it necessary to refer to self in: yield(self[i])

In this example from a blog post, class Array def each i = 0 while(i < self.length) do yield(self[i]) i += 1 end end end my_array = ["a", "b", "c"] my_array.each {|letter| puts letter } # => "a" # => "b" # => "c" Is it necessary to use self in the state...

0
голосов
5ответов
125 просмотров

yield: why can't i write: p test_method { i.upcase }

def test_method ["a", "b", "c"].map {|i| yield(i) } end If I call test_method like this: p test_method {|i| i.upcase } # => ["A", "B", "C"] Why do I need the {|i|} inside the block, instead of just saying this: p test_method { i.upcase } The reason I think so is because when yield is...

76
голосов
6ответов
39424 просмотров

Ruby: Proc#call vs yield

What are the behavioural differences between the following two implementations in Ruby of the thrice method? module WithYield def self.thrice 3.times { yield } # yield to the implicit block argument end end module WithProcCall def self.thrice(&block) # & converts implici...

0
голосов
1ответов
145 просмотров

Do I need to parenthesise yield in Ruby?

In Ruby I can use result << (yield element) and everything works, but if I do result.push(yield element) I get a warning about needing parentheses for future compatibility. I can change the above to result.push(yield(element)) and the interpreter is happy again, but I don't underst...

27
голосов
6ответов
9313 просмотров

Is yield return in C# thread-safe?

I have the following piece of code: private Dictionary<object, object> items = new Dictionary<object, object>; public IEnumerable<object> Keys { get { foreach (object key in items.Keys) { yield return key; } } } Is this thread-s...

2
голосов
4ответов
708 просмотров

Is it better to yield return lookup lists or preload a static list in c#?

I have a simple lookup list that I will use to populate a dropdown in Silverlight. In this example I'm using US States. I'm trying to figure out if its better to return a static list or use the yield keyword. Of the following two pieces of code, which is the preferred and why? Version 1: Usin...

28
голосов
9ответов
4321 просмотров

Can someone demystify the yield keyword?

I have seen the yield keyword being used quite a lot on Stack Overflow and blogs. I don't use LINQ. Can someone explain the yield keyword? I know that similar questions exist. But none really explain what is its use in plain simple language.

0
голосов
1ответов
1999 просмотров

How do I select a subset of items from an anonymous type IEnumerable?

I have the following code. MyDataContext db = MyDataContext.Create(); bc = db.BenefitCodes.Select( b => new { BenCd = b.BenCd , Description = b.B...

20
голосов
2ответов
4105 просмотров

Why is using a sequence so much slower than using a list in this example

Background: I have a sequence of contiguous, time-stamped data. The data-sequence has holes in it, some large, others just a single missing value. Whenever the hole is just a single missing value, I want to patch the holes using a dummy-value (larger holes will be ignored). I would like to use l...

155
голосов
17ответов
76496 просмотров

Resetting generator object in Python

I have a generator object returned by multiple yield. Preparation to call this generator is rather time-consuming operation. That is why I want to reuse the generator several times. y = FunctionWithYield() for x in y: print(x) #here must be something to reset 'y' for x in y: print(x) Of course...

165
голосов
6ответов
37264 просмотров

Return all enumerables with yield return at once; without looping through

I have the following function to get validation errors for a card. My question relates to dealing with GetErrors. Both methods have the same return type IEnumerable<ErrorInfo>. private static IEnumerable<ErrorInfo> GetErrors(Card card) { var errors = GetMoreErrors(card); fo...

87
голосов
5ответов
21669 просмотров

In C#, why can't an anonymous method contain a yield statement?

I thought it would be nice to do something like this (with the lambda doing a yield return): public IList<T> Find<T>(Expression<Func<T, bool>> expression) where T : class, new() { IList<T> list = GetList<T>(); var fun = expression.Compile(); var i...

25
голосов
4ответов
11084 просмотров

implementing a state machine using the "yield" keyword

Is it feasible to use the yield keyword to implement a simple state machine as shown here. To me it looks like the C# compiler has done the hard work for you as it internally implements a state machine to make the yield statement work. Can you piggy-back on top of the work the compiler is alread...

1
голосов
2ответов
5433 просмотров

Open Source Financial Library Specifically Yield To Maturity

Does anyone know of an open source financial library that implements Yield To Maturity and other fixed income calculations? The library needs to be callable from .Net.

0
голосов
1ответов
191 просмотров

A method that returns an IEnumerable can get its output from another method with the same return type?

Behold the C# code: IEnumerable<int> innerMethod(int parameter) { foreach(var i in Enumerable.Range(0, parameter)) { yield return i; } } IEnumerable<int> outerMethod(int parameter) { foreach(var i in Enumerable.Range(1, parameter)) { f...

18
голосов
6ответов
15902 просмотров

Scala - can yield be used multiple times with a for loop?

An example: val l = List(1,2,3) val t = List(-1,-2,-3) Can I do something like this? for (i <- 0 to 10) yield (l(i)) yield (t(i)) Basically I want to yield multiple results for every iteration.

1
голосов
1ответов
719 просмотров

Почему мой генератор тестов Python просто не работает?

Это образец сценария для проверки использования yield ... я делаю это неправильно? Всегда возвращает «1» ... #!/usr/bin/python def testGen(): for a in [1,2,3,4,5,6,7,8,9,10]: yield a w = 0 while w < 10: print testGen().next() w += 1

315
голосов
9ответов
120649 просмотров

Что такое доходность Scala?

Я понимаю, как работают Ruby и Python. Что дает Scala?

7
голосов
5ответов
5447 просмотров

Производительность вложенной доходности в дереве

У меня древовидная структура. Каждый элемент в этой структуре должен иметь возможность возвращать Enumerable всех элементов, для которых он является корневым. Назовем этот метод IEnumerable<Foo> GetAll(). Итак, если у нас есть A <-- topmost root / \ / \ B C / \ ...

1
голосов
4ответов
588 просмотров

Как предотвратить переполнение памяти при использовании IEnumerable <t> и Linq-To-Sql?</t>

Этот вопрос связан с моим предыдущим вопросом Это мой текущий код IEnumerable&lt;Shape&gt; Get() { while(//get implementation yield return new Shape(//... } void Insert() { var actual = Get(); using (var db = new DataClassesDataContext()) { ...

14
голосов
3ответов
26776 просмотров

Pthread - В чем разница между time.h :: sleep () и pthread.h :: pthread_yield ()?

Я долго искал информацию о различиях между time.h :: sleep () и pthread.h :: pthread_yield (), но не смог найти никаких надежных справочных материалов, поэтому отправляю этот вопрос. В чем разница между time.h :: sleep () и pthread.h :: pthread_yield ()? Обновить: Причина, по которой я с...

5
голосов
2ответов
737 просмотров

Бесконечный IEnumerable в цикле foreach

После ответа на этот вопрос я просто для удовольствия составьте следующий код C #: public static IEnumerable&lt;int&gt; FibonacciTo(int max) { int m1 = 0; int m2 = 1; int r = 1; while (r &lt;= max) { yield return r; r = m1 + m2; m1 = m2; ...

1
голосов
1ответов
1447 просмотров

Запускает ли "Select New" в linq оценку / загрузку?

В настоящее время я пытаюсь создать класс, реализующий IEnumerable&lt;T&gt;, чтобы построить иерархию из плоского списка объектов, которые имеют ссылки друг на друга через свойство ParentId. Я хотел бы написать для этого свободный интерфейс, чтобы сделать что-то вроде этого IEnumerable&lt;Tab...

4
голосов
3ответов
3336 просмотров

mod_wsgi возвращает буфер вывода вместо возврата

Прямо сейчас у меня есть скрипт mod_wsgi с такой структурой .. def application(environ, start_response): status = '200 OK' output = 'Hello World!' response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(stat...

32
голосов
11ответов
8156 просмотров

С # IEnumerator / структура yield потенциально плохая?

Предыстория: у меня есть набор строк, которые я получаю из базы данных, и я хочу их вернуть. Традиционно это было бы примерно так: public List&lt;string&gt; GetStuff(string connectionString) { List&lt;string&gt; categoryList = new List&lt;string&gt;(); using (SqlConnection sqlConnecti...