1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
/* * This file is part of ActivityPub. * * Copyright © 2018 Riley Trautman * * ActivityPub is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * ActivityPub is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with ActivityPub. If not, see <http://www.gnu.org/licenses/>. */ //! ActivityPub //! //! This crate defines the base set of types from the ActivityPub specification. //! //! ## Example Usage //! ```rust //! extern crate activitypub; //! extern crate failure; //! extern crate serde_json; //! //! use activitypub::{context, object::Video}; //! use failure::Error; //! //! fn run() -> Result<(), Error> { //! let mut video = Video::default(); //! video.object_props.set_context_object(context())?; //! video.ap_object_props.set_likes_string("https://my-instance.com/likes".to_owned()); //! //! let video_string = serde_json::to_string(&video)?; //! //! let video: Video = serde_json::from_str(&video_string)?; //! //! Ok(()) //! } //! # //! # fn main() { //! # run().unwrap(); //! # } //! ``` #[macro_use] extern crate activitystreams_derive; extern crate activitystreams_traits; extern crate activitystreams_types; extern crate serde; #[macro_use] extern crate serde_derive; extern crate serde_json; pub mod activity; pub mod actor; pub mod collection; mod endpoint; pub mod link; pub mod object; pub use self::{ activity::{Activity, IntransitiveActivity}, actor::Actor, collection::{Collection, CollectionPage}, endpoint::Endpoint, link::Link, object::Object, }; pub use activitystreams_traits::{properties, Error, Result}; pub use activitystreams_types::{context, ContextObject, CustomLink, CustomObject};