class YARP::WhileNode

Experimental RBS support (using type sampling data from the type_fusion project).

# sig/yarp/node.rbs

class YARP::WhileNode < YARP::Node
  def accept: (Analyzer::Visitor visitor) -> untyped
  def initialize: (YARP::Location keyword_loc, YARP::CallNode predicate, YARP::StatementsNode statements, Integer flags, YARP::Location location) -> void
end

^^^^^^^^^^^^^^^^^^^^
while foo do bar end
^^^^^^^^^^^^^
bar while foo
Represents the use of the ‘while` keyword, either in the block form or the modifier form.

def accept(visitor)

Experimental RBS support (using type sampling data from the type_fusion project).

def accept: (Analyzer::Visitor visitor) -> untyped

This signature was generated using 1 sample from 1 application.

def accept: (visitor: Visitor) -> void
def accept(visitor)
  visitor.visit_while_node(self)
end

def begin_modifier?

def begin_modifier?: () -> bool
def begin_modifier?
  flags.anybits?(LoopFlags::BEGIN_MODIFIER)
end

def child_nodes

def child_nodes: () -> Array[nil | Node]
def child_nodes
  [predicate, statements]
end

def deconstruct_keys(keys)

def deconstruct_keys: (keys: Array[Symbol]) -> Hash[Symbol, nil | Node | Array[Node] | String | Token | Array[Token] | Location]
def deconstruct_keys(keys)
  { keyword_loc: keyword_loc, predicate: predicate, statements: statements, flags: flags, location: location }
end

def initialize(keyword_loc, predicate, statements, flags, location)

Experimental RBS support (using type sampling data from the type_fusion project).

def initialize: (YARP::Location keyword_loc, YARP::CallNode predicate, YARP::StatementsNode statements, Integer flags, YARP::Location location) -> void

This signature was generated using 1 sample from 1 application.

def initialize: (keyword_loc: Location, predicate: Node, statements: Node?, flags: Integer, location: Location) -> void
def initialize(keyword_loc, predicate, statements, flags, location)
  @keyword_loc = keyword_loc
  @predicate = predicate
  @statements = statements
  @flags = flags
  @location = location
end

def keyword

def keyword: () -> String
def keyword
  keyword_loc.slice
end

def set_newline_flag(newline_marked)

def set_newline_flag(newline_marked)
  predicate.set_newline_flag(newline_marked)
end