partial
diff --git a/include/json/value.h b/include/json/value.h
index 78e7546..18355d0 100644
--- a/include/json/value.h
+++ b/include/json/value.h
@@ -395,6 +395,15 @@
   Value removeMember(const char* key);
   /// Same as removeMember(const char*)
   Value removeMember(const std::string& key);
+  /** \brief Remove the indexed array element.
+
+      O(n) expensive operations.
+      Update 'removed' iff removed.
+      (This is a better pattern than removeMember().)
+      JSON_FAIL if !isValidIndex(i) or if not arrayObject
+      \return true iff removed
+  */
+  bool removeIndex(ArrayIndex i, Value* removed);
 
   /// Return true if the object has a member named key.
   bool isMember(const char* key) const;