Sha256: c6dc071c4d1d26615876de074d809770d966bdf011cf38cf959f00689e5cd0c0
Contents?: true
Size: 956 Bytes
Versions: 3
Compression:
Stored size: 956 Bytes
Contents
# frozen_string_literal: true require_relative 'lox_compound_expr' module Loxxy module Ast class LoxIfStmt < LoxCompoundExpr # @return [LoxNode] code of then branch attr_reader :then_stmt # @return [LoxNode, NilClass] code of else branch attr_reader :else_stmt # @param aPosition [Rley::Lexical::Position] Position of the entry in the input stream. # @param subExpr [Loxxy::Ast::LoxNode] def initialize(aPosition, condExpr, thenStmt, elseStmt) super(aPosition, [condExpr]) @then_stmt = thenStmt @else_stmt = elseStmt end # Part of the 'visitee' role in Visitor design pattern. # @param visitor [Ast::ASTVisitor] the visitor def accept(visitor) visitor.visit_if_stmt(self) end # Accessor to the condition expression # @return [LoxNode] def condition subnodes[0] end end # class end # module end # module
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
loxxy-0.0.22 | lib/loxxy/ast/lox_if_stmt.rb |
loxxy-0.0.21 | lib/loxxy/ast/lox_if_stmt.rb |
loxxy-0.0.20 | lib/loxxy/ast/lox_if_stmt.rb |