= Enumerable For Statement = The '''enumerable for''' statement is used to enumerate the elements of an object—any object that implements '''IEnumerable'''. === Grammar === {{{ for in }}} The variable can be from a pre-existing variable declaration or can be a new declaration. The expression must implement '''System.Collections.Generic.IEnumerable''' or '''System.Collections.IEnumerable'''. Some of the more common objects to enumerate are lists, arrays and variable arguments. If the variable is given an explicit type ('''foo''' as '''Bar'''), or has one due to being a pre-existing variable, then the type must be compatible with the objects being enumerated. If there is no explicit type then the type is inferred from what is being enumerated. For '''IEnumerable''', that's the type argument to the generic. For '''IEnumerable''', the inferred type is Object. Within the statements the variable can be assigned to. Inside the statements, a '''break''' statement will exit the loop and a '''continue''' statement will skip the remaining statements. In either case, an if statement is used to control when the loop is broken or continued (otherwise it would be pointless to have further statements in the loop). {{{ #!cobra # Example 1 for person in people print person # Example 2 i = 1 for person in people print '[i]. [person]' i += 1 # Example 3 for line as String in lines line = line.trim if line print line # Example 4 for node in nodes if not node.isActive print 'skipping inactive node: [node]' continue print node node.process # Example 5 found = false for cust in customers if cust.name == name found = true break }}}