/// An enum representing JSON types
/// * `JsonNull` → null
/// * `JsonTrue`, `JsonFalse` → true, false
/// * `JsonString` → a string
/// * `JsonNumber` → an integer or float
/// * `JsonMap` → a JSON object
/// * `JsonArray` → a JSON array
/// * `Empty` → Element not found. See code below.
///
/// ```rust
/// use jsonic::json_item::JsonItem;
/// use jsonic::json_type::JsonType::Empty;
///
/// let json = "{\"a\":\"b\"}";
///
/// if let Ok(parsed) = jsonic::parse(json) {
/// assert_eq!(parsed["c"].get_type(), &Empty);
/// }