2016-08-06 4 views

答えて

5

1つのフィールドに複数のタグを使用することはできません。このような機能が必要な場合は、構造体の代わりにtype Info map[string]interface{}を使用できます。

また、構造内で両方の型を使用して、正しいパターンを返すメソッドDetails()を作成することができます。

type Animation struct { 
    Name string `json:"name"` 
    Repeat int  `json:"repeat"` 
    Speed uint `json:"speed"` 
    Pattern Pattern `json:"pattern"` 
    Frame Pattern `json:"frames"` 
} 

func (a Animation) Details() Pattern { 
    if a.Pattern == nil { 
     return a.Frame 
    } 
    return a.Pattern 
} 
+1

ありがとうございました。私はレトロな互換性のためにこのようなものが必要でした。これはいい。 –

関連する問題