Class: SFRP::Poly::VarRefExp
- Inherits:
-
Object
- Object
- SFRP::Poly::VarRefExp
- Defined in:
- lib/sfrp/poly/expression.rb
Instance Method Summary collapse
- #called_func_strs ⇒ Object
- #clone ⇒ Object
-
#initialize(var_str, id = nil) ⇒ VarRefExp
constructor
A new instance of VarRefExp.
- #to_mono(monofier) ⇒ Object
- #typing(_set, var_env) ⇒ Object
Constructor Details
#initialize(var_str, id = nil) ⇒ VarRefExp
Returns a new instance of VarRefExp.
107 108 109 110 |
# File 'lib/sfrp/poly/expression.rb', line 107 def initialize(var_str, id = nil) @var_str = var_str @id = id end |
Instance Method Details
#called_func_strs ⇒ Object
120 121 122 |
# File 'lib/sfrp/poly/expression.rb', line 120 def called_func_strs [] end |
#clone ⇒ Object
116 117 118 |
# File 'lib/sfrp/poly/expression.rb', line 116 def clone VarRefExp.new(@var_str, @id) end |
#to_mono(monofier) ⇒ Object
124 125 126 127 |
# File 'lib/sfrp/poly/expression.rb', line 124 def to_mono(monofier) raise UndeterminableTypeError.new(@id, @typing) unless @typing.mono? M.v_e(monofier.use_type(@typing), @var_str) end |
#typing(_set, var_env) ⇒ Object
112 113 114 |
# File 'lib/sfrp/poly/expression.rb', line 112 def typing(_set, var_env) @typing = var_env[@var_str] end |