8

アプリケーション固有の YAML タグの使用方法がよくわかりません。おそらく、それらの使用方法がまったく間違っているためです。構成ファイルに YAML を使用しており、タグを使用して構成ローダーに、データを解析する必要があるデータ型 (アプリケーション固有のデータ型) に関するヒントを提供したいと考えていました。

また、Cでlibyamlを使用しています。

だから私は次のようなことをしようとしています...

shapes:  
  square: "0,4,8,16"  
  circle: "5,10"  

私のアプリでは、タグをヒントとして使用して、square の値を square データ構造にロードし、circle の値を circle データ構造にロードできるようにしたいと考えています (これらの値は、この例では何の意味もありません)。

だから私は現在やっています:

shapes:  
  square: !square "0,4,8,16"  
  circle: !circle "5,10"  

スカラー「0,4,8,16」が渡されると、Libyaml は「!square」のタグを提供します。このタグを使用してローダーにスカラーの処理方法のヒントを提供することは有効ですか?

それは私にとってはうまくいくので、それが適切かどうか知りたいです。そうでない場合、どうすればこれをより適切にすることができますか。

ありがとう。

4

1 に答える 1

4

これは古い質問であることは知っていますが、とにかく以前に !int などが yaml ファイルで使用されているのを見たことがあるので、Yaml 1.2 Spec # Tagsで仕様を調べに行きました。

application specific tag: !something |
 The semantics of the tag
 above may be different for
 different documents.

ドキュメントによると、タグの意図した使用法はアプリケーション固有のタグに対して正しいようです。

于 2011-02-04T21:33:27.243 に答える