first version of peek next
diff --git a/src/qcbor_decode.c b/src/qcbor_decode.c
index 001a778..afc3651 100644
--- a/src/qcbor_decode.c
+++ b/src/qcbor_decode.c
@@ -2030,6 +2030,9 @@
 }
 
 
+/*
+ Public function, see header qcbor/qcbor_decode.h file
+ */
 QCBORError
 QCBORDecode_GetNext(QCBORDecodeContext *pMe, QCBORItem *pDecodedItem)
 {
@@ -2046,6 +2049,24 @@
 /*
  Public function, see header qcbor/qcbor_decode.h file
  */
+QCBORError
+QCBORDecode_PeekNext(QCBORDecodeContext *pMe, QCBORItem *pDecodedItem)
+{
+   const QCBORDecodeNesting SaveNesting = pMe->nesting;
+   const UsefulInputBuf Save = pMe->InBuf;
+
+   QCBORError uErr = QCBORDecode_GetNext(pMe, pDecodedItem);
+
+   pMe->nesting = SaveNesting;
+   pMe->InBuf = Save;
+
+   return uErr;
+}
+
+
+/*
+ Public function, see header qcbor/qcbor_decode.h file
+ */
 void QCBORDecode_VGetNext(QCBORDecodeContext *pMe, QCBORItem *pDecodedItem)
 {
    if(pMe->uLastError != QCBOR_SUCCESS) {