Query

Struct Query 

Source
pub struct Query {
    pub proc: Option<Arc<DaggerSessionProc>>,
    pub selection: Selection,
    pub graphql_client: DynGraphQLClient,
}

Fields§

§proc: Option<Arc<DaggerSessionProc>>§selection: Selection§graphql_client: DynGraphQLClient

Implementations§

Source§

impl Query

Source

pub fn address(&self, value: impl Into<String>) -> Address

initialize an address to load directories, containers, secrets or other object types.

Source

pub fn cache_volume(&self, key: impl Into<String>) -> CacheVolume

Constructs a cache volume for a given cache key.

§Arguments
  • key - A string identifier to target this cache volume (e.g., “modules-cache”).
Source

pub fn cloud(&self) -> Cloud

Dagger Cloud configuration and state

Source

pub fn container(&self) -> Container

Creates a scratch container, with no image or metadata. To pull an image, follow up with the “from” function.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn container_opts(&self, opts: QueryContainerOpts) -> Container

Creates a scratch container, with no image or metadata. To pull an image, follow up with the “from” function.

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn current_env(&self) -> Env

Returns the current environment When called from a function invoked via an LLM tool call, this will be the LLM’s current environment, including any modifications made through calling tools. Env values returned by functions become the new environment for subsequent calls, and Changeset values returned by functions are applied to the environment’s workspace. When called from a module function outside of an LLM, this returns an Env with the current module installed, and with the current module’s source directory as its workspace.

Source

pub fn current_function_call(&self) -> FunctionCall

The FunctionCall context that the SDK caller is currently executing in. If the caller is not currently executing in a function, this will return an error.

Source

pub fn current_module(&self) -> CurrentModule

The module currently being served in the session, if any.

Source

pub fn current_type_defs(&self) -> Vec<TypeDef>

The TypeDef representations of the objects currently being served in the session.

Source

pub async fn default_platform(&self) -> Result<Platform, DaggerError>

The default platform of the engine.

Source

pub fn directory(&self) -> Directory

Creates an empty directory.

Source

pub fn engine(&self) -> Engine

The Dagger engine container configuration and state

Source

pub fn env(&self) -> Env

Initializes a new environment

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn env_opts(&self, opts: QueryEnvOpts) -> Env

Initializes a new environment

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn env_file(&self) -> EnvFile

Initialize an environment file

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn env_file_opts(&self, opts: QueryEnvFileOpts) -> EnvFile

Initialize an environment file

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn error(&self, message: impl Into<String>) -> Error

Create a new error.

§Arguments
  • message - A brief description of the error.
Source

pub fn file(&self, name: impl Into<String>, contents: impl Into<String>) -> File

Creates a file with the specified contents.

§Arguments
  • name - Name of the new file. Example: “foo.txt”
  • contents - Contents of the new file. Example: “Hello world!”
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn file_opts( &self, name: impl Into<String>, contents: impl Into<String>, opts: QueryFileOpts, ) -> File

Creates a file with the specified contents.

§Arguments
  • name - Name of the new file. Example: “foo.txt”
  • contents - Contents of the new file. Example: “Hello world!”
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn function( &self, name: impl Into<String>, return_type: impl IntoID<TypeDefId>, ) -> Function

Creates a function.

§Arguments
  • name - Name of the function, in its original format from the implementation language.
  • return_type - Return type of the function.
Source

pub fn generated_code(&self, code: impl IntoID<DirectoryId>) -> GeneratedCode

Create a code generation result, given a directory containing the generated code.

Source

pub fn git(&self, url: impl Into<String>) -> GitRepository

Queries a Git repository.

§Arguments
  • url - URL of the git repository.

Can be formatted as https://{host}/{owner}/{repo}, git@{host}:{owner}/{repo}.

Suffix “.git” is optional.

  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn git_opts<'a>( &self, url: impl Into<String>, opts: QueryGitOpts<'a>, ) -> GitRepository

Queries a Git repository.

§Arguments
  • url - URL of the git repository.

Can be formatted as https://{host}/{owner}/{repo}, git@{host}:{owner}/{repo}.

Suffix “.git” is optional.

  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn host(&self) -> Host

Queries the host environment.

Source

pub fn http(&self, url: impl Into<String>) -> File

Returns a file containing an http remote url content.

§Arguments
  • url - HTTP url to get the content from (e.g., “https://docs.dagger.io”).
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn http_opts<'a>( &self, url: impl Into<String>, opts: QueryHttpOpts<'a>, ) -> File

Returns a file containing an http remote url content.

§Arguments
  • url - HTTP url to get the content from (e.g., “https://docs.dagger.io”).
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn json(&self) -> JsonValue

Initialize a JSON value

Source

pub fn llm(&self) -> Llm

Initialize a Large Language Model (LLM)

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn llm_opts<'a>(&self, opts: QueryLlmOpts<'a>) -> Llm

Initialize a Large Language Model (LLM)

§Arguments
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn load_address_from_id(&self, id: impl IntoID<AddressId>) -> Address

Load a Address from its ID.

Source

pub fn load_binding_from_id(&self, id: impl IntoID<BindingId>) -> Binding

Load a Binding from its ID.

Source

pub fn load_cache_volume_from_id( &self, id: impl IntoID<CacheVolumeId>, ) -> CacheVolume

Load a CacheVolume from its ID.

Source

pub fn load_changeset_from_id(&self, id: impl IntoID<ChangesetId>) -> Changeset

Load a Changeset from its ID.

Source

pub fn load_cloud_from_id(&self, id: impl IntoID<CloudId>) -> Cloud

Load a Cloud from its ID.

Source

pub fn load_container_from_id(&self, id: impl IntoID<ContainerId>) -> Container

Load a Container from its ID.

Source

pub fn load_current_module_from_id( &self, id: impl IntoID<CurrentModuleId>, ) -> CurrentModule

Load a CurrentModule from its ID.

Source

pub fn load_directory_from_id(&self, id: impl IntoID<DirectoryId>) -> Directory

Load a Directory from its ID.

Source

pub fn load_engine_cache_entry_from_id( &self, id: impl IntoID<EngineCacheEntryId>, ) -> EngineCacheEntry

Load a EngineCacheEntry from its ID.

Source

pub fn load_engine_cache_entry_set_from_id( &self, id: impl IntoID<EngineCacheEntrySetId>, ) -> EngineCacheEntrySet

Load a EngineCacheEntrySet from its ID.

Source

pub fn load_engine_cache_from_id( &self, id: impl IntoID<EngineCacheId>, ) -> EngineCache

Load a EngineCache from its ID.

Source

pub fn load_engine_from_id(&self, id: impl IntoID<EngineId>) -> Engine

Load a Engine from its ID.

Source

pub fn load_enum_type_def_from_id( &self, id: impl IntoID<EnumTypeDefId>, ) -> EnumTypeDef

Load a EnumTypeDef from its ID.

Source

pub fn load_enum_value_type_def_from_id( &self, id: impl IntoID<EnumValueTypeDefId>, ) -> EnumValueTypeDef

Load a EnumValueTypeDef from its ID.

Source

pub fn load_env_file_from_id(&self, id: impl IntoID<EnvFileId>) -> EnvFile

Load a EnvFile from its ID.

Source

pub fn load_env_from_id(&self, id: impl IntoID<EnvId>) -> Env

Load a Env from its ID.

Source

pub fn load_env_variable_from_id( &self, id: impl IntoID<EnvVariableId>, ) -> EnvVariable

Load a EnvVariable from its ID.

Source

pub fn load_error_from_id(&self, id: impl IntoID<ErrorId>) -> Error

Load a Error from its ID.

Source

pub fn load_error_value_from_id( &self, id: impl IntoID<ErrorValueId>, ) -> ErrorValue

Load a ErrorValue from its ID.

Source

pub fn load_field_type_def_from_id( &self, id: impl IntoID<FieldTypeDefId>, ) -> FieldTypeDef

Load a FieldTypeDef from its ID.

Source

pub fn load_file_from_id(&self, id: impl IntoID<FileId>) -> File

Load a File from its ID.

Source

pub fn load_function_arg_from_id( &self, id: impl IntoID<FunctionArgId>, ) -> FunctionArg

Load a FunctionArg from its ID.

Source

pub fn load_function_call_arg_value_from_id( &self, id: impl IntoID<FunctionCallArgValueId>, ) -> FunctionCallArgValue

Load a FunctionCallArgValue from its ID.

Source

pub fn load_function_call_from_id( &self, id: impl IntoID<FunctionCallId>, ) -> FunctionCall

Load a FunctionCall from its ID.

Source

pub fn load_function_from_id(&self, id: impl IntoID<FunctionId>) -> Function

Load a Function from its ID.

Source

pub fn load_generated_code_from_id( &self, id: impl IntoID<GeneratedCodeId>, ) -> GeneratedCode

Load a GeneratedCode from its ID.

Source

pub fn load_git_ref_from_id(&self, id: impl IntoID<GitRefId>) -> GitRef

Load a GitRef from its ID.

Source

pub fn load_git_repository_from_id( &self, id: impl IntoID<GitRepositoryId>, ) -> GitRepository

Load a GitRepository from its ID.

Source

pub fn load_host_from_id(&self, id: impl IntoID<HostId>) -> Host

Load a Host from its ID.

Source

pub fn load_input_type_def_from_id( &self, id: impl IntoID<InputTypeDefId>, ) -> InputTypeDef

Load a InputTypeDef from its ID.

Source

pub fn load_interface_type_def_from_id( &self, id: impl IntoID<InterfaceTypeDefId>, ) -> InterfaceTypeDef

Load a InterfaceTypeDef from its ID.

Source

pub fn load_json_value_from_id(&self, id: impl IntoID<JsonValueId>) -> JsonValue

Load a JSONValue from its ID.

Source

pub fn load_llm_from_id(&self, id: impl IntoID<Llmid>) -> Llm

Load a LLM from its ID.

Source

pub fn load_llm_token_usage_from_id( &self, id: impl IntoID<LlmTokenUsageId>, ) -> LlmTokenUsage

Load a LLMTokenUsage from its ID.

Source

pub fn load_label_from_id(&self, id: impl IntoID<LabelId>) -> Label

Load a Label from its ID.

Source

pub fn load_list_type_def_from_id( &self, id: impl IntoID<ListTypeDefId>, ) -> ListTypeDef

Load a ListTypeDef from its ID.

Source

pub fn load_module_config_client_from_id( &self, id: impl IntoID<ModuleConfigClientId>, ) -> ModuleConfigClient

Load a ModuleConfigClient from its ID.

Source

pub fn load_module_from_id(&self, id: impl IntoID<ModuleId>) -> Module

Load a Module from its ID.

Source

pub fn load_module_source_from_id( &self, id: impl IntoID<ModuleSourceId>, ) -> ModuleSource

Load a ModuleSource from its ID.

Source

pub fn load_object_type_def_from_id( &self, id: impl IntoID<ObjectTypeDefId>, ) -> ObjectTypeDef

Load a ObjectTypeDef from its ID.

Source

pub fn load_port_from_id(&self, id: impl IntoID<PortId>) -> Port

Load a Port from its ID.

Source

pub fn load_sdk_config_from_id(&self, id: impl IntoID<SdkConfigId>) -> SdkConfig

Load a SDKConfig from its ID.

Source

pub fn load_scalar_type_def_from_id( &self, id: impl IntoID<ScalarTypeDefId>, ) -> ScalarTypeDef

Load a ScalarTypeDef from its ID.

Source

pub fn load_search_result_from_id( &self, id: impl IntoID<SearchResultId>, ) -> SearchResult

Load a SearchResult from its ID.

Source

pub fn load_search_submatch_from_id( &self, id: impl IntoID<SearchSubmatchId>, ) -> SearchSubmatch

Load a SearchSubmatch from its ID.

Source

pub fn load_secret_from_id(&self, id: impl IntoID<SecretId>) -> Secret

Load a Secret from its ID.

Source

pub fn load_service_from_id(&self, id: impl IntoID<ServiceId>) -> Service

Load a Service from its ID.

Source

pub fn load_socket_from_id(&self, id: impl IntoID<SocketId>) -> Socket

Load a Socket from its ID.

Source

pub fn load_source_map_from_id(&self, id: impl IntoID<SourceMapId>) -> SourceMap

Load a SourceMap from its ID.

Source

pub fn load_terminal_from_id(&self, id: impl IntoID<TerminalId>) -> Terminal

Load a Terminal from its ID.

Source

pub fn load_type_def_from_id(&self, id: impl IntoID<TypeDefId>) -> TypeDef

Load a TypeDef from its ID.

Source

pub fn module(&self) -> Module

Create a new module.

Source

pub fn module_source(&self, ref_string: impl Into<String>) -> ModuleSource

Create a new module source instance from a source ref string

§Arguments
  • ref_string - The string ref representation of the module source
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn module_source_opts<'a>( &self, ref_string: impl Into<String>, opts: QueryModuleSourceOpts<'a>, ) -> ModuleSource

Create a new module source instance from a source ref string

§Arguments
  • ref_string - The string ref representation of the module source
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn secret(&self, uri: impl Into<String>) -> Secret

Creates a new secret.

§Arguments
  • uri - The URI of the secret store
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn secret_opts<'a>( &self, uri: impl Into<String>, opts: QuerySecretOpts<'a>, ) -> Secret

Creates a new secret.

§Arguments
  • uri - The URI of the secret store
  • opt - optional argument, see inner type for documentation, use _opts to use
Source

pub fn set_secret( &self, name: impl Into<String>, plaintext: impl Into<String>, ) -> Secret

Sets a secret given a user defined name to its plaintext and returns the secret. The plaintext value is limited to a size of 128000 bytes.

§Arguments
  • name - The user defined name for this secret
  • plaintext - The plaintext of the secret
Source

pub fn source_map( &self, filename: impl Into<String>, line: isize, column: isize, ) -> SourceMap

Creates source map metadata.

§Arguments
  • filename - The filename from the module source.
  • line - The line number within the filename.
  • column - The column number within the line.
Source

pub fn type_def(&self) -> TypeDef

Create a new TypeDef.

Source

pub async fn version(&self) -> Result<String, DaggerError>

Get the current Dagger Engine version.

Trait Implementations§

Source§

impl Clone for Query

Source§

fn clone(&self) -> Query

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

§

impl Freeze for Query

§

impl !RefUnwindSafe for Query

§

impl Send for Query

§

impl Sync for Query

§

impl Unpin for Query

§

impl !UnwindSafe for Query

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,