プライベートモジュールタイプを使用した構造体メンバーの定義

デビッド・フォーゲルソン

私は構造体を返すbuild()関数を持つモジュールの束を使用してきました。ただし、それらをバンドルするために独自の「スーパー」構造体を作成しようとすると、エラーが発生しますmodule `xxx` is private rustc(E0603)特性がある場合、個々の変数をパラメーターとして渡すことはできますが、構造体用にそれを定義/ボックス化する方法を理解できません。

私が打っているこの現在の例は、ハイパークライアントを作成するときです。

// Error due to privacy and cannot use the trait to define the member type
// Both the "hyper_rustls::connector" and "hyper::client::connect::http" modules are private.
struct SecureClient {
    client: hyper::client::Client<
                hyper_rustls::connector::HttpsConnector<hyper::client::connect::http::HttpConnector>> 
}

// Works, but passing the client everywhere as an individual variable is not realistic.
fn use_client(client: hyper::client::Client<impl hyper::client::connect::Connect>) -> () {
    ()
}

let https_conn = hyper_rustls::HttpsConnector::new(4);
let client: hyper::client::Client<_, hyper::Body> = hyper::Client::builder().build(https_conn);

Rustに慣れていないので、自分がやろうとしていることに対して適切な専門用語が何であるかを理解するのに苦労しています。これに関するドキュメントまたはコード例へのリンクをいただければ幸いです。

ありがとう

Entcraft44

私はあなたが何をしたいのかわからないんだけど、あなたは、公共の再輸出を使用することができるhyper_rustls::HttpsConnector代わりに、プライベートのhyper_rustls::connector::HttpsConnectorと公共の再輸出hyper::client::HttpConnectorの代わりにプライベートhyper::client::connect::http::HttpConnector再エクスポートについては、https//doc.rust-lang.org/book/ch07-04-bringing-paths-into-scope-with-the-use-keyword.html#re-exporting-namesで読むことができます。 -with-pub-use

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

プライベートメンバー変数としてのみ使用される構造体をどこで定義しますか?

分類Dev

プライベートサブ構造体からの静的メンバーの定義のエイリアス

分類Dev

構造体へのポインタを使用して構造体メンバーをループする場合

分類Dev

クラスメンバー関数の戻り型をプライベート構造体のオブジェクトとして設定する方法

分類Dev

タイプされたmemoryviewをメンバーとして持つ構造体定義

分類Dev

ゲッターから返された構造体からプライベートメンバーを盗む

分類Dev

VBA:パブリックオブジェクトモジュールのイベントパラメータとしてのユーザー定義タイプ

分類Dev

モジュールをインポートするとき、構造体のフィールドはプライベートです

分類Dev

プライベートネスト構造体の静的メンバーを宣言/初期化します

分類Dev

プライベートコンストラクターを使用したF#構造体宣言

分類Dev

`Fn`パラメータの1つを修正せずに、構造体定義にバインドされた` Fn`トレイトを指定します

分類Dev

別のモジュールからvecに値を出力します:構造体のフィールドはプライベートです

分類Dev

メインプログラムのヘッダーで定義されたスタック構造体の配列のデータ型を定義する

分類Dev

ユニットタイプの単一のプライベートフィールドで構造体を定義する理由

分類Dev

ランタイムモジュール構造体と他の構造体および列挙型でインポートするための適切なJSON型定義

分類Dev

Cのポインタを使用した構造体のバブルソート

分類Dev

タプルをRustの構造体のメンバーとして定義することは可能ですか?

分類Dev

別のモジュールからパブリックタプル構造体(プライベートフィールドを含む)をインスタンス化する方法は?

分類Dev

錆びたハッシュマップ内の構造体のベクトルを修正します。returnステートメントでの明示的なライフタイムアノテーション

分類Dev

モジュールグローバルスコープを使用して、プロトタイプからアクセス可能なプライベートクラスフィールドを定義します

分類Dev

Azureパイプラインを使用したS3へのRDSデータベースのバックアップ、エラーSQLPowershellモジュールがエージェントマシンにインストールされていません。

分類Dev

Boost Spirit Qi:タプルのベクトルを使用した構造体へのバインド

分類Dev

ポインタを使用した構造体のメンバーの初期化(C)

分類Dev

Cのforループで構造体ポインタを使用するとセグメンテーションエラーが発生しました

分類Dev

明らかにするモジュールパターンのプライベートメンバー

分類Dev

定義されたクラスをテンプレートパラメータ内の構造体として宣言します

分類Dev

コンストラクターを使用して、定義された構造体へのポインターの配列を初期化する

分類Dev

Swiftはcで定義された構造体のダブルポインターを定義します

分類Dev

Pythonでのプライベートモジュール関数の定義

Related 関連記事

  1. 1

    プライベートメンバー変数としてのみ使用される構造体をどこで定義しますか?

  2. 2

    プライベートサブ構造体からの静的メンバーの定義のエイリアス

  3. 3

    構造体へのポインタを使用して構造体メンバーをループする場合

  4. 4

    クラスメンバー関数の戻り型をプライベート構造体のオブジェクトとして設定する方法

  5. 5

    タイプされたmemoryviewをメンバーとして持つ構造体定義

  6. 6

    ゲッターから返された構造体からプライベートメンバーを盗む

  7. 7

    VBA:パブリックオブジェクトモジュールのイベントパラメータとしてのユーザー定義タイプ

  8. 8

    モジュールをインポートするとき、構造体のフィールドはプライベートです

  9. 9

    プライベートネスト構造体の静的メンバーを宣言/初期化します

  10. 10

    プライベートコンストラクターを使用したF#構造体宣言

  11. 11

    `Fn`パラメータの1つを修正せずに、構造体定義にバインドされた` Fn`トレイトを指定します

  12. 12

    別のモジュールからvecに値を出力します:構造体のフィールドはプライベートです

  13. 13

    メインプログラムのヘッダーで定義されたスタック構造体の配列のデータ型を定義する

  14. 14

    ユニットタイプの単一のプライベートフィールドで構造体を定義する理由

  15. 15

    ランタイムモジュール構造体と他の構造体および列挙型でインポートするための適切なJSON型定義

  16. 16

    Cのポインタを使用した構造体のバブルソート

  17. 17

    タプルをRustの構造体のメンバーとして定義することは可能ですか?

  18. 18

    別のモジュールからパブリックタプル構造体(プライベートフィールドを含む)をインスタンス化する方法は?

  19. 19

    錆びたハッシュマップ内の構造体のベクトルを修正します。returnステートメントでの明示的なライフタイムアノテーション

  20. 20

    モジュールグローバルスコープを使用して、プロトタイプからアクセス可能なプライベートクラスフィールドを定義します

  21. 21

    Azureパイプラインを使用したS3へのRDSデータベースのバックアップ、エラーSQLPowershellモジュールがエージェントマシンにインストールされていません。

  22. 22

    Boost Spirit Qi:タプルのベクトルを使用した構造体へのバインド

  23. 23

    ポインタを使用した構造体のメンバーの初期化(C)

  24. 24

    Cのforループで構造体ポインタを使用するとセグメンテーションエラーが発生しました

  25. 25

    明らかにするモジュールパターンのプライベートメンバー

  26. 26

    定義されたクラスをテンプレートパラメータ内の構造体として宣言します

  27. 27

    コンストラクターを使用して、定義された構造体へのポインターの配列を初期化する

  28. 28

    Swiftはcで定義された構造体のダブルポインターを定義します

  29. 29

    Pythonでのプライベートモジュール関数の定義

ホットタグ

アーカイブ