#![doc = include_str!("../README.md")]
mod cell;
mod cidomap;
mod context;
mod error;
mod filter;
mod graphql;
mod handler;
pub(crate) mod helper_macros;
mod metrics;
mod network;
mod persistence;
mod poi;
mod singleton;
mod sql;
#[doc(hidden)]
#[rustfmt::skip]
pub mod stable_hash;
mod types;
#[doc(hidden)]
pub mod __internal {
pub use crate::prelude::*;
pub use super::cidomap::{AsyncTypeIter, EventHandler, TrackingLevel, TypeIter};
pub use super::filter::{
ArrayFilter, BaseFilter, BaseOperator, BlockChangedFilter, ByteaFilter, ByteaOperator,
ComplexFilter, EnumFilter, EnumOperator, Filter, Id, IdFilter, NestedIdFilter,
NestedIdOperator, NestedIdWrapper, OptionalArrayFilter, OptionalBaseFilter,
OptionalBaseOperator, OptionalByteaFilter, OptionalByteaOperator, OptionalEnumFilter,
OptionalEnumOperator, OptionalNestedIdFilter, OptionalNestedIdOperator, OptionalStringFilter,
OptionalStringOperator, RootWhere, StringFilter, StringOperator, ToDbFilter, ToGraphqlFilter,
ToNestedGraphqlNestedIdFilter, TryMapFilter,
};
pub use super::graphql::{
DerivedMap, FromId, GraphqlCidomapMetaInfo, GraphqlInputType, GraphqlMetaExtension,
GraphqlOrderBy, GraphqlOrderByVariant, GraphqlOrderDirection, GraphqlOutputType,
GraphqlPagination, GraphqlQueryBuilder, LoaderConfig, ToGraphql, ToIdentifiable, ToTransformer,
TypeMap,
};
pub use super::network::ChainTrackerResponse;
pub use super::persistence::{
ColConstraint, ColDescription, MetaInfo, TableConstraint, TableConstraintType, TableDescriptor,
TableResolver,
};
pub use super::poi::ValueTypeHasher;
pub use super::run::run;
pub use super::sql::{
Direction, Finalize, OrderByClause, PgBindIter, QueryBuilder, SelectClause, WhereClause,
};
pub use super::types::{ConversionError, DecodeHexError, MissingField};
pub use crate::stable_hash;
pub use async_graphql;
pub use bigdecimal;
pub use cido_macros::{_impls, OrderBy};
pub use clap;
pub use either;
pub use futures;
pub use num_bigint;
pub use owning_ref;
pub use serde;
pub use serde_json;
pub use serde_with;
pub use sqlx;
pub use sqlx::types::{Decimal, chrono};
pub use tracing;
}
pub mod prelude {
pub use super::cell::{Ref, RefMut};
pub use super::cidomap::{
CacheKey, CacheLoader, CachePolicy, Cidomap, Identifiable, MetaEvent, ParseContext,
ParsingContext, ProcessingOrder, ProcessingOrderFilter, Query, RecordEvent, RecordType,
Transformer, TryFromTrigger,
};
pub use super::context::{Context, GeneratorContext, PreprocessingContext};
pub use super::error::CidomapError;
pub use super::handler::{Cache, Event, Handler};
pub use super::metrics::FutureMeter;
pub use super::network::{
AsBlockNumber, AsEventOrder, Block, BlockGenerator, BlockId, BlockNumber, BlockNumberRange,
BlockRange, BlockRequest, EventOrder, LatestBlock, Network, TriggerFilterStorage,
TriggerGenerator,
};
pub use super::poi::{Hashable, ValueVariant};
pub use super::singleton::{GenericSingleton, Singleton};
pub use super::stable_hash;
pub use super::types::{BigDecimal, BigInt, Bytes, H, Sign, U};
pub use cido_macros::{cidomap, entity, event, event_handler};
}
#[doc(hidden)]
pub mod util {
pub use crate::types::{TRANSIENT_BYTES_SERIALIZER, TRANSIENT_STRING_SERIALIZER, serde_util::*};
}
type DynError = Box<dyn std::error::Error + Send + Sync + 'static>;
mod run {
use crate::prelude::*;
#[cido_macros::_impls]
pub fn run<C>() -> Result<(), CidomapError>
where
C: Cidomap,
<<C as Cidomap>::Network as Network>::InitConfig: clap::Args,
{
unimplemented!()
}
}
#[doc(inline)]
pub use prelude::*;