///|
/// mmCIF format parsing example.
///
/// Run: moon run examples/mmcif_demo/main.mbt
fn main {
let mmcif_content = "data_1ABC\n#\n_cell_length_a 50.0\n_cell_length_b 50.0\n_cell_length_c 50.0\n_atom_site.id 1\n_atom_site.type_symbol N\n_atom_site.label_atom_id N\n_atom_site.label_comp_id MET\n_atom_site.label_asym_id A\n_atom_site.label_seq_id 1\n_atom_site.Cartn_x 1.0\n_atom_site.Cartn_y 2.0\n_atom_site.Cartn_z 3.0\n"
println("=== mmCIF Parser Demo ===")
println("")
let block = @bio.parse_mmcif(mmcif_content)
println("Data block name: \{block.name}")
let atom_sites = block.get_atom_sites()
println("Atom sites found: \{atom_sites.length()}")
let entity_data = block.get_entity()
println("Entity data found: \{entity_data.length()}")
let struct_data = block.get_struct()
println("Structure data found: \{struct_data.length()}")
let atoms = block.to_atoms()
println("Atoms converted: \{atoms.length()}")
println("")
println("=== Done ===")
}