Skip to content
1 viewer

rust 1,847,280 · typescript 232,434 · javascript 131,101 · python 19,227 · 6,362 files · digest 755e2ee30522 · built in 2.3 s · crystals off

cre8-chem-core crates cargo crate

Shared chemistry substrate: the Molecule / Atom / Bond model, SDF (V2000 molfile) and PDB parsers, a 118-element periodic table with masses, radii and CPK colours, and the derived quantities (Hill formula, molecular weight, centroid, bounding radius, centred render atoms). Pure data and arithmetic: no network, no storage, no runtime dependencies.

crates/cre8-chem-core · level 0 · 1,333 lines (1,046 code) · 4 files · 54 fns (30 tests) · cyclomatic Σ 143

0workspace deps
2direct dependents
69transitive dependents
0calls out
13calls in
60.1call-graph weight
0.0%exact crystals

Neighbourhood

Left: crates that declare this one. Right: crates it declares (dev-dependencies included). Edge width grows with resolved calls.

Files

lowhigh

File call graph

Resolved calls between this crate's files, callers left of callees.

Heaviest functions

By call-graph weight (PageRank; 1.0 is the average function). 54 functions in all.

functionkindlinescyclomaticcallerscalleesweightcrystal
elementsrc/elements.rs:209fn41806.2
parse_sdfsrc/sdf.rs:24fn60171255.3
parse_pdbsrc/pdb.rs:38fn7819753.3
fieldsrc/sdf.rs:87fn31303.3
Molecule::formulasrc/lib.rs:106method3081112.7
element_by_symbolsrc/elements.rs:217fn73402.3
Molecule::validatesrc/lib.rs:183method217402.3
atomsrc/lib.rs:233fn31601.8
Molecule::centroidsrc/lib.rs:151method134401.6
parse_countssrc/sdf.rs:91fn172111.4
parse_atom_linesrc/sdf.rs:132fn295131.4
parse_bond_linesrc/sdf.rs:162fn297111.4
apply_charge_linesrc/sdf.rs:194fn193101.4
fieldsrc/pdb.rs:119fn31201.3
Molecule::molecular_weightsrc/lib.rs:139method91311.2
BondOrder::multiplicitysrc/lib.rs:55method73201.1
non_emptysrc/pdb.rs:123fn42101.1
parse_atom_recordsrc/pdb.rs:128fn182141.1
conect_serialssrc/pdb.rs:195fn235101.1
element_numbersrc/sdf.rs:111fn62110.9
charge_from_codesrc/sdf.rs:120fn117100.9
Molecule::render_atomssrc/lib.rs:208method191320.8
element_from_atom_namesrc/pdb.rs:155fn216110.7
parse_chargesrc/pdb.rs:179fn123100.7
Molecule::bounding_radiussrc/lib.rs:167method121210.7
table_is_indexed_by_atomic_numbersrc/elements.rs:231fn82010.5
symbols_and_names_are_uniquesrc/elements.rs:241fn61000.5
every_row_has_positive_physical_values_and_unit_colourssrc/elements.rs:249fn82000.5
lookups_by_number_and_symbolsrc/elements.rs:259fn171020.5
colours_come_from_the_hex_valuessrc/elements.rs:278fn91010.5
hill_order_puts_carbon_then_hydrogen_firstsrc/lib.rs:238fn151020.5
formula_without_carbon_is_fully_alphabeticalsrc/lib.rs:255fn161020.5
unknown_elements_are_listed_last_and_weigh_nothingsrc/lib.rs:273fn51030.5
empty_molecule_has_zero_geometrysrc/lib.rs:280fn81050.5
centroid_radius_and_render_atoms_agreesrc/lib.rs:290fn151040.5
validate_rejects_bad_bonds_and_coordinatessrc/lib.rs:307fn161020.5
bond_order_serializes_lowercase_and_reports_multiplicitysrc/lib.rs:325fn81010.5
molecule_round_trips_through_jsonsrc/lib.rs:335fn91010.5
hetatm_and_conect_recordssrc/pdb.rs:238fn141020.5
element_falls_back_to_the_atom_namesrc/pdb.rs:254fn171010.5

Outside the workspace

anyhow serde serde_json