Project

General

Profile

Actions

Bug #5358

closed

YAML 中のタグの扱いについて

Added by sho-h (Sho Hashimoto) about 13 years ago. Updated over 12 years ago.

Status:
Closed
Target version:
ruby -v:
ruby 1.9.2p290
Backport:
[ruby-dev:44529]

Description

http://yaml.org/ によると、以下はいずれも同じグローバルタグを指定してると思うのですが、結果が異なります。

YAML.load("--- !tag:yaml.org,2002:str foo")

=> #<YAML::DomainType:0xf71d4780 @domain="yaml.org,2002", @type_id="tag:yaml.org,2002:str", @value="foo">

YAML.load("--- !!str foo")

=> #<YAML::PrivateType:0xf71e0a44 @type_id="str", @value="foo">

一方、以下はいずれも同じ結果になります。

YAML.load("--- foo") # => "foo"
YAML.load("--- !str foo") # => "foo"
YAML.load("--- !tag:yaml.org,2002:str foo") # => "foo"

これらについて、もしかして以下のバグがあるのではないでしょうか。

  • !str は間違ってグローバルタグとして扱われている
  • !tag:yaml.org,2002 は間違ってグローバルタグとして扱われている
  • !!str はグローバルタグとして扱われていない
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0