| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "components/webcrypto/crypto_data.h" |
| |
| namespace webcrypto { |
| |
| CryptoData::CryptoData() : bytes_(nullptr), byte_length_(0) {} |
| |
| CryptoData::CryptoData(const unsigned char* bytes, unsigned int byte_length) |
| : bytes_(bytes), byte_length_(byte_length) { |
| } |
| |
| CryptoData::CryptoData(const std::vector<unsigned char>& bytes) |
| : bytes_(bytes.data()), |
| byte_length_(static_cast<unsigned int>(bytes.size())) {} |
| |
| CryptoData::CryptoData(const std::string& bytes) |
| : bytes_(bytes.size() ? reinterpret_cast<const unsigned char*>(bytes.data()) |
| : nullptr), |
| byte_length_(static_cast<unsigned int>(bytes.size())) {} |
| |
| CryptoData::CryptoData(const blink::WebVector<unsigned char>& bytes) |
| : bytes_(bytes.Data()), |
| byte_length_(static_cast<unsigned int>(bytes.size())) {} |
| |
| } // namespace webcrypto |