1 //******************************************************************
3 // Copyright 2014 MediaTek All Rights Reserved.
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
11 // http://www.apache.org/licenses/LICENSE-2.0
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
22 #include "OCAndroid.h"
26 void from_string(const std::string& s, T& result) {
27 std::stringstream ss(s);
28 ss >> result; // TODO handle errors
33 std::string to_string(T value)
35 std::ostringstream os ;
45 int stoi(const string& s)
49 OC::from_string(s, ref);
53 double stod(const std::string& s)
57 OC::from_string(s, ref);
61 long long stoll(const std::string& s)
64 long long int &ref = ret;
65 OC::from_string(s, ref);
69 unsigned long long stoull(const std::string& s)
71 unsigned long long ret;
72 unsigned long long &ref = ret;
73 OC::from_string(s, ref);
77 long double stold(const string& s)
80 long double &ref = ret;
81 OC::from_string(s, ref);
85 #define TO_STRING(_t) { \
86 std::ostringstream os; \
91 std::string to_string(int val)
96 std::string to_string(long val)
101 std::string to_string(long long val)
106 std::string to_string(unsigned val)
111 std::string to_string(unsigned long val)
116 std::string to_string(unsigned long long val)
121 std::string to_string(float val)
126 std::string to_string(double val)
131 std::string to_string(long double val)