2013-11-25 2 views
2

Ceylon에서 주어진 주어진 no-args 함수를 호출하여 각 요소를 생성하는 무한 반복 가능한 iterable을 만드는 쉬운 방법이 있습니까? 즉, 언어 모듈이 Java 8의 Stream.generate(Supplier<T>)과 동일한 기능을 제공합니까? 아니면 이것을 성취 할 수있는 구문 론적 설탕이 있습니까? {generate()} 게으른 때문에이 작동실론의 무한 반복 생성기

{Value+} generator<Value>(Value() generate) => {generate()}.cycled; 

:

답변

4

는 여기에 내가 무엇을 최대 온입니다.

1

없음이 사실은 지금은 존재하지 않으며 나는 "Ceylonish"방법은 이런 식으로 뭔가있을 거라고 생각 : 당신이에 대한 요청을 열 수 또한

class Generator<T>(T func()) satisfies Iterable<T> { 
    object iter satisfies Iterator<T> { 
     next() => func(); 
    } 
    iterator() => iter; 
} 

: the language module

+0

[ FAQ는 "ceylonic"이라고합니다 (http://ceylon-lang.org/documentation/1.1/faq/#am_i_allowed_to_say_ceylonish). –

+0

[거의 1 년 후에 추가] (https://github.com/ceylon/ceylon-lang.org/commit/94f311119d1e50971794be225a77c18ed9b220cc) 나는 그 질문에 대답했다;) – Quintesse

관련 문제