Files
agnostic_orderbook
ahash
aho_corasick
arrayref
arrayvec
atty
base64
bincode
blake3
block_buffer
block_padding
borsh
borsh_derive
borsh_derive_internal
borsh_schema_derive_internal
bs58
bv
adapter
bit_vec
traits
bytemuck
byteorder
cfg_if
constant_time_eq
cpufeatures
crunchy
crypto_mac
curve25519_dalek
backend
derivative
dex_v3
processor
digest
either
enumflags2
enumflags2_derive
env_logger
filter
fmt
generic_array
getrandom
hashbrown
hex
hmac
hmac_drbg
humantime
itertools
adaptors
combinations.rscombinations_with_replacement.rsconcat_impl.rscons_tuples_impl.rsdiff.rseither_or_both.rsexactly_one_err.rsformat.rsfree.rsgroup_map.rsgroupbylazy.rsimpl_macros.rsintersperse.rskmerge_impl.rslazy_buffer.rslib.rsmerge_join.rsminmax.rsmultipeek_impl.rspad_tail.rspeeking_take_while.rspermutations.rsprocess_results_impl.rsput_back_n_impl.rsrciter_impl.rsrepeatn.rssize_hint.rssources.rstee.rstuple_impl.rsunique_impl.rswith_position.rszip_eq_impl.rszip_longest.rsziptuple.rs
keccak
lazy_static
libc
libm
math
acos.rsacosf.rsacosh.rsacoshf.rsasin.rsasinf.rsasinh.rsasinhf.rsatan.rsatan2.rsatan2f.rsatanf.rsatanh.rsatanhf.rscbrt.rscbrtf.rsceil.rsceilf.rscopysign.rscopysignf.rscos.rscosf.rscosh.rscoshf.rserf.rserff.rsexp.rsexp10.rsexp10f.rsexp2.rsexp2f.rsexpf.rsexpm1.rsexpm1f.rsexpo2.rsfabs.rsfabsf.rsfdim.rsfdimf.rsfenv.rsfloor.rsfloorf.rsfma.rsfmaf.rsfmax.rsfmaxf.rsfmin.rsfminf.rsfmod.rsfmodf.rsfrexp.rsfrexpf.rshypot.rshypotf.rsilogb.rsilogbf.rsj0.rsj0f.rsj1.rsj1f.rsjn.rsjnf.rsk_cos.rsk_cosf.rsk_expo2.rsk_expo2f.rsk_sin.rsk_sinf.rsk_tan.rsk_tanf.rsldexp.rsldexpf.rslgamma.rslgamma_r.rslgammaf.rslgammaf_r.rslog.rslog10.rslog10f.rslog1p.rslog1pf.rslog2.rslog2f.rslogf.rsmod.rsmodf.rsmodff.rsnextafter.rsnextafterf.rspow.rspowf.rsrem_pio2.rsrem_pio2_large.rsrem_pio2f.rsremainder.rsremainderf.rsremquo.rsremquof.rsround.rsroundf.rsscalbn.rsscalbnf.rssin.rssincos.rssincosf.rssinf.rssinh.rssinhf.rssqrt.rssqrtf.rstan.rstanf.rstanh.rstanhf.rstgamma.rstgammaf.rstrunc.rstruncf.rs
libsecp256k1
libsecp256k1_core
log
memchr
memchr
memmem
memmap2
num_derive
num_enum
num_enum_derive
num_traits
opaque_debug
ppv_lite86
proc_macro2
quote
rand
distributions
weighted
rngs
seq
rand_chacha
rand_core
rand_pcg
regex
regex_syntax
ast
hir
unicode_tables
rustversion
serde
de
private
ser
serde_bytes
serde_derive
sha2
sha3
solana_frozen_abi
solana_frozen_abi_macro
solana_logger
solana_program
nonce
stake
sysvar
account_info.rsborsh.rsbpf_loader.rsbpf_loader_deprecated.rsbpf_loader_upgradeable.rsclock.rsdecode_error.rsentrypoint.rsentrypoint_deprecated.rsepoch_schedule.rsfeature.rsfee_calculator.rshash.rsincinerator.rsinstruction.rskeccak.rslamports.rslib.rsloader_instruction.rsloader_upgradeable_instruction.rslog.rsmessage.rsnative_token.rsprogram.rsprogram_error.rsprogram_memory.rsprogram_option.rsprogram_pack.rsprogram_stubs.rspubkey.rsrent.rssanitize.rssecp256k1_program.rssecp256k1_recover.rsserialize_utils.rsshort_vec.rsslot_hashes.rsslot_history.rsstake_history.rssystem_instruction.rssystem_program.rs
solana_sdk_macro
spin
spl_token
subtle
syn
attr.rsawait.rsbigint.rsbuffer.rscustom_keyword.rscustom_punctuation.rsdata.rsderive.rsdiscouraged.rserror.rsexport.rsexpr.rsext.rsfile.rsgenerics.rsgroup.rsident.rsitem.rslib.rslifetime.rslit.rslookahead.rsmac.rsmacros.rsop.rsparse.rsparse_macro_input.rsparse_quote.rspat.rspath.rsprint.rspunctuated.rsreserved.rssealed.rsspan.rsspanned.rsstmt.rsthread.rstoken.rstt.rsty.rsverbatim.rswhitespace.rs
synstructure
termcolor
thiserror
thiserror_impl
typenum
unicode_xid
zeroize
zeroize_derive
>
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
//! named accounts for synthesized data accounts for bank state, etc. //! //! this account carries a bitvector of slots present over the past //! epoch //! pub use crate::{ account_info::AccountInfo, program_error::ProgramError, slot_history::SlotHistory, }; use crate::sysvar::Sysvar; crate::declare_sysvar_id!("SysvarS1otHistory11111111111111111111111111", SlotHistory); impl Sysvar for SlotHistory { // override fn size_of() -> usize { // hard-coded so that we don't have to construct an empty 131_097 // golden, update if MAX_ENTRIES changes } fn from_account_info(_account_info: &AccountInfo) -> Result<Self, ProgramError> { // This sysvar is too large to bincode::deserialize in-program Err(ProgramError::UnsupportedSysvar) } } #[cfg(test)] mod tests { use super::*; #[test] fn test_size_of() { assert_eq!( SlotHistory::size_of(), bincode::serialized_size(&SlotHistory::default()).unwrap() as usize ); } }