Class: Node
Overview
Node
Node の直接の子クラス: C_EXP, Type, BaseVal, BDNode(ほとんどのものは BDNode の子クラス) Node に (BDNodeにも) 入らないもの: Token, Import, Import_C, Generate
owner を持たないものが Node となる エラーは、cdl_error を通じて報告する (意味解析が構文解析後に行われる場合には、行番号が正しく出力できる
Direct Known Subclasses
BDNode, BaseVal, C_EXP, DomainType, Expression, Generate, Import, Import_C, MultiPlugin, NamespacePath, Plugin, Type
Instance Method Summary
collapse
-
#cdl_error(message, *arg) ⇒ Object
エラーを出力する.
-
#cdl_error2(locale, message, *arg) ⇒ Object
エラーを出力する locale:: Array(locale info) : 構文解析中は無視される.
-
#cdl_error3(locale, message, *arg) ⇒ Object
エラーを出力する locale:: Array(locale info) 構文解析中 cdl_error2 では locale が無視されるため、別に locale を出力する.
-
#cdl_info(message, *arg) ⇒ Object
情報を表示する.
-
#cdl_info2(locale, message, *arg) ⇒ Object
情報を表示する.
-
#cdl_warning(message, *arg) ⇒ Object
ウォーニング出力する.
-
#cdl_warning2(locale, message, *arg) ⇒ Object
ウォーニング出力する.
-
#get_locale ⇒ Object
-
#initialize ⇒ Node
constructor
- @locale
-
[@file, @lineno, @col].
-
#locale_str ⇒ Object
-
#set_locale(locale) ⇒ Object
Constructor Details
#initialize ⇒ Node
- @locale
- @file, @lineno, @col
53
54
55
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 53
def initialize
@locale = Generator.current_locale
end
|
Instance Method Details
#cdl_error(message, *arg) ⇒ Object
58
59
60
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 58
def cdl_error(message, *arg)
Generator.error2(@locale, message, *arg)
end
|
#cdl_error2(locale, message, *arg) ⇒ Object
エラーを出力する
- locale
-
Array(locale info) : 構文解析中は無視される
64
65
66
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 64
def cdl_error2(locale, message, *arg)
Generator.error2(locale, message, *arg)
end
|
#cdl_error3(locale, message, *arg) ⇒ Object
エラーを出力する
- locale
-
Array(locale info)
構文解析中 cdl_error2 では locale が無視されるため、別に locale を出力する
71
72
73
74
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 71
def cdl_error3(locale, message, *arg)
Generator.error(message, *arg)
Console.puts "check: #{locale[0]}: line #{locale[1]} for above error"
end
|
#cdl_info(message, *arg) ⇒ Object
87
88
89
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 87
def cdl_info(message, *arg)
Generator.info2(@locale, message, *arg)
end
|
#cdl_info2(locale, message, *arg) ⇒ Object
92
93
94
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 92
def cdl_info2(locale, message, *arg)
Generator.info2(locale, message, *arg)
end
|
#cdl_warning(message, *arg) ⇒ Object
77
78
79
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 77
def cdl_warning(message, *arg)
Generator.warning2(@locale, message, *arg)
end
|
#cdl_warning2(locale, message, *arg) ⇒ Object
82
83
84
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 82
def cdl_warning2(locale, message, *arg)
Generator.warning2(locale, message, *arg)
end
|
#get_locale ⇒ Object
96
97
98
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 96
def get_locale
@locale
end
|
#locale_str ⇒ Object
104
105
106
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 104
def locale_str
"locale=( #{@locale[0]}, #{@locale[1]} )"
end
|
#set_locale(locale) ⇒ Object
100
101
102
|
# File 'lib/tecsgen/core/syntaxobj.rb', line 100
def set_locale(locale)
@locale = locale
end
|