mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[Dependency Scanning] Provide libSwiftScan API to dispose of a string ref
Previously no API returned a raw 'swiftscan_string_ref_t' directly so this was not needed. However, 'swiftscan_compiler_target_info_query' returns a string directly, which the clients need to clean up.
This commit is contained in:
@@ -272,6 +272,9 @@ swiftscan_scan_invocation_get_argv(swiftscan_scan_invocation_t invocation);
|
|||||||
SWIFTSCAN_PUBLIC void
|
SWIFTSCAN_PUBLIC void
|
||||||
swiftscan_string_set_dispose(swiftscan_string_set_t *set);
|
swiftscan_string_set_dispose(swiftscan_string_set_t *set);
|
||||||
|
|
||||||
|
SWIFTSCAN_PUBLIC void
|
||||||
|
swiftscan_string_dispose(swiftscan_string_ref_t string);
|
||||||
|
|
||||||
SWIFTSCAN_PUBLIC void
|
SWIFTSCAN_PUBLIC void
|
||||||
swiftscan_dependency_graph_dispose(swiftscan_dependency_graph_t result);
|
swiftscan_dependency_graph_dispose(swiftscan_dependency_graph_t result);
|
||||||
|
|
||||||
|
|||||||
@@ -27,12 +27,6 @@ DEFINE_SIMPLE_CONVERSION_FUNCTIONS(DependencyScanningTool, swiftscan_scanner_t)
|
|||||||
|
|
||||||
//=== Private Cleanup Functions -------------------------------------------===//
|
//=== Private Cleanup Functions -------------------------------------------===//
|
||||||
|
|
||||||
/// Free the given string.
|
|
||||||
void swiftscan_string_dispose(swiftscan_string_ref_t string) {
|
|
||||||
if (string.data)
|
|
||||||
free(const_cast<void *>(string.data));
|
|
||||||
}
|
|
||||||
|
|
||||||
void swiftscan_dependency_info_details_dispose(
|
void swiftscan_dependency_info_details_dispose(
|
||||||
swiftscan_module_details_t details) {
|
swiftscan_module_details_t details) {
|
||||||
swiftscan_module_details_s *details_impl = details;
|
swiftscan_module_details_s *details_impl = details;
|
||||||
@@ -446,6 +440,11 @@ swiftscan_scan_invocation_get_argv(swiftscan_scan_invocation_t invocation) {
|
|||||||
|
|
||||||
//=== Public Cleanup Functions --------------------------------------------===//
|
//=== Public Cleanup Functions --------------------------------------------===//
|
||||||
|
|
||||||
|
void swiftscan_string_dispose(swiftscan_string_ref_t string) {
|
||||||
|
if (string.data)
|
||||||
|
free(const_cast<void *>(string.data));
|
||||||
|
}
|
||||||
|
|
||||||
void swiftscan_string_set_dispose(swiftscan_string_set_t *set) {
|
void swiftscan_string_set_dispose(swiftscan_string_set_t *set) {
|
||||||
for (unsigned SI = 0, SE = set->count; SI < SE; ++SI)
|
for (unsigned SI = 0, SE = set->count; SI < SE; ++SI)
|
||||||
swiftscan_string_dispose(set->strings[SI]);
|
swiftscan_string_dispose(set->strings[SI]);
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ swiftscan_dependency_graph_create
|
|||||||
swiftscan_batch_scan_result_create
|
swiftscan_batch_scan_result_create
|
||||||
swiftscan_import_set_create
|
swiftscan_import_set_create
|
||||||
swiftscan_scanner_create
|
swiftscan_scanner_create
|
||||||
|
swiftscan_string_dispose
|
||||||
swiftscan_string_set_dispose
|
swiftscan_string_set_dispose
|
||||||
swiftscan_scan_invocation_dispose
|
swiftscan_scan_invocation_dispose
|
||||||
swiftscan_batch_scan_input_dispose
|
swiftscan_batch_scan_input_dispose
|
||||||
|
|||||||
Reference in New Issue
Block a user