The open source OpenXR runtime
at main 45 lines 1.3 kB view raw
1// Copyright 2020-2021, Collabora, Ltd. 2// SPDX-License-Identifier: BSL-1.0 3// Author: Rylie Pavlik <rylie.pavlik@collabora.com> 4// Inline implementations: do not include on its own! 5 6#pragma once 7 8#include <string> 9 10namespace wrap { 11namespace android::net { 12inline std::string Uri::toString() const { 13 assert(!isNull()); 14 return object().call<std::string>(Meta::data().toString); 15} 16 17inline Uri_Builder Uri_Builder::construct() { 18 return Uri_Builder(Meta::data().clazz().newInstance(Meta::data().init)); 19} 20 21inline Uri_Builder &Uri_Builder::scheme(std::string const &stringParam) { 22 assert(!isNull()); 23 object().call<jni::Object>(Meta::data().scheme, stringParam); 24 return *this; 25} 26 27inline Uri_Builder &Uri_Builder::authority(std::string const &stringParam) { 28 assert(!isNull()); 29 object().call<jni::Object>(Meta::data().authority, stringParam); 30 return *this; 31} 32 33inline Uri_Builder &Uri_Builder::appendPath(std::string const &stringParam) { 34 assert(!isNull()); 35 object().call<jni::Object>(Meta::data().appendPath, stringParam); 36 return *this; 37} 38 39inline Uri Uri_Builder::build() { 40 assert(!isNull()); 41 return Uri(object().call<jni::Object>(Meta::data().build)); 42} 43 44} // namespace android::net 45} // namespace wrap