+ /*
+ * Like 'at', above, except it returns either a pointer to the contained
+ * object or nullptr if it wasn't found. This allows a key to be tested for
+ * containment and retrieved in one operation. Example:
+ *
+ * if (auto* found = d.get_ptr(key))
+ * // use *found;
+ *
+ * Using these with dynamic objects that are not arrays or objects
+ * will throw a TypeError.
+ */
+ const dynamic* get_ptr(dynamic const&) const;
+ dynamic* get_ptr(dynamic const&);
+