Zig
Zig
HasChildWithTag using a Tag Path
Demonstrates calling HasChildWithTag with a tag path.Chilkat Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main(init: std.process.Init) !void {
const alloc = init.arena.allocator();
const xml = try chilkat.Xml.init();
defer xml.deinit();
xml.setTag("world");
xml.newChild2("north_america|united_states|california|san_francisco", "Silicon Valley");
xml.newChild2("north_america|united_states|california|san_diego", "Birthplace of California");
xml.newChild2("north_america|united_states|illinois|chicago", "Windy City");
std.debug.print("{s}\n", .{try xml.getXml(alloc)});
// Produces the following XML
//
// <?xml version="1.0" encoding="utf-8" ?>
// <world>
// <north_america>
// <united_states>
// <california>
// <san_francisco>Silicon Valley</san_francisco>
// <san_diego>Birthplace of California</san_diego>
// </california>
// <illinois>
// <chicago>Windy City</chicago>
// </illinois>
// </united_states>
// </north_america>
// </world>
//
const has_chicago = xml.hasChildWithTag("north_america|united_states|illinois|chicago");
std.debug.print("hasChicago = {}\n", .{has_chicago});
const has_naperville = xml.hasChildWithTag("north_america|united_states|illinois|naperville");
std.debug.print("hasNaperville = {}\n", .{has_naperville});
const has_illinois = xml.hasChildWithTag("north_america|united_states|illinois");
std.debug.print("hasIllinois = {}\n", .{has_illinois});
}