/*! \file piliterals_bytearray.h
 * \ingroup Core
 * \~\brief
 * \~english PIByteArray literal operators
 * \~russian Операторы литералов для PIByteArray
 */
/*
    PIP - Platform Independent Primitives
    PIByteArray C++11 literals
    Ivan Pelipenko peri4ko@yandex.ru

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Lesser General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef PILITERALS_BYTEARRAY_H
#define PILITERALS_BYTEARRAY_H

#include "pistring.h"

//! \~\ingroup Core
//! \~\brief
//! \~english Creates \a PIByteArray from hex string literal (for example "1a2e3f").
//! \~russian Создает \a PIByteArray из hex-строки литерала (например "1a2e3f").
inline PIByteArray operator""_hex(const char * v, size_t sz) {
	return PIByteArray::fromHex(PIStringAscii(v, sz));
}

//! \~\ingroup Core
//! \~\brief
//! \~english Creates \a PIByteArray from Base64 string literal (for example "aGVsbG8=").
//! \~russian Создает \a PIByteArray из Base64-строки литерала (например "aGVsbG8=").
inline PIByteArray operator""_base64(const char * v, size_t sz) {
	return PIByteArray::fromBase64(PIStringAscii(v, sz));
}


#endif
