Skip to main content

Project

Struct Project 

Source
pub struct Project<Vocab: ActivityVocabulary = VocabularyTypes> { /* private fields */ }
Expand description

Represents a project, a planned endeavor that involves usage of tools related to the software development lifecycle.

It may be a software project, but may also be totally unrelated to software development.

For example, it may be a book that is being written using Markdown files kept in a Git repository.

A Project object is a way to collect forge related components together under one title.

§Example

use activityforge::{Project, context};
use activitystreams_vocabulary::{
    Collection, Iri, MultibaseHeader, MultibasePublicKey, Multikey, MultikeyPublicKey, Name,
};

let id = Iri::try_from("https://dev.example/projects/wanderer").unwrap();
let name = Name::try_from("Wanderer").unwrap();
let summary = "3D nature exploration game";
let inbox = Iri::try_from("https://dev.example/projects/wanderer/inbox").unwrap();
let outbox = Iri::try_from("https://dev.example/projects/wanderer/outbox").unwrap();
let followers = Iri::try_from("https://dev.example/projects/wanderer/followers").unwrap();

let key_id = Iri::try_from("https://dev.example/aviva/treesim#main-key").unwrap();
let controller = Iri::try_from("https://dev.example/aviva/treesim").unwrap();
let encoded_multibase = "u7QGwDY2Tjn93PVFWWq02piP1NE9_XRlg-c8-jhJiHqKBHw";

let item0 = Iri::try_from("https://dev.example/repos/opengl-vegetation").unwrap();
let item1 = Iri::try_from("https://dev.example/repos/opengl-vegetation/patch-tracker").unwrap();
let item2 = Iri::try_from("https://dev.example/repos/treesim").unwrap();
let item3 = Iri::try_from("https://dev.example/repos/treesim/patch-tracker").unwrap();
let item4 = Iri::try_from("https://dev.example/repos/wanderer").unwrap();
let item5 = Iri::try_from("https://dev.example/repos/wanderer/patch-tracker").unwrap();
let item6 = Iri::try_from("https://dev.example/issue-trackers/wanderer").unwrap();

let json_str = format!(
r#"{{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    "https://forgefed.org/ns"
  ],
  "type": "Project",
  "id": "{id}",
  "name": "{name}",
  "summary": "{summary}",
  "inbox": "{inbox}",
  "outbox": "{outbox}",
  "followers": "{followers}",
  "assertionMethod": [
    {{
      "type": "Multikey",
      "id": "{key_id}",
      "controller": "{controller}",
      "publicKeyMultibase": "{encoded_multibase}"
    }}
  ],
  "components": {{
    "type": "Collection",
    "totalItems": 7,
    "items": [
      "{item0}",
      "{item1}",
      "{item2}",
      "{item3}",
      "{item4}",
      "{item5}",
      "{item6}"
    ]
  }}
}}"#
        );

let context = context::forgefed_context();

let multibase = MultibasePublicKey::new()
    .with_header(MultibaseHeader::Base64UrlNoPad)
    .with_key(MultikeyPublicKey::Ed25519([
        0xb0, 0x0d, 0x8d, 0x93, 0x8e, 0x7f, 0x77, 0x3d, 0x51, 0x56, 0x5a, 0xad, 0x36, 0xa6,
        0x23, 0xf5, 0x34, 0x4f, 0x7f, 0x5d, 0x19, 0x60, 0xf9, 0xcf, 0x3e, 0x8e, 0x12, 0x62,
        0x1e, 0xa2, 0x81, 0x1f,
    ]));

let multikey = Multikey::new_inner()
    .with_id(key_id)
    .with_controller(controller.clone())
    .with_public_key_multibase(multibase);

let items = [item0, item1, item2, item3, item4, item5, item6];
let components = Collection::new_inner()
    .with_total_items(items.len() as u64)
    .with_items(items);

let repository = Project::new()
    .with_context_property(context)
    .with_id(id)
    .with_name(name)
    .with_summary(summary)
    .with_inbox(inbox)
    .with_outbox(outbox)
    .with_followers(followers)
    .with_assertion_method([multikey])
    .with_components(components);

assert_eq!(serde_json::to_string_pretty(&repository).unwrap(), json_str);
assert_eq!(
    serde_json::from_str::<Project>(json_str.as_str()).unwrap(),
    repository
);

Implementations§

Source§

impl<Vocab: ActivityVocabulary + From<ActorType>> Project<Vocab>

Source

pub fn new() -> Self

Creates a new Project.

Source

pub fn new_inner() -> Self

Creates a new Project for use as an inner member of another object.

Encodes the type without the @context field.

Source

pub fn new_kind(kind: Vocab) -> Self

Creates a new Project.

Source

pub fn without_context_property(self) -> Self

Builder function that unsets the @context field.

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub fn kind(&self) -> &Vocab

Gets the Project kind.

Provides the ActivityStream Vocabulary type.

Source

pub fn set_kind<I: Into<Vocab>>(&mut self, val: I)

Sets the Project kind.

Provides the ActivityStream Vocabulary type.

Source

pub fn with_kind<I: Into<Vocab>>(self, val: I) -> Self

Builder function that sets the Project kind.

Provides the ActivityStream Vocabulary type.

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub fn id(&self) -> Option<&Iri>

Gets the Project id.

Provides the globally unique identifier for an Object.

Source

pub fn set_id<I: Into<Iri>>(&mut self, val: I)

Sets the Project id.

Provides the globally unique identifier for an Object.

Source

pub fn unset_id(&mut self) -> Option<Iri>

Unsets the Project id.

Provides the globally unique identifier for an Object.

Source

pub fn with_id<I: Into<Iri>>(self, val: I) -> Self

Builder function that sets the Project id.

Provides the globally unique identifier for an Object.

Source

pub fn context_property(&self) -> Option<&Context>

Gets the Project context_property.

Represents the special @context property to define the processing context.

The value of the @context property is defined by the JSON-LD specification.

Source

pub fn set_context_property<I: Into<Context>>(&mut self, val: I)

Sets the Project context_property.

Represents the special @context property to define the processing context.

The value of the @context property is defined by the JSON-LD specification.

Source

pub fn unset_context_property(&mut self) -> Option<Context>

Unsets the Project context_property.

Represents the special @context property to define the processing context.

The value of the @context property is defined by the JSON-LD specification.

Source

pub fn with_context_property<I: Into<Context>>(self, val: I) -> Self

Builder function that sets the Project context_property.

Represents the special @context property to define the processing context.

The value of the @context property is defined by the JSON-LD specification.

Source

pub fn name(&self) -> Option<&Name>

Gets the Project name.

A simple, human-readable, plain-text name for the object.

HTML markup MUST NOT be included.

The name MAY be expressed using multiple language-tagged values.

Source

pub fn set_name<I: Into<Name>>(&mut self, val: I)

Sets the Project name.

A simple, human-readable, plain-text name for the object.

HTML markup MUST NOT be included.

The name MAY be expressed using multiple language-tagged values.

Source

pub fn unset_name(&mut self) -> Option<Name>

Unsets the Project name.

A simple, human-readable, plain-text name for the object.

HTML markup MUST NOT be included.

The name MAY be expressed using multiple language-tagged values.

Source

pub fn with_name<I: Into<Name>>(self, val: I) -> Self

Builder function that sets the Project name.

A simple, human-readable, plain-text name for the object.

HTML markup MUST NOT be included.

The name MAY be expressed using multiple language-tagged values.

Source

pub fn name_map(&self) -> Option<&NameMap>

Gets the Project name_map.

A simple, human-readable, plain-text name for the object expressed using multiple language-tagged values.

HTML markup MUST NOT be included.

Source

pub fn set_name_map<I: Into<NameMap>>(&mut self, val: I)

Sets the Project name_map.

A simple, human-readable, plain-text name for the object expressed using multiple language-tagged values.

HTML markup MUST NOT be included.

Source

pub fn unset_name_map(&mut self) -> Option<NameMap>

Unsets the Project name_map.

A simple, human-readable, plain-text name for the object expressed using multiple language-tagged values.

HTML markup MUST NOT be included.

Source

pub fn with_name_map<I: Into<NameMap>>(self, val: I) -> Self

Builder function that sets the Project name_map.

A simple, human-readable, plain-text name for the object expressed using multiple language-tagged values.

HTML markup MUST NOT be included.

Source

pub fn content_map(&self) -> Option<&LanguageMap>

Gets the Project content_map.

The content or textual representation of the Object encoded as a JSON string, expressed using multiple language-tagged values.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

Source

pub fn set_content_map<I: Into<LanguageMap>>(&mut self, val: I)

Sets the Project content_map.

The content or textual representation of the Object encoded as a JSON string, expressed using multiple language-tagged values.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

Source

pub fn unset_content_map(&mut self) -> Option<LanguageMap>

Unsets the Project content_map.

The content or textual representation of the Object encoded as a JSON string, expressed using multiple language-tagged values.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

Source

pub fn with_content_map<I: Into<LanguageMap>>(self, val: I) -> Self

Builder function that sets the Project content_map.

The content or textual representation of the Object encoded as a JSON string, expressed using multiple language-tagged values.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

Source

pub fn summary_map(&self) -> Option<&LanguageMap>

Gets the Project summary_map.

A natural language summarization of the object encoded as HTML, expressed as multiple language-tagged summaries.

Source

pub fn set_summary_map<I: Into<LanguageMap>>(&mut self, val: I)

Sets the Project summary_map.

A natural language summarization of the object encoded as HTML, expressed as multiple language-tagged summaries.

Source

pub fn unset_summary_map(&mut self) -> Option<LanguageMap>

Unsets the Project summary_map.

A natural language summarization of the object encoded as HTML, expressed as multiple language-tagged summaries.

Source

pub fn with_summary_map<I: Into<LanguageMap>>(self, val: I) -> Self

Builder function that sets the Project summary_map.

A natural language summarization of the object encoded as HTML, expressed as multiple language-tagged summaries.

Source

pub fn duration(&self) -> Option<&Duration>

Gets the Project duration.

When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object’s approximate duration.

The value MUST be expressed as an xsd:duration as defined by xmlschema11-2.

Source

pub fn set_duration<I: Into<Duration>>(&mut self, val: I)

Sets the Project duration.

When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object’s approximate duration.

The value MUST be expressed as an xsd:duration as defined by xmlschema11-2.

Source

pub fn unset_duration(&mut self) -> Option<Duration>

Unsets the Project duration.

When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object’s approximate duration.

The value MUST be expressed as an xsd:duration as defined by xmlschema11-2.

Source

pub fn with_duration<I: Into<Duration>>(self, val: I) -> Self

Builder function that sets the Project duration.

When the object describes a time-bound resource, such as an audio or video, a meeting, etc, the duration property indicates the object’s approximate duration.

The value MUST be expressed as an xsd:duration as defined by xmlschema11-2.

Source

pub fn source(&self) -> Option<&ContentItem>

Gets the Project source.

Represents the source of the content field.

Source

pub fn set_source<I: Into<ContentItem>>(&mut self, val: I)

Sets the Project source.

Represents the source of the content field.

Source

pub fn unset_source(&mut self) -> Option<ContentItem>

Unsets the Project source.

Represents the source of the content field.

Source

pub fn with_source<I: Into<ContentItem>>(self, val: I) -> Self

Builder function that sets the Project source.

Represents the source of the content field.

Source

pub fn proof(&self) -> Option<&DataIntegrityProof>

Gets the Project proof.

Represents a DataIntegrityProof.

Source

pub fn set_proof<I: Into<DataIntegrityProof>>(&mut self, val: I)

Sets the Project proof.

Represents a DataIntegrityProof.

Source

pub fn unset_proof(&mut self) -> Option<DataIntegrityProof>

Unsets the Project proof.

Represents a DataIntegrityProof.

Source

pub fn with_proof<I: Into<DataIntegrityProof>>(self, val: I) -> Self

Builder function that sets the Project proof.

Represents a DataIntegrityProof.

Source

pub fn url(&self) -> Option<&LinkItems>

Gets the Project url.

Identifies one or more links to representations of the object

Source

pub fn set_url<I: Into<LinkItems>>(&mut self, val: I)

Sets the Project url.

Identifies one or more links to representations of the object

Source

pub fn unset_url(&mut self) -> Option<LinkItems>

Unsets the Project url.

Identifies one or more links to representations of the object

Source

pub fn with_url<I: Into<LinkItems>>(self, val: I) -> Self

Builder function that sets the Project url.

Identifies one or more links to representations of the object

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub fn content(&self) -> Option<&str>

Gets the Project content.

The content or textual representation of the Object encoded as a JSON string.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

The content MAY be expressed using multiple language-tagged values.

Source

pub fn set_content<I: Into<String>>(&mut self, val: I)

Sets the Project content.

The content or textual representation of the Object encoded as a JSON string.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

The content MAY be expressed using multiple language-tagged values.

Source

pub fn unset_content(&mut self) -> Option<String>

Unsets the Project content.

The content or textual representation of the Object encoded as a JSON string.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

The content MAY be expressed using multiple language-tagged values.

Source

pub fn with_content<I: Into<String>>(self, val: I) -> Self

Builder function that sets the Project content.

The content or textual representation of the Object encoded as a JSON string.

By default, the value of content is HTML.

The mediaType property can be used in the object to indicate a different content type.

The content MAY be expressed using multiple language-tagged values.

Source

pub fn summary(&self) -> Option<&str>

Gets the Project summary.

A natural language summarization of the object encoded as HTML.

Multiple language tagged summaries MAY be provided.

Source

pub fn set_summary<I: Into<String>>(&mut self, val: I)

Sets the Project summary.

A natural language summarization of the object encoded as HTML.

Multiple language tagged summaries MAY be provided.

Source

pub fn unset_summary(&mut self) -> Option<String>

Unsets the Project summary.

A natural language summarization of the object encoded as HTML.

Multiple language tagged summaries MAY be provided.

Source

pub fn with_summary<I: Into<String>>(self, val: I) -> Self

Builder function that sets the Project summary.

A natural language summarization of the object encoded as HTML.

Multiple language tagged summaries MAY be provided.

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub fn attachment(&self) -> Option<&Items>

Gets the Project attachment.

Identifies a resource attached or related to an object that potentially requires special handling.

The intent is to provide a model that is at least semantically similar to attachments in email.

Source

pub fn set_attachment<I: Into<Items>>(&mut self, val: I)

Sets the Project attachment.

Identifies a resource attached or related to an object that potentially requires special handling.

The intent is to provide a model that is at least semantically similar to attachments in email.

Source

pub fn unset_attachment(&mut self) -> Option<Box<Items>>

Unsets the Project attachment.

Identifies a resource attached or related to an object that potentially requires special handling.

The intent is to provide a model that is at least semantically similar to attachments in email.

Source

pub fn with_attachment<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project attachment.

Identifies a resource attached or related to an object that potentially requires special handling.

The intent is to provide a model that is at least semantically similar to attachments in email.

Source

pub fn attributed_to(&self) -> Option<&Item>

Gets the Project attributed_to.

Identifies one or more entities to which this object is attributed.

The attributed entities might not be Actors.

For instance, an object might be attributed to the completion of another activity.

Source

pub fn set_attributed_to<I: Into<Item>>(&mut self, val: I)

Sets the Project attributed_to.

Identifies one or more entities to which this object is attributed.

The attributed entities might not be Actors.

For instance, an object might be attributed to the completion of another activity.

Source

pub fn unset_attributed_to(&mut self) -> Option<Box<Item>>

Unsets the Project attributed_to.

Identifies one or more entities to which this object is attributed.

The attributed entities might not be Actors.

For instance, an object might be attributed to the completion of another activity.

Source

pub fn with_attributed_to<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project attributed_to.

Identifies one or more entities to which this object is attributed.

The attributed entities might not be Actors.

For instance, an object might be attributed to the completion of another activity.

Source

pub fn audience(&self) -> Option<&Item>

Gets the Project audience.

Identifies one or more entities that represent the total population of entities for which the object can be considered to be relevant.

Source

pub fn set_audience<I: Into<Item>>(&mut self, val: I)

Sets the Project audience.

Identifies one or more entities that represent the total population of entities for which the object can be considered to be relevant.

Source

pub fn unset_audience(&mut self) -> Option<Box<Item>>

Unsets the Project audience.

Identifies one or more entities that represent the total population of entities for which the object can be considered to be relevant.

Source

pub fn with_audience<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project audience.

Identifies one or more entities that represent the total population of entities for which the object can be considered to be relevant.

Source

pub fn context(&self) -> Option<&Item>

Gets the Project context.

Identifies the context within which the object exists or an activity was performed.

The notion of “context” used is intentionally vague.

The intended function is to serve as a means of grouping objects and activities that share a common originating context or purpose.

An example could be all activities relating to a common project or event.

Source

pub fn set_context<I: Into<Item>>(&mut self, val: I)

Sets the Project context.

Identifies the context within which the object exists or an activity was performed.

The notion of “context” used is intentionally vague.

The intended function is to serve as a means of grouping objects and activities that share a common originating context or purpose.

An example could be all activities relating to a common project or event.

Source

pub fn unset_context(&mut self) -> Option<Box<Item>>

Unsets the Project context.

Identifies the context within which the object exists or an activity was performed.

The notion of “context” used is intentionally vague.

The intended function is to serve as a means of grouping objects and activities that share a common originating context or purpose.

An example could be all activities relating to a common project or event.

Source

pub fn with_context<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project context.

Identifies the context within which the object exists or an activity was performed.

The notion of “context” used is intentionally vague.

The intended function is to serve as a means of grouping objects and activities that share a common originating context or purpose.

An example could be all activities relating to a common project or event.

Source

pub fn generator(&self) -> Option<&Item>

Gets the Project generator.

Identifies the entity (e.g. an application) that generated the object.

Source

pub fn set_generator<I: Into<Item>>(&mut self, val: I)

Sets the Project generator.

Identifies the entity (e.g. an application) that generated the object.

Source

pub fn unset_generator(&mut self) -> Option<Box<Item>>

Unsets the Project generator.

Identifies the entity (e.g. an application) that generated the object.

Source

pub fn with_generator<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project generator.

Identifies the entity (e.g. an application) that generated the object.

Source

pub fn icon(&self) -> Option<&ImageItem>

Gets the Project icon.

Indicates an entity that describes an icon for this object.

The image should have an aspect ratio of one (horizontal) to one (vertical) and should be suitable for presentation at a small size.

Source

pub fn set_icon<I: Into<ImageItem>>(&mut self, val: I)

Sets the Project icon.

Indicates an entity that describes an icon for this object.

The image should have an aspect ratio of one (horizontal) to one (vertical) and should be suitable for presentation at a small size.

Source

pub fn unset_icon(&mut self) -> Option<Box<ImageItem>>

Unsets the Project icon.

Indicates an entity that describes an icon for this object.

The image should have an aspect ratio of one (horizontal) to one (vertical) and should be suitable for presentation at a small size.

Source

pub fn with_icon<I: Into<ImageItem>>(self, val: I) -> Self

Builder function that sets the Project icon.

Indicates an entity that describes an icon for this object.

The image should have an aspect ratio of one (horizontal) to one (vertical) and should be suitable for presentation at a small size.

Source

pub fn image(&self) -> Option<&ImageItem>

Gets the Project image.

Indicates an entity that describes an image for this object.

Unlike the icon property, there are no aspect ratio or display size limitations assumed.

Source

pub fn set_image<I: Into<ImageItem>>(&mut self, val: I)

Sets the Project image.

Indicates an entity that describes an image for this object.

Unlike the icon property, there are no aspect ratio or display size limitations assumed.

Source

pub fn unset_image(&mut self) -> Option<Box<ImageItem>>

Unsets the Project image.

Indicates an entity that describes an image for this object.

Unlike the icon property, there are no aspect ratio or display size limitations assumed.

Source

pub fn with_image<I: Into<ImageItem>>(self, val: I) -> Self

Builder function that sets the Project image.

Indicates an entity that describes an image for this object.

Unlike the icon property, there are no aspect ratio or display size limitations assumed.

Source

pub fn in_reply_to(&self) -> Option<&Item>

Gets the Project in_reply_to.

Indicates one or more entities for which this object is considered a response.

Source

pub fn set_in_reply_to<I: Into<Item>>(&mut self, val: I)

Sets the Project in_reply_to.

Indicates one or more entities for which this object is considered a response.

Source

pub fn unset_in_reply_to(&mut self) -> Option<Box<Item>>

Unsets the Project in_reply_to.

Indicates one or more entities for which this object is considered a response.

Source

pub fn with_in_reply_to<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project in_reply_to.

Indicates one or more entities for which this object is considered a response.

Source

pub fn location(&self) -> Option<&Item>

Gets the Project location.

Indicates one or more physical or logical locations associated with the object.

Source

pub fn set_location<I: Into<Item>>(&mut self, val: I)

Sets the Project location.

Indicates one or more physical or logical locations associated with the object.

Source

pub fn unset_location(&mut self) -> Option<Box<Item>>

Unsets the Project location.

Indicates one or more physical or logical locations associated with the object.

Source

pub fn with_location<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project location.

Indicates one or more physical or logical locations associated with the object.

Source

pub fn preview(&self) -> Option<&Item>

Gets the Project preview.

Identifies an entity that provides a preview of this object.

Source

pub fn set_preview<I: Into<Item>>(&mut self, val: I)

Sets the Project preview.

Identifies an entity that provides a preview of this object.

Source

pub fn unset_preview(&mut self) -> Option<Box<Item>>

Unsets the Project preview.

Identifies an entity that provides a preview of this object.

Source

pub fn with_preview<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project preview.

Identifies an entity that provides a preview of this object.

Source

pub fn replies(&self) -> Option<&Collection>

Gets the Project replies.

Identifies a Collection containing objects considered to be responses to this object.

Source

pub fn set_replies<I: Into<Collection>>(&mut self, val: I)

Sets the Project replies.

Identifies a Collection containing objects considered to be responses to this object.

Source

pub fn unset_replies(&mut self) -> Option<Box<Collection>>

Unsets the Project replies.

Identifies a Collection containing objects considered to be responses to this object.

Source

pub fn with_replies<I: Into<Collection>>(self, val: I) -> Self

Builder function that sets the Project replies.

Identifies a Collection containing objects considered to be responses to this object.

Source

pub fn tag(&self) -> Option<&Items>

Gets the Project tag.

One or more “tags” that have been associated with an objects.

A tag can be any kind of Object.

The key difference between attachment and tag is that the former implies association by inclusion,

while the latter implies associated by reference.

Source

pub fn set_tag<I: Into<Items>>(&mut self, val: I)

Sets the Project tag.

One or more “tags” that have been associated with an objects.

A tag can be any kind of Object.

The key difference between attachment and tag is that the former implies association by inclusion,

while the latter implies associated by reference.

Source

pub fn unset_tag(&mut self) -> Option<Box<Items>>

Unsets the Project tag.

One or more “tags” that have been associated with an objects.

A tag can be any kind of Object.

The key difference between attachment and tag is that the former implies association by inclusion,

while the latter implies associated by reference.

Source

pub fn with_tag<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project tag.

One or more “tags” that have been associated with an objects.

A tag can be any kind of Object.

The key difference between attachment and tag is that the former implies association by inclusion,

while the latter implies associated by reference.

Source

pub fn to(&self) -> Option<&Items>

Gets the Project to.

Identifies one or more entities that are part of the public primary audience of this Object.

Source

pub fn set_to<I: Into<Items>>(&mut self, val: I)

Sets the Project to.

Identifies one or more entities that are part of the public primary audience of this Object.

Source

pub fn unset_to(&mut self) -> Option<Box<Items>>

Unsets the Project to.

Identifies one or more entities that are part of the public primary audience of this Object.

Source

pub fn with_to<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project to.

Identifies one or more entities that are part of the public primary audience of this Object.

Source

pub fn bto(&self) -> Option<&Items>

Gets the Project bto.

Identifies one or more entities that are part of the private primary audience of this Object.

Source

pub fn set_bto<I: Into<Items>>(&mut self, val: I)

Sets the Project bto.

Identifies one or more entities that are part of the private primary audience of this Object.

Source

pub fn unset_bto(&mut self) -> Option<Box<Items>>

Unsets the Project bto.

Identifies one or more entities that are part of the private primary audience of this Object.

Source

pub fn with_bto<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project bto.

Identifies one or more entities that are part of the private primary audience of this Object.

Source

pub fn cc(&self) -> Option<&Items>

Gets the Project cc.

Identifies one or more entities that are part of the public secondary audience of this Object.

Source

pub fn set_cc<I: Into<Items>>(&mut self, val: I)

Sets the Project cc.

Identifies one or more entities that are part of the public secondary audience of this Object.

Source

pub fn unset_cc(&mut self) -> Option<Box<Items>>

Unsets the Project cc.

Identifies one or more entities that are part of the public secondary audience of this Object.

Source

pub fn with_cc<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project cc.

Identifies one or more entities that are part of the public secondary audience of this Object.

Source

pub fn bcc(&self) -> Option<&Items>

Gets the Project bcc.

Identifies one or more entities that are part of the private secondary audience of this Object.

Source

pub fn set_bcc<I: Into<Items>>(&mut self, val: I)

Sets the Project bcc.

Identifies one or more entities that are part of the private secondary audience of this Object.

Source

pub fn unset_bcc(&mut self) -> Option<Box<Items>>

Unsets the Project bcc.

Identifies one or more entities that are part of the private secondary audience of this Object.

Source

pub fn with_bcc<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project bcc.

Identifies one or more entities that are part of the private secondary audience of this Object.

Source

pub fn extra_fields(&self) -> Option<&Map<String, Value>>

Gets the Project extra_fields.

Source

pub fn set_extra_fields<I: Into<Map<String, Value>>>(&mut self, val: I)

Sets the Project extra_fields.

Source

pub fn unset_extra_fields(&mut self) -> Option<Box<Map<String, Value>>>

Unsets the Project extra_fields.

Source

pub fn with_extra_fields<I: Into<Map<String, Value>>>(self, val: I) -> Self

Builder function that sets the Project extra_fields.

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub const fn media_type(&self) -> Option<MimeType>

Gets the Project media_type.

When used on a Link, identifies the MIME media type of the referenced resource.

When used on an Object, identifies the MIME media type of the value of the content property.

If not specified, the content property is assumed to contain text/html content.

Source

pub fn set_media_type<I: Into<MimeType>>(&mut self, val: I)

Sets the Project media_type.

When used on a Link, identifies the MIME media type of the referenced resource.

When used on an Object, identifies the MIME media type of the value of the content property.

If not specified, the content property is assumed to contain text/html content.

Source

pub fn unset_media_type(&mut self) -> Option<MimeType>

Unsets the Project media_type.

When used on a Link, identifies the MIME media type of the referenced resource.

When used on an Object, identifies the MIME media type of the value of the content property.

If not specified, the content property is assumed to contain text/html content.

Source

pub fn with_media_type<I: Into<MimeType>>(self, val: I) -> Self

Builder function that sets the Project media_type.

When used on a Link, identifies the MIME media type of the referenced resource.

When used on an Object, identifies the MIME media type of the value of the content property.

If not specified, the content property is assumed to contain text/html content.

Source

pub const fn start_time(&self) -> Option<DateTime>

Gets the Project start_time.

The date and time describing the actual or expected starting time of the object.

When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.

Source

pub fn set_start_time<I: Into<DateTime>>(&mut self, val: I)

Sets the Project start_time.

The date and time describing the actual or expected starting time of the object.

When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.

Source

pub fn unset_start_time(&mut self) -> Option<DateTime>

Unsets the Project start_time.

The date and time describing the actual or expected starting time of the object.

When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.

Source

pub fn with_start_time<I: Into<DateTime>>(self, val: I) -> Self

Builder function that sets the Project start_time.

The date and time describing the actual or expected starting time of the object.

When used with an Activity object, for instance, the startTime property specifies the moment the activity began or is scheduled to begin.

Source

pub const fn end_time(&self) -> Option<DateTime>

Gets the Project end_time.

The date and time describing the actual or expected ending time of the object.

When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.

Source

pub fn set_end_time<I: Into<DateTime>>(&mut self, val: I)

Sets the Project end_time.

The date and time describing the actual or expected ending time of the object.

When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.

Source

pub fn unset_end_time(&mut self) -> Option<DateTime>

Unsets the Project end_time.

The date and time describing the actual or expected ending time of the object.

When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.

Source

pub fn with_end_time<I: Into<DateTime>>(self, val: I) -> Self

Builder function that sets the Project end_time.

The date and time describing the actual or expected ending time of the object.

When used with an Activity object, for instance, the endTime property specifies the moment the activity concluded or is expected to conclude.

Source

pub const fn published(&self) -> Option<DateTime>

Gets the Project published.

The date and time at which the object was published.

Source

pub fn set_published<I: Into<DateTime>>(&mut self, val: I)

Sets the Project published.

The date and time at which the object was published.

Source

pub fn unset_published(&mut self) -> Option<DateTime>

Unsets the Project published.

The date and time at which the object was published.

Source

pub fn with_published<I: Into<DateTime>>(self, val: I) -> Self

Builder function that sets the Project published.

The date and time at which the object was published.

Source

pub const fn updated(&self) -> Option<DateTime>

Gets the Project updated.

The date and time at which the object was updated.

Source

pub fn set_updated<I: Into<DateTime>>(&mut self, val: I)

Sets the Project updated.

The date and time at which the object was updated.

Source

pub fn unset_updated(&mut self) -> Option<DateTime>

Unsets the Project updated.

The date and time at which the object was updated.

Source

pub fn with_updated<I: Into<DateTime>>(self, val: I) -> Self

Builder function that sets the Project updated.

The date and time at which the object was updated.

Source§

impl<Vocab: ActivityVocabulary> Project<Vocab>

Source

pub fn inbox(&self) -> Option<&Item>

Gets the Project inbox.

A reference to an ActivityStreams OrderedCollection comprised of all the messages received by the actor; see 5.2 Inbox.

Source

pub fn set_inbox<I: Into<Item>>(&mut self, val: I)

Sets the Project inbox.

A reference to an ActivityStreams OrderedCollection comprised of all the messages received by the actor; see 5.2 Inbox.

Source

pub fn unset_inbox(&mut self) -> Option<Item>

Unsets the Project inbox.

A reference to an ActivityStreams OrderedCollection comprised of all the messages received by the actor; see 5.2 Inbox.

Source

pub fn with_inbox<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project inbox.

A reference to an ActivityStreams OrderedCollection comprised of all the messages received by the actor; see 5.2 Inbox.

Source

pub fn outbox(&self) -> Option<&Item>

Gets the Project outbox.

An ActivityStreams OrderedCollection comprised of all the messages produced by the actor; see 5.1 Outbox.

Source

pub fn set_outbox<I: Into<Item>>(&mut self, val: I)

Sets the Project outbox.

An ActivityStreams OrderedCollection comprised of all the messages produced by the actor; see 5.1 Outbox.

Source

pub fn unset_outbox(&mut self) -> Option<Item>

Unsets the Project outbox.

An ActivityStreams OrderedCollection comprised of all the messages produced by the actor; see 5.1 Outbox.

Source

pub fn with_outbox<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project outbox.

An ActivityStreams OrderedCollection comprised of all the messages produced by the actor; see 5.1 Outbox.

Source

pub fn following(&self) -> Option<&Item>

Gets the Project following.

A link to an ActivityStreams collection of the actors that this actor is following; see 5.4 Following Collection.

Source

pub fn set_following<I: Into<Item>>(&mut self, val: I)

Sets the Project following.

A link to an ActivityStreams collection of the actors that this actor is following; see 5.4 Following Collection.

Source

pub fn unset_following(&mut self) -> Option<Item>

Unsets the Project following.

A link to an ActivityStreams collection of the actors that this actor is following; see 5.4 Following Collection.

Source

pub fn with_following<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project following.

A link to an ActivityStreams collection of the actors that this actor is following; see 5.4 Following Collection.

Source

pub fn followers(&self) -> Option<&Item>

Gets the Project followers.

A link to an ActivityStreams collection of the actors that follow this actor; see 5.3 Followers Collection.

Source

pub fn set_followers<I: Into<Item>>(&mut self, val: I)

Sets the Project followers.

A link to an ActivityStreams collection of the actors that follow this actor; see 5.3 Followers Collection.

Source

pub fn unset_followers(&mut self) -> Option<Item>

Unsets the Project followers.

A link to an ActivityStreams collection of the actors that follow this actor; see 5.3 Followers Collection.

Source

pub fn with_followers<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project followers.

A link to an ActivityStreams collection of the actors that follow this actor; see 5.3 Followers Collection.

Source

pub fn liked(&self) -> Option<&Item>

Gets the Project liked.

A link to an ActivityStreams collection of objects this actor has liked; see 5.5 Liked Collection.

Source

pub fn set_liked<I: Into<Item>>(&mut self, val: I)

Sets the Project liked.

A link to an ActivityStreams collection of objects this actor has liked; see 5.5 Liked Collection.

Source

pub fn unset_liked(&mut self) -> Option<Item>

Unsets the Project liked.

A link to an ActivityStreams collection of objects this actor has liked; see 5.5 Liked Collection.

Source

pub fn with_liked<I: Into<Item>>(self, val: I) -> Self

Builder function that sets the Project liked.

A link to an ActivityStreams collection of objects this actor has liked; see 5.5 Liked Collection.

Source

pub fn streams(&self) -> Option<&Items>

Gets the Project streams.

A list of supplementary Collections which may be of interest.

Source

pub fn set_streams<I: Into<Items>>(&mut self, val: I)

Sets the Project streams.

A list of supplementary Collections which may be of interest.

Source

pub fn unset_streams(&mut self) -> Option<Items>

Unsets the Project streams.

A list of supplementary Collections which may be of interest.

Source

pub fn with_streams<I: Into<Items>>(self, val: I) -> Self

Builder function that sets the Project streams.

A list of supplementary Collections which may be of interest.

Source

pub fn preferred_username(&self) -> Option<&Name>

Gets the Project preferred_username.

A short username which may be used to refer to the actor, with no uniqueness guarantees.

Source

pub fn set_preferred_username<I: Into<Name>>(&mut self, val: I)

Sets the Project preferred_username.

A short username which may be used to refer to the actor, with no uniqueness guarantees.

Source

pub fn unset_preferred_username(&mut self) -> Option<Name>

Unsets the Project preferred_username.

A short username which may be used to refer to the actor, with no uniqueness guarantees.

Source

pub fn with_preferred_username<I: Into<Name>>(self, val: I) -> Self

Builder function that sets the Project preferred_username.

A short username which may be used to refer to the actor, with no uniqueness guarantees.

Source

pub fn endpoints(&self) -> Option<&Endpoints>

Gets the Project endpoints.

A json object which maps additional (typically server/domain-wide) endpoints which may be useful either for this actor or someone referencing this actor.

This mapping may be nested inside the actor document as the value or may be a link to a JSON-LD document with these properties.

Source

pub fn set_endpoints<I: Into<Endpoints>>(&mut self, val: I)

Sets the Project endpoints.

A json object which maps additional (typically server/domain-wide) endpoints which may be useful either for this actor or someone referencing this actor.

This mapping may be nested inside the actor document as the value or may be a link to a JSON-LD document with these properties.

Source

pub fn unset_endpoints(&mut self) -> Option<Endpoints>

Unsets the Project endpoints.

A json object which maps additional (typically server/domain-wide) endpoints which may be useful either for this actor or someone referencing this actor.

This mapping may be nested inside the actor document as the value or may be a link to a JSON-LD document with these properties.

Source

pub fn with_endpoints<I: Into<Endpoints>>(self, val: I) -> Self

Builder function that sets the Project endpoints.

A json object which maps additional (typically server/domain-wide) endpoints which may be useful either for this actor or someone referencing this actor.

This mapping may be nested inside the actor document as the value or may be a link to a JSON-LD document with these properties.

Source

pub fn assertion_method(&self) -> Option<&MultikeyItems>

Gets the Project assertion_method.

A list of public key representations following the FEP-521a specification.

Source

pub fn set_assertion_method<I: Into<MultikeyItems>>(&mut self, val: I)

Sets the Project assertion_method.

A list of public key representations following the FEP-521a specification.

Source

pub fn unset_assertion_method(&mut self) -> Option<MultikeyItems>

Unsets the Project assertion_method.

A list of public key representations following the FEP-521a specification.

Source

pub fn with_assertion_method<I: Into<MultikeyItems>>(self, val: I) -> Self

Builder function that sets the Project assertion_method.

A list of public key representations following the FEP-521a specification.

Source

pub fn public_key(&self) -> Option<&KeyItems>

👎Deprecated since 0.3.0:

The publicKey vocabulary has been deprecated since Security Vocabulary 2.0. Users should use the assertionMethod field instead, where possible.

Gets the Project public_key.

Public key used for HTTP Signatures and Linked Data Signatures.

Source

pub fn set_public_key<I: Into<KeyItems>>(&mut self, val: I)

👎Deprecated since 0.3.0:

The publicKey vocabulary has been deprecated since Security Vocabulary 2.0. Users should use the assertionMethod field instead, where possible.

Sets the Project public_key.

Public key used for HTTP Signatures and Linked Data Signatures.

Source

pub fn unset_public_key(&mut self) -> Option<KeyItems>

👎Deprecated since 0.3.0:

The publicKey vocabulary has been deprecated since Security Vocabulary 2.0. Users should use the assertionMethod field instead, where possible.

Unsets the Project public_key.

Public key used for HTTP Signatures and Linked Data Signatures.

Source

pub fn with_public_key<I: Into<KeyItems>>(self, val: I) -> Self

👎Deprecated since 0.3.0:

The publicKey vocabulary has been deprecated since Security Vocabulary 2.0. Users should use the assertionMethod field instead, where possible.

Builder function that sets the Project public_key.

Public key used for HTTP Signatures and Linked Data Signatures.

Source§

impl Project

Source

pub fn components(&self) -> Option<&Collection>

Gets the Project components.

Identifies a Collection listing actors whose services and resources are considered to be components of this project.

The collection items are Relationship objects whose relationship is hasComponent and whose instrument is the maximal role allowed for delegation, specified when the component was added.

Source

pub fn set_components<I: Into<Collection>>(&mut self, val: I)

Sets the Project components.

Identifies a Collection listing actors whose services and resources are considered to be components of this project.

The collection items are Relationship objects whose relationship is hasComponent and whose instrument is the maximal role allowed for delegation, specified when the component was added.

Source

pub fn unset_components(&mut self) -> Option<Collection>

Unsets the Project components.

Identifies a Collection listing actors whose services and resources are considered to be components of this project.

The collection items are Relationship objects whose relationship is hasComponent and whose instrument is the maximal role allowed for delegation, specified when the component was added.

Source

pub fn with_components<I: Into<Collection>>(self, val: I) -> Self

Builder function that sets the Project components.

Identifies a Collection listing actors whose services and resources are considered to be components of this project.

The collection items are Relationship objects whose relationship is hasComponent and whose instrument is the maximal role allowed for delegation, specified when the component was added.

Trait Implementations§

Source§

impl<Vocab: Clone + ActivityVocabulary> Clone for Project<Vocab>

Source§

fn clone(&self) -> Project<Vocab>

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
Source§

impl<Vocab: Debug + ActivityVocabulary> Debug for Project<Vocab>

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for Project

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de, T: ActivityVocabulary> Deserialize<'de> for Project<T>

Source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Display for Project

Source§

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

Formats the value using the given formatter. Read more
Source§

impl From<Project> for Item

Source§

fn from(val: Project) -> Self

Converts to this type from the input type.
Source§

impl From<Project> for Object<VocabularyTypes>

Source§

fn from(val: Project<VocabularyTypes>) -> Self

Converts to this type from the input type.
Source§

impl From<Project> for Option<Box<Item>>

Source§

fn from(val: Project) -> Self

Converts to this type from the input type.
Source§

impl From<Project> for Option<Box<Items>>

Source§

fn from(val: Project) -> Self

Converts to this type from the input type.
Source§

impl From<Project> for Option<Box<OrderedItems>>

Source§

fn from(val: Project) -> Self

Converts to this type from the input type.
Source§

impl<Vocab: PartialEq + ActivityVocabulary> PartialEq for Project<Vocab>

Source§

fn eq(&self, other: &Project<Vocab>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<Vocab: ActivityVocabulary> Serialize for Project<Vocab>

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<Vocab: Eq + ActivityVocabulary> Eq for Project<Vocab>

Source§

impl<Vocab: ActivityVocabulary> StructuralPartialEq for Project<Vocab>

Auto Trait Implementations§

§

impl<Vocab> Freeze for Project<Vocab>
where Vocab: Freeze,

§

impl<Vocab> RefUnwindSafe for Project<Vocab>
where Vocab: RefUnwindSafe,

§

impl<Vocab> Send for Project<Vocab>
where Vocab: Send,

§

impl<Vocab> Sync for Project<Vocab>
where Vocab: Sync,

§

impl<Vocab> Unpin for Project<Vocab>
where Vocab: Unpin,

§

impl<Vocab> UnsafeUnpin for Project<Vocab>
where Vocab: UnsafeUnpin,

§

impl<Vocab> UnwindSafe for Project<Vocab>
where Vocab: UnwindSafe,

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<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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<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
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,