Vuo  2.0.2
VuoUrl.h
Go to the documentation of this file.
1 
10 #pragma once
11 
20 #ifdef __cplusplus
21 extern "C"
22 {
23 #endif
24 
25 #include "VuoHeap.h"
26 #include "VuoInteger.h"
27 #include "VuoText.h"
28 
29 struct json_object;
30 
34 typedef VuoText VuoUrl;
35 
37 struct json_object *VuoUrl_getJson(const VuoUrl value);
38 char * VuoUrl_getSummary(const VuoUrl value);
39 bool VuoUrl_getParts(const VuoUrl url, VuoText *scheme, VuoText *user, VuoText *host, VuoInteger *port, VuoText *path, VuoText *query, VuoText *fragment) VuoWarnUnusedResult;
40 bool VuoUrl_getFileParts(const VuoUrl url, VuoText *path, VuoText *folder, VuoText *filename, VuoText *extension) VuoWarnUnusedResult;
41 
42 #define VuoUrl_SUPPORTS_COMPARISON
43 bool VuoUrl_areEqual(const VuoText a, const VuoText b);
44 bool VuoUrl_isLessThan(const VuoText a, const VuoText b);
45 
46 bool VuoUrl_isRelativePath(const VuoUrl url);
47 
55 };
57 
59 VuoText VuoUrl_escapePosixPath(const VuoText posixPath);
61 bool VuoUrl_isBundle(const VuoUrl url);
62 VuoUrl VuoUrl_appendFileExtension(const char *filename, struct json_object *validExtensions);
64 
66 
69 VuoUrl VuoUrl_makeFromString(const char *str);
70 char *VuoUrl_getString(const VuoUrl value);
71 void VuoUrl_retain(VuoUrl value);
72 void VuoUrl_release(VuoUrl value);
74 
79 #ifdef __cplusplus
80 }
81 #endif