Skip to main content

DeveloperKnowledge

Struct DeveloperKnowledge 

Source
pub struct DeveloperKnowledge { /* private fields */ }
Expand description

Implements a client for the Developer Knowledge API.

§Example

async fn sample(
   document_id: &str,
) -> anyhow::Result<()> {
    let client = DeveloperKnowledge::builder().build().await?;
    let response = client.get_document()
        .set_name(format!("documents/{document_id}"))
        .send().await?;
    println!("response {:?}", response);
    Ok(())
}

§Service Description

The Developer Knowledge API provides programmatic access to Google’s public developer documentation, enabling you to integrate this knowledge base into your own applications and workflows.

The API is designed to be the canonical source for machine-readable access to Google’s developer documentation.

A typical use case is to first use DeveloperKnowledge.SearchDocumentChunks to find relevant page URIs based on a query, and then use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to fetch the full content of the top results.

All document content is provided in Markdown format.

§Configuration

To configure DeveloperKnowledge use the with_* methods in the type returned by builder(). The default configuration should work for most applications. Common configuration changes include

§Pooling and Cloning

DeveloperKnowledge holds a connection pool internally, it is advised to create one and reuse it. You do not need to wrap DeveloperKnowledge in an Rc or Arc to reuse it, because it already uses an Arc internally.

Implementations§

Source§

impl DeveloperKnowledge

Source

pub fn builder() -> ClientBuilder

Returns a builder for DeveloperKnowledge.

let client = DeveloperKnowledge::builder().build().await?;
Source

pub fn from_stub<T>(stub: impl Into<Arc<T>>) -> Self
where T: DeveloperKnowledge + 'static,

Creates a new client from the provided stub.

The most common case for calling this function is in tests mocking the client’s behavior.

Source

pub fn search_document_chunks(&self) -> SearchDocumentChunks

Searches for developer knowledge across Google’s developer documentation. Returns DocumentChunks based on the user’s query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results.

§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_developers_knowledge_v1::Result;
async fn sample(
   client: &DeveloperKnowledge
) -> Result<()> {
    let mut list = client.search_document_chunks()
        /* set fields */
        .by_item();
    while let Some(item) = list.next().await.transpose()? {
        println!("{:?}", item);
    }
    Ok(())
}
Source

pub fn get_document(&self) -> GetDocument

Retrieves a single document with its full Markdown content.

§Example
use google_developers_knowledge_v1::Result;
async fn sample(
   client: &DeveloperKnowledge, document_id: &str
) -> Result<()> {
    let response = client.get_document()
        .set_name(format!("documents/{document_id}"))
        .send().await?;
    println!("response {:?}", response);
    Ok(())
}
Source

pub fn batch_get_documents(&self) -> BatchGetDocuments

Retrieves multiple documents, each with its full Markdown content.

§Example
use google_developers_knowledge_v1::Result;
async fn sample(
   client: &DeveloperKnowledge
) -> Result<()> {
    let response = client.batch_get_documents()
        /* set fields */
        .send().await?;
    println!("response {:?}", response);
    Ok(())
}
Source

pub fn answer_query(&self) -> AnswerQuery

Answers a query using grounded generation.

§Example
use google_developers_knowledge_v1::Result;
async fn sample(
   client: &DeveloperKnowledge
) -> Result<()> {
    let response = client.answer_query()
        /* set fields */
        .send().await?;
    println!("response {:?}", response);
    Ok(())
}

Trait Implementations§

Source§

impl Clone for DeveloperKnowledge

Source§

fn clone(&self) -> DeveloperKnowledge

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for DeveloperKnowledge

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

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 = !

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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