class Calcula::Exprs::AssignExpr

Expression for assigning value to variables

@author Paul T.

Public Class Methods

new(ident, value) click to toggle source

@param ident [Calcula::Exprs::IdentExpr] @param value [Calcula::Expr]

# File lib/Exprs/AssignExpr.rb, line 10
def initialize(ident, value)
  @ident = ident
  @value = value
end

Public Instance Methods

children() click to toggle source

@see Calcula::Expr#children @param (see Calcula::Expr#children) @return (see Calcula::Expr#children)

# File lib/Exprs/AssignExpr.rb, line 36
def children
  [@ident, @value]
end
to_s(form: :src) click to toggle source

@see Calcula::Expr#to_s @param (see Calcula::Expr#to_s) @return (see Calcula::Expr#to_s)

# File lib/Exprs/AssignExpr.rb, line 18
def to_s(form: :src)
  identTxt = @ident.to_s(form: form)
  valueTxt = @value.to_s(form: form)
  case form
  when :src then
    "let #{identTxt}=#{valueTxt}"
  when :tree then
    "(let #{identTxt} #{valueTxt})"
  when :ruby then
    "#{identTxt} = #{valueTxt}"
  else
    nil
  end
end