Function frontOrInit

Get the first element of a range or return Element.init

auto frontOrInit(T) (
  T range
)
if (isInputRange!T);

Example

import std.exception : assertThrown;

Document doc = Document(`<html><p><b>hello`);
Element div = doc.createElement("div");
div.setAttribute("id", "test");

assert(doc.bySelector("p b").frontOrThrow.name == "b");
assert(doc.bySelector("p b").frontOrInit.name == "b");

assertThrown(doc.bySelector("p i").frontOrThrow);
assert(doc.bySelector("p i").frontOrInit == Element());
assert(doc.bySelector("p i").frontOrInit == null);
assert(doc.bySelector("p i").frontOr(div).name == "div");
assert(doc.bySelector("p i").frontOr(div).id == "test");