ホームページ  >  記事  >  バックエンド開発  >  個々のフィールドのマーシャリング動作を変更しながら、サードパーティ パッケージの構造を再利用するにはどうすればよいですか?

個々のフィールドのマーシャリング動作を変更しながら、サードパーティ パッケージの構造を再利用するにはどうすればよいですか?

PHPz
PHPz転載
2024-02-10 08:18:08973ブラウズ

個々のフィールドのマーシャリング動作を変更しながら、サードパーティ パッケージの構造を再利用するにはどうすればよいですか?

php エディター Zimo は、サードパーティ パッケージの構造を再利用し、単一フィールドのマーシャリング動作を変更する方法に関するヒントを共有します。サードパーティのパッケージを使用する場合、そのパッケージ内のフィールドをカスタマイズする必要がある場合があります。この記事では、継承と上書きによってこの目的を達成できる簡単な方法を紹介します。これにより、元の構造を再利用できるだけでなく、個別のニーズにも対応できます。続いては具体的な導入方法を見ていきましょう!

質問の内容

構造体を YAML にマーシャリングしたいとします。その構造体には、変更したい 1 つを除いてすべての YAML タグが定義されているとします。構造自体を変更せずに、この単一フィールドの動作を変更するにはどうすればよいでしょうか?この構造はサードパーティのパッケージからのものであると仮定します。

ここに示す例と、私の最善の試みを示します。 User 構造 (およびそれに関連する Secret 構造) はサードパーティのパッケージからのものであると想定されているため、変更することはできません。

リーリー

上記のコードの Go Playground リンクは次のとおりです: https://go.dev/play/p/ojiPv4ylCEq

回避策

これはまったく不可能です。

あなたの「最善の試み」が正しい道です。

以上が個々のフィールドのマーシャリング動作を変更しながら、サードパーティ パッケージの構造を再利用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。