File: abstract-syntax/core/expression/unary/atom/abstract.rb

Overview
Module Structure
Class Hierarchy
Code

Overview

Module Structure

  module: <Toplevel Module>
  module: Umu#6
  module: AbstractSyntax#8
  module: Core#10
  module: Expression#12
  module: Unary#14
  module: Atom#16
  class: Abstract#18
inherits from
  Abstract ( Umu::AbstractSyntax::Core::Expression::Unary )
has properties
method: evaluate / 1 #19

Code

   1  # coding: utf-8
   2  # frozen_string_literal: true
   3 
   4 
   5 
   6  module Umu
   7 
   8  module AbstractSyntax
   9 
  10  module Core
  11 
  12  module Expression
  13 
  14  module Unary
  15 
  16  module Atom
  17 
  18  class Abstract < Unary::Abstract
  19      def evaluate(env)
  20          value = E::Tracer.trace_single(
  21                      env.pref,
  22                      env.trace_stack.count,
  23                      'Eval(Expr)',
  24                      self.class,
  25                      self.loc,
  26                      self.to_s
  27                  ) { |event|
  28                      __evaluate__ env, event
  29                  }
  30 
  31          ASR.make_value value
  32      end
  33  end
  34 
  35  end # Umu::AbstractSyntax::Core::Expression::Unary::Atom
  36 
  37  end # Umu::AbstractSyntax::Core::Expression::Unary
  38 
  39  end # Umu::AbstractSyntax::Core::Expression
  40 
  41  end # Umu::AbstractSyntax::Core
  42 
  43  end # Umu::AbstractSyntax
  44 
  45  end # Umu