種類
- 特異メソッド (144)
- クラス (78)
- インスタンスメソッド (75)
- 文書 (71)
ライブラリ
- ビルトイン (53)
-
net
/ http (12) -
net
/ protocol (12) -
net
/ smtp (12) - psych (186)
-
ripper
/ lexer (10) -
shell
/ command-processor (12)
クラス
-
Psych
:: SyntaxError (72) - Ripper (10)
-
Shell
:: CommandProcessor (12) - SyntaxError (3)
モジュール
- Psych (102)
-
RubyVM
:: AbstractSyntaxTree (20)
キーワード
- HTTPHeaderSyntaxError (12)
-
NEWS for Ruby 2
. 7 . 0 (6) -
NEWS for Ruby 3
. 0 . 0 (5) - ProtoSyntaxError (12)
- Range (6)
- SMTPSyntaxError (12)
- ScriptError (12)
-
alias
_ command (12) - column (12)
- context (12)
- file (12)
- lex (5)
- line (12)
- load (15)
-
load
_ documents (8) -
load
_ file (12) -
load
_ stream (24) - offset (12)
- parse (22)
-
parse
_ file (22) - path (3)
- problem (12)
-
ruby 1
. 6 feature (12) -
safe
_ load (19) - tokenize (5)
- クラス/メソッドの定義 (12)
- パターンマッチ (12)
- メソッド呼び出し(super・ブロック付き・yield) (12)
- 制御構造 (12)
検索結果
先頭5件
-
Psych
:: SyntaxError # file -> String|nil (3000.0) -
エラーが生じたファイルの名前を返します。
エラーが生じたファイルの名前を返します。
Psych.load_file で指定したファイルの名前や
Psych.load の第2引数で指定した名前が返されます。
パース時にファイル名を指定しなかった場合は nil が返されます。 -
Psych
:: SyntaxError # line -> Integer (3000.0) -
エラーが生じた行番号を返します。
エラーが生じた行番号を返します。 -
Psych
:: SyntaxError # problem -> String (3000.0) -
生じたエラーの中身を文字列で返します。
生じたエラーの中身を文字列で返します。 -
制御構造 (30.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...て、何らかの値を返すものが
あります(返さないものもあります。値を返さない式を代入式の右辺に置くと
syntax error になります)。
RubyはC言語やPerlから引き継いだ制御構造を持ちますが、
その他にd:spec/call#blockという
制御......場合には例外 SyntaxError が発生
します。
=== 例外処理
====[a:raise] raise
//emlist[例][ruby]{
raise "you lose" # 例外 RuntimeError を発生させる
# 以下の二つは SyntaxError を発生させる
raise SyntaxError, "invalid syntax"
raise SyntaxError.new("invalid syntax"......では書けません。全て SyntaxErrorになります。
def foo
BEGIN { p "begin" }
end
# => -e:2: syntax error, unexpected keyword_BEGIN
class Foo
BEGIN { p "begin" }
end
# => -e:2: syntax error, unexpected keyword_BEGIN... -
NEWS for Ruby 3
. 0 . 0 (18.0) -
NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...have been removed.
16131 17136
* yield in singleton class definitions in methods is now a SyntaxError
instead of a warning. yield in a class definition outside of a method
is now a SyntaxError instead of a LocalJumpError. 15575
* When a class variable is overtaken by the same defini......tionally, accessing a
class variable from the toplevel scope is now a RuntimeError.
14541
* Assigning to a numbered parameter is now a SyntaxError instead of
a warning.
== Command line options
=== `--help` option
When the environment variable `RUBY_PAGER` or `PAGER` is present and h... -
Psych
. load(yaml , filename = nil , fallback = false) -> object (18.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
...ェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り値を指定します。デフォルトは false です。
@raise Psych::SyntaxError YAMLドキュメントに文法エラ......by]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", "file.txt")
rescue Psych::SyntaxError => ex
p ex.file # => 'file.txt'
p ex.message # => "(file.txt): found character that cannot start any token while scanning for the next t... -
Psych
. load(yaml , filename = nil , fallback: false , symbolize _ names: false) -> object (18.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
...た例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り値を指定......Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.parse
//emlist[例][ruby]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", "file.txt")
rescue Psych::SyntaxError => ex......h::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.parse
//emlist[例][ruby]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", filename: "file.txt")
rescue Psych::SyntaxError =... -
Psych
. load(yaml , filename: nil , fallback: false , symbolize _ names: false) -> object (18.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
...た例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り値を指定......h::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.parse
//emlist[例][ruby]{
Psych.load("--- a") # => 'a'
Psych.load("---\n - a\n - b") # => ['a', 'b']
begin
Psych.load("--- `", filename: "file.txt")
rescue Psych::SyntaxError =... -
Psych
. parse(yaml , filename = nil) -> Psych :: Nodes :: Document (18.0) -
YAML ドキュメントをパースし、YAML の AST を返します。
...。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します
@see Psych.load
/....../emlist[例][ruby]{
Psych.parse("---\n - a\n - b") # => #<Psych::Nodes::Document:...>
begin
Psych.parse("--- `", "file.txt")
rescue Psych::SyntaxError => ex
p ex.file # => 'file.txt'
p ex.message # => "(file.txt): found character that cannot start any token while scanning for the next toke... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1 , raise _ errors: false) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (18.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
...ります。
@param raise_errors true を指定すると、src にエラーがある場合に例外(SyntaxError)を発生させます。省略すると false になります。
@raise SyntaxError raise_errors が true で、src に文法エラーがある場合に発生します。
//emlist[][r......:on_kw, "nil", END],
# [[1, 12], :on_sp, " ", END],
# on_kw, "end", END
Ripper.lex("def req(true) end", raise_errors: true)
# => SyntaxError (syntax error, unexpected `true', expecting ')')
//}
Ripper.lex は分割したトークンを詳しい情報とともに返します。
返り値の... -
Ripper
. tokenize(src , filename = & # 39;-& # 39; , lineno = 1 , raise _ errors: false) -> [String] (18.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。
...ります。
@param raise_errors true を指定すると、src にエラーがある場合に例外(SyntaxError)を発生させます。省略すると false になります。
@raise SyntaxError raise_errors が true で、src に文法エラーがある場合に発生します。
//emlist[][rub......a) nil end")
# => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]
Ripper.tokenize("def req(true) end", raise_errors: true)
# => SyntaxError (syntax error, unexpected `true', expecting ')')
//}
Ripper.tokenize は空白やコメントも含め、
元の文字列にある文字は 1 バイ... -
Psych
. load _ stream(yaml , filename=nil) -> [object] (12.0) -
複数の YAML ドキュメントを含むデータを Ruby のオブジェクトに変換します。
...に用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見されたときに発生します...