summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2011-05-31 15:34:58 +0000
committerHoward Hinnant <hhinnant@apple.com>2011-05-31 15:34:58 +0000
commitb5d866d4a329e023fdd710ba88960440c588a94a (patch)
tree66121ac74f4e65b3a1193eb8ce513c60c629282d
parent542f9a2bcf5d7a1512e1e45568a89f53b40d18ce (diff)
downloadbcm5719-llvm-b5d866d4a329e023fdd710ba88960440c588a94a.tar.gz
bcm5719-llvm-b5d866d4a329e023fdd710ba88960440c588a94a.zip
noexcept for Chapter 22 [localization].
llvm-svn: 132337
-rw-r--r--libcxx/include/__locale66
-rw-r--r--libcxx/include/locale10
-rw-r--r--libcxx/src/locale.cpp106
3 files changed, 91 insertions, 91 deletions
diff --git a/libcxx/include/__locale b/libcxx/include/__locale
index 099014fec1f..21a573473a0 100644
--- a/libcxx/include/__locale
+++ b/libcxx/include/__locale
@@ -27,7 +27,7 @@ _LIBCPP_BEGIN_NAMESPACE_STD
class locale;
-template <class _Facet> bool has_facet(const locale&) throw();
+template <class _Facet> bool has_facet(const locale&) _NOEXCEPT;
template <class _Facet> const _Facet& use_facet(const locale&);
class _LIBCPP_VISIBLE locale
@@ -49,8 +49,8 @@ public:
all = collate | ctype | monetary | numeric | time | messages;
// construct/copy/destroy:
- locale() throw();
- locale(const locale&) throw();
+ locale() _NOEXCEPT;
+ locale(const locale&) _NOEXCEPT;
explicit locale(const char*);
explicit locale(const string&);
locale(const locale&, const char*, category);
@@ -59,9 +59,9 @@ public:
_LIBCPP_INLINE_VISIBILITY locale(const locale&, _Facet*);
locale(const locale&, const locale&, category);
- ~locale() throw();
+ ~locale();
- const locale& operator=(const locale&) throw();
+ const locale& operator=(const locale&) _NOEXCEPT;
template <class _Facet> locale combine(const locale&) const;
@@ -86,7 +86,7 @@ private:
bool has_facet(id&) const;
const facet* use_facet(id&) const;
- template <class _Facet> friend bool has_facet(const locale&) throw();
+ template <class _Facet> friend bool has_facet(const locale&) _NOEXCEPT;
template <class _Facet> friend const _Facet& use_facet(const locale&);
};
@@ -146,7 +146,7 @@ locale::combine(const locale& __other) const
template <class _Facet>
inline _LIBCPP_INLINE_VISIBILITY
bool
-has_facet(const locale& __l) throw()
+has_facet(const locale& __l) _NOEXCEPT
{
return __l.has_facet(_Facet::id);
}
@@ -535,8 +535,8 @@ public:
#else
static const size_t table_size = 256; // FIXME: Don't hardcode this.
#endif
- _LIBCPP_ALWAYS_INLINE const mask* table() const throw() {return __tab_;}
- static const mask* classic_table() throw();
+ _LIBCPP_ALWAYS_INLINE const mask* table() const _NOEXCEPT {return __tab_;}
+ static const mask* classic_table() _NOEXCEPT;
protected:
~ctype();
@@ -755,13 +755,13 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int encoding() const throw()
+ int encoding() const _NOEXCEPT
{
return do_encoding();
}
_LIBCPP_ALWAYS_INLINE
- bool always_noconv() const throw()
+ bool always_noconv() const _NOEXCEPT
{
return do_always_noconv();
}
@@ -773,7 +773,7 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int max_length() const throw()
+ int max_length() const _NOEXCEPT
{
return do_max_length();
}
@@ -795,10 +795,10 @@ protected:
intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
virtual result do_unshift(state_type& __st,
extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
- virtual int do_encoding() const throw();
- virtual bool do_always_noconv() const throw();
+ virtual int do_encoding() const _NOEXCEPT;
+ virtual bool do_always_noconv() const _NOEXCEPT;
virtual int do_length(state_type& __st, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
- virtual int do_max_length() const throw();
+ virtual int do_max_length() const _NOEXCEPT;
};
// template <> class codecvt<wchar_t, char, mbstate_t>
@@ -840,13 +840,13 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int encoding() const throw()
+ int encoding() const _NOEXCEPT
{
return do_encoding();
}
_LIBCPP_ALWAYS_INLINE
- bool always_noconv() const throw()
+ bool always_noconv() const _NOEXCEPT
{
return do_always_noconv();
}
@@ -858,7 +858,7 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int max_length() const throw()
+ int max_length() const _NOEXCEPT
{
return do_max_length();
}
@@ -878,10 +878,10 @@ protected:
intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
virtual result do_unshift(state_type& __st,
extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
- virtual int do_encoding() const throw();
- virtual bool do_always_noconv() const throw();
+ virtual int do_encoding() const _NOEXCEPT;
+ virtual bool do_always_noconv() const _NOEXCEPT;
virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
- virtual int do_max_length() const throw();
+ virtual int do_max_length() const _NOEXCEPT;
};
// template <> class codecvt<char16_t, char, mbstate_t>
@@ -924,13 +924,13 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int encoding() const throw()
+ int encoding() const _NOEXCEPT
{
return do_encoding();
}
_LIBCPP_ALWAYS_INLINE
- bool always_noconv() const throw()
+ bool always_noconv() const _NOEXCEPT
{
return do_always_noconv();
}
@@ -942,7 +942,7 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int max_length() const throw()
+ int max_length() const _NOEXCEPT
{
return do_max_length();
}
@@ -964,10 +964,10 @@ protected:
intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
virtual result do_unshift(state_type& __st,
extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
- virtual int do_encoding() const throw();
- virtual bool do_always_noconv() const throw();
+ virtual int do_encoding() const _NOEXCEPT;
+ virtual bool do_always_noconv() const _NOEXCEPT;
virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
- virtual int do_max_length() const throw();
+ virtual int do_max_length() const _NOEXCEPT;
};
// template <> class codecvt<char32_t, char, mbstate_t>
@@ -1010,13 +1010,13 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int encoding() const throw()
+ int encoding() const _NOEXCEPT
{
return do_encoding();
}
_LIBCPP_ALWAYS_INLINE
- bool always_noconv() const throw()
+ bool always_noconv() const _NOEXCEPT
{
return do_always_noconv();
}
@@ -1028,7 +1028,7 @@ public:
}
_LIBCPP_ALWAYS_INLINE
- int max_length() const throw()
+ int max_length() const _NOEXCEPT
{
return do_max_length();
}
@@ -1050,10 +1050,10 @@ protected:
intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
virtual result do_unshift(state_type& __st,
extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
- virtual int do_encoding() const throw();
- virtual bool do_always_noconv() const throw();
+ virtual int do_encoding() const _NOEXCEPT;
+ virtual bool do_always_noconv() const _NOEXCEPT;
virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
- virtual int do_max_length() const throw();
+ virtual int do_max_length() const _NOEXCEPT;
};
// template <class _InternT, class _ExternT, class _StateT> class codecvt_byname
diff --git a/libcxx/include/locale b/libcxx/include/locale
index b07cb2d7573..f9e849b1695 100644
--- a/libcxx/include/locale
+++ b/libcxx/include/locale
@@ -36,8 +36,8 @@ public:
all = collate | ctype | monetary | numeric | time | messages;
// construct/copy/destroy:
- locale() throw();
- locale(const locale& other) throw();
+ locale() noexcept;
+ locale(const locale& other) noexcept;
explicit locale(const char* std_name);
explicit locale(const string& std_name);
locale(const locale& other, const char* std_name, category);
@@ -45,9 +45,9 @@ public:
template <class Facet> locale(const locale& other, Facet* f);
locale(const locale& other, const locale& one, category);
- ~locale() throw(); // not virtual
+ ~locale(); // not virtual
- const locale& operator=(const locale& other) throw();
+ const locale& operator=(const locale& other) noexcept;
template <class Facet> locale combine(const locale& other) const;
@@ -65,7 +65,7 @@ public:
};
template <class Facet> const Facet& use_facet(const locale&);
-template <class Facet> bool has_facet(const locale&) throw();
+template <class Facet> bool has_facet(const locale&) noexcept;
// 22.3.3, convenience interfaces:
template <class charT> bool isspace (charT c, const locale& loc);
diff --git a/libcxx/src/locale.cpp b/libcxx/src/locale.cpp
index 668847baf40..f32ce966544 100644
--- a/libcxx/src/locale.cpp
+++ b/libcxx/src/locale.cpp
@@ -399,25 +399,25 @@ locale::__global()
return g;
}
-locale::locale() throw()
+locale::locale() _NOEXCEPT
: __locale_(__global().__locale_)
{
__locale_->__add_shared();
}
-locale::locale(const locale& l) throw()
+locale::locale(const locale& l) _NOEXCEPT
: __locale_(l.__locale_)
{
__locale_->__add_shared();
}
-locale::~locale() throw()
+locale::~locale()
{
__locale_->__release_shared();
}
const locale&
-locale::operator=(const locale& other) throw()
+locale::operator=(const locale& other) _NOEXCEPT
{
other.__locale_->__add_shared();
__locale_->__release_shared();
@@ -895,7 +895,7 @@ ctype<char>::do_narrow(const char_type* low, const char_type* high, char dfault,
}
const ctype<char>::mask*
-ctype<char>::classic_table() throw()
+ctype<char>::classic_table() _NOEXCEPT
{
#ifdef __APPLE__
return _DefaultRuneLocale.__runetype;
@@ -1164,13 +1164,13 @@ codecvt<char, char, mbstate_t>::do_unshift(state_type&,
}
int
-codecvt<char, char, mbstate_t>::do_encoding() const throw()
+codecvt<char, char, mbstate_t>::do_encoding() const _NOEXCEPT
{
return 1;
}
bool
-codecvt<char, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char, char, mbstate_t>::do_always_noconv() const _NOEXCEPT
{
return true;
}
@@ -1183,7 +1183,7 @@ codecvt<char, char, mbstate_t>::do_length(state_type&,
}
int
-codecvt<char, char, mbstate_t>::do_max_length() const throw()
+codecvt<char, char, mbstate_t>::do_max_length() const _NOEXCEPT
{
return 1;
}
@@ -1365,7 +1365,7 @@ codecvt<wchar_t, char, mbstate_t>::do_unshift(state_type& st,
}
int
-codecvt<wchar_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_encoding() const _NOEXCEPT
{
#ifdef __APPLE__
if (mbtowc_l(0, 0, MB_LEN_MAX, __l) == 0)
@@ -1382,7 +1382,7 @@ codecvt<wchar_t, char, mbstate_t>::do_encoding() const throw()
}
bool
-codecvt<wchar_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -1418,7 +1418,7 @@ codecvt<wchar_t, char, mbstate_t>::do_length(state_type& st,
}
int
-codecvt<wchar_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_max_length() const _NOEXCEPT
{
#ifdef __APPLE__
return __l == 0 ? 1 : MB_CUR_MAX_L(__l);
@@ -2875,13 +2875,13 @@ codecvt<char16_t, char, mbstate_t>::do_unshift(state_type&,
}
int
-codecvt<char16_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<char16_t, char, mbstate_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-codecvt<char16_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char16_t, char, mbstate_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -2896,7 +2896,7 @@ codecvt<char16_t, char, mbstate_t>::do_length(state_type&,
}
int
-codecvt<char16_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<char16_t, char, mbstate_t>::do_max_length() const _NOEXCEPT
{
return 4;
}
@@ -2952,13 +2952,13 @@ codecvt<char32_t, char, mbstate_t>::do_unshift(state_type&,
}
int
-codecvt<char32_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<char32_t, char, mbstate_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-codecvt<char32_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char32_t, char, mbstate_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -2973,7 +2973,7 @@ codecvt<char32_t, char, mbstate_t>::do_length(state_type&,
}
int
-codecvt<char32_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<char32_t, char, mbstate_t>::do_max_length() const _NOEXCEPT
{
return 4;
}
@@ -3025,13 +3025,13 @@ __codecvt_utf8<wchar_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8<wchar_t>::do_encoding() const throw()
+__codecvt_utf8<wchar_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8<wchar_t>::do_always_noconv() const throw()
+__codecvt_utf8<wchar_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3046,7 +3046,7 @@ __codecvt_utf8<wchar_t>::do_length(state_type&,
}
int
-__codecvt_utf8<wchar_t>::do_max_length() const throw()
+__codecvt_utf8<wchar_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 7;
@@ -3100,13 +3100,13 @@ __codecvt_utf8<char16_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8<char16_t>::do_encoding() const throw()
+__codecvt_utf8<char16_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8<char16_t>::do_always_noconv() const throw()
+__codecvt_utf8<char16_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3121,7 +3121,7 @@ __codecvt_utf8<char16_t>::do_length(state_type&,
}
int
-__codecvt_utf8<char16_t>::do_max_length() const throw()
+__codecvt_utf8<char16_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 6;
@@ -3175,13 +3175,13 @@ __codecvt_utf8<char32_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8<char32_t>::do_encoding() const throw()
+__codecvt_utf8<char32_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8<char32_t>::do_always_noconv() const throw()
+__codecvt_utf8<char32_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3196,7 +3196,7 @@ __codecvt_utf8<char32_t>::do_length(state_type&,
}
int
-__codecvt_utf8<char32_t>::do_max_length() const throw()
+__codecvt_utf8<char32_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 7;
@@ -3250,13 +3250,13 @@ __codecvt_utf16<wchar_t, false>::do_unshift(state_type&,
}
int
-__codecvt_utf16<wchar_t, false>::do_encoding() const throw()
+__codecvt_utf16<wchar_t, false>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<wchar_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<wchar_t, false>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3271,7 +3271,7 @@ __codecvt_utf16<wchar_t, false>::do_length(state_type&,
}
int
-__codecvt_utf16<wchar_t, false>::do_max_length() const throw()
+__codecvt_utf16<wchar_t, false>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 6;
@@ -3325,13 +3325,13 @@ __codecvt_utf16<wchar_t, true>::do_unshift(state_type&,
}
int
-__codecvt_utf16<wchar_t, true>::do_encoding() const throw()
+__codecvt_utf16<wchar_t, true>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<wchar_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<wchar_t, true>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3346,7 +3346,7 @@ __codecvt_utf16<wchar_t, true>::do_length(state_type&,
}
int
-__codecvt_utf16<wchar_t, true>::do_max_length() const throw()
+__codecvt_utf16<wchar_t, true>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 6;
@@ -3400,13 +3400,13 @@ __codecvt_utf16<char16_t, false>::do_unshift(state_type&,
}
int
-__codecvt_utf16<char16_t, false>::do_encoding() const throw()
+__codecvt_utf16<char16_t, false>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<char16_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<char16_t, false>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3421,7 +3421,7 @@ __codecvt_utf16<char16_t, false>::do_length(state_type&,
}
int
-__codecvt_utf16<char16_t, false>::do_max_length() const throw()
+__codecvt_utf16<char16_t, false>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 4;
@@ -3475,13 +3475,13 @@ __codecvt_utf16<char16_t, true>::do_unshift(state_type&,
}
int
-__codecvt_utf16<char16_t, true>::do_encoding() const throw()
+__codecvt_utf16<char16_t, true>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<char16_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<char16_t, true>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3496,7 +3496,7 @@ __codecvt_utf16<char16_t, true>::do_length(state_type&,
}
int
-__codecvt_utf16<char16_t, true>::do_max_length() const throw()
+__codecvt_utf16<char16_t, true>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 4;
@@ -3550,13 +3550,13 @@ __codecvt_utf16<char32_t, false>::do_unshift(state_type&,
}
int
-__codecvt_utf16<char32_t, false>::do_encoding() const throw()
+__codecvt_utf16<char32_t, false>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<char32_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<char32_t, false>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3571,7 +3571,7 @@ __codecvt_utf16<char32_t, false>::do_length(state_type&,
}
int
-__codecvt_utf16<char32_t, false>::do_max_length() const throw()
+__codecvt_utf16<char32_t, false>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 6;
@@ -3625,13 +3625,13 @@ __codecvt_utf16<char32_t, true>::do_unshift(state_type&,
}
int
-__codecvt_utf16<char32_t, true>::do_encoding() const throw()
+__codecvt_utf16<char32_t, true>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf16<char32_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<char32_t, true>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3646,7 +3646,7 @@ __codecvt_utf16<char32_t, true>::do_length(state_type&,
}
int
-__codecvt_utf16<char32_t, true>::do_max_length() const throw()
+__codecvt_utf16<char32_t, true>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 6;
@@ -3700,13 +3700,13 @@ __codecvt_utf8_utf16<wchar_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8_utf16<wchar_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8_utf16<wchar_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3721,7 +3721,7 @@ __codecvt_utf8_utf16<wchar_t>::do_length(state_type&,
}
int
-__codecvt_utf8_utf16<wchar_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 7;
@@ -3775,13 +3775,13 @@ __codecvt_utf8_utf16<char16_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8_utf16<char16_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<char16_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8_utf16<char16_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<char16_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3796,7 +3796,7 @@ __codecvt_utf8_utf16<char16_t>::do_length(state_type&,
}
int
-__codecvt_utf8_utf16<char16_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<char16_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 7;
@@ -3850,13 +3850,13 @@ __codecvt_utf8_utf16<char32_t>::do_unshift(state_type&,
}
int
-__codecvt_utf8_utf16<char32_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<char32_t>::do_encoding() const _NOEXCEPT
{
return 0;
}
bool
-__codecvt_utf8_utf16<char32_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<char32_t>::do_always_noconv() const _NOEXCEPT
{
return false;
}
@@ -3871,7 +3871,7 @@ __codecvt_utf8_utf16<char32_t>::do_length(state_type&,
}
int
-__codecvt_utf8_utf16<char32_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<char32_t>::do_max_length() const _NOEXCEPT
{
if (_Mode_ & consume_header)
return 7;
OpenPOWER on IntegriCloud