rfc:functional-elements

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
rfc:functional-elements [2008/03/16 14:26]
lstrojny Rewriting required functionality example
rfc:functional-elements [2008/03/17 09:40]
lstrojny
Line 38: Line 38:
 } }
 </​code>​ </​code>​
 +
 +
  
 ==== Required functionality ==== ==== Required functionality ====
 Extracting the required functionality to leads to the following required additions: Extracting the required functionality to leads to the following required additions:
   * [[rfc:​functional-elements:​call-iterator|class CallIterator]]:​ a simple iterator which walks over a traversable list (including arrays) and calls a specified method. The CallIterator might optionally gather the results   * [[rfc:​functional-elements:​call-iterator|class CallIterator]]:​ a simple iterator which walks over a traversable list (including arrays) and calls a specified method. The CallIterator might optionally gather the results
-  * function is_traversable():​ Returns true if a list is traversable (Iterator/​IteratorAggregate/​array) +  * [[rfc::​functional-elements:​is-traversable|function is_traversable()]]: Returns true if a list is traversable (Iterator/​IteratorAggregate/​array) 
-  * function iterate(): Walks over a traversable list and does nothing +  * [[rfc:​functional-elements:​iterate|function iterate()]]: Walks over a traversable list and does nothing 
-  * function iterator_true():​ Walks over a traversable list and assumes every element to be true +  * function iterator_true():​ Walks over a traversable list and assumes every element to be bool(true) 
-  * function iterator_false():​ Walks over a traversable list and assumes every element to be false+  * function iterator_false():​ Walks over a traversable list and assumes every element to be bool(false
 + 
 +==== Modified use cases ==== 
 +=== UC-1: Iterating over an aggregation of objects === 
 +<code php> 
 +iterate(new CallIterator($list,​ '​method'​));​ 
 +</​code>​ 
 + 
 +=== UC-2: Iterating over an aggregation of objects and keeping the results === 
 +<code php> 
 +$result = iterate(new CallIterator($list,​ '​method'​),​ true); 
 +</​code>​
  
rfc/functional-elements.txt · Last modified: 2017/09/22 13:28 (external edit)