Class: Chelsy::DoWhile

Inherits:
Iteration show all
Defined in:
lib/chelsy/ast.rb

Overview

This class represents do ... while (...) iteration statement.

Instance Attribute Summary

Attributes inherited from Iteration

#body, #condition

Attributes inherited from Element

#fragments, #post_fragments

Instance Method Summary collapse

Constructor Details

#initialize(condition_expr, body_stmt = nil, **rest) {|Chelsy::Block| ... } ⇒ DoWhile

Initialize iteration statement with its condition and iteration body statement. You can pass an optional code block which takes Block instance can be used to construct iteration body statements.

Parameters:

  • condition_expr

    an expression which express condition

  • body_stmt (defaults to: nil)

    iteration body statement

Yields:

Raises:

  • (ArgumentError)

    Given neither body_stmt nor code block

  • (ArgumentError)

    condition_expr is nil



1054
1055
1056
1057
# File 'lib/chelsy/ast.rb', line 1054

def initialize(condition_expr, body_stmt=nil, **rest)
  raise ArgumentError, "missing condition expr" unless condition_expr
  super condition_expr, body_stmt, **rest
end