Move folly/detail/Sleeper.h to folly/synchronization/detail/
[folly.git] / folly / Unicode.h
index b0723a07447ac59490c35abcf36d307dedafa260..eaeb05f4511253a82a1b49f2c8218381f1b9ea7f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2012 Facebook, Inc.
+ * Copyright 2017 Facebook, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 // Some utility routines relating to unicode.
 
-#ifndef FOLLY_UNICODE_H_
-#define FOLLY_UNICODE_H_
+#pragma once
 
-#include "folly/FBString.h"
+#include <string>
 
 namespace folly {
 
@@ -30,10 +29,16 @@ namespace folly {
  *
  * Return value is undefined if `cp' is an invalid code point.
  */
-fbstring codePointToUtf8(char32_t cp);
+std::string codePointToUtf8(char32_t cp);
 
-//////////////////////////////////////////////////////////////////////
+/*
+ * Decode a single unicode code point from UTF-8 byte sequence.
+ */
+char32_t utf8ToCodePoint(
+    const unsigned char*& p,
+    const unsigned char* const e,
+    bool skipOnError);
 
-}
+//////////////////////////////////////////////////////////////////////
 
-#endif
+} // namespace folly