1//===----------------------------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8///
9/// \file
10/// The list of functions that make up the LLVM CAS plugin API.
11///
12/// Format is Name/required. If 'required' is true then loading will fail if the
13/// symbol is missing, otherwise loading will continue and the function pointer
14/// will be null. Order is lexicographically by name.
15///
16//===----------------------------------------------------------------------===//
17
18CASPLUGINAPI_FUNCTION(actioncache_get_for_digest, true)
19CASPLUGINAPI_FUNCTION(actioncache_get_for_digest_async, true)
20CASPLUGINAPI_FUNCTION(actioncache_put_for_digest, true)
21CASPLUGINAPI_FUNCTION(actioncache_put_for_digest_async, true)
22CASPLUGINAPI_FUNCTION(actioncache_validate, false)
23CASPLUGINAPI_FUNCTION(cancellable_cancel, false)
24CASPLUGINAPI_FUNCTION(cancellable_dispose, false)
25CASPLUGINAPI_FUNCTION(cas_contains_object, true)
26CASPLUGINAPI_FUNCTION(cas_create, true)
27CASPLUGINAPI_FUNCTION(cas_dispose, true)
28CASPLUGINAPI_FUNCTION(cas_get_hash_schema_name, true)
29CASPLUGINAPI_FUNCTION(cas_get_objectid, true)
30CASPLUGINAPI_FUNCTION(cas_get_ondisk_size, false)
31CASPLUGINAPI_FUNCTION(cas_load_object, true)
32CASPLUGINAPI_FUNCTION(cas_load_object_async, true)
33CASPLUGINAPI_FUNCTION(cas_options_create, true)
34CASPLUGINAPI_FUNCTION(cas_options_dispose, true)
35CASPLUGINAPI_FUNCTION(cas_options_set_client_version, true)
36CASPLUGINAPI_FUNCTION(cas_options_set_ondisk_path, true)
37CASPLUGINAPI_FUNCTION(cas_options_set_option, true)
38CASPLUGINAPI_FUNCTION(cas_prune_ondisk_data, false)
39CASPLUGINAPI_FUNCTION(cas_set_ondisk_size_limit, false)
40CASPLUGINAPI_FUNCTION(cas_store_from_filepath, false)
41CASPLUGINAPI_FUNCTION(cas_store_object, true)
42CASPLUGINAPI_FUNCTION(cas_validate, false)
43CASPLUGINAPI_FUNCTION(digest_parse, true)
44CASPLUGINAPI_FUNCTION(digest_print, true)
45CASPLUGINAPI_FUNCTION(get_plugin_version, true)
46CASPLUGINAPI_FUNCTION(loaded_object_export_data_to_filepath, false)
47CASPLUGINAPI_FUNCTION(loaded_object_get_data, true)
48CASPLUGINAPI_FUNCTION(loaded_object_get_refs, true)
49CASPLUGINAPI_FUNCTION(loaded_object_get_standalone_data, false)
50CASPLUGINAPI_FUNCTION(object_refs_get_count, true)
51CASPLUGINAPI_FUNCTION(object_refs_get_id, true)
52CASPLUGINAPI_FUNCTION(objectid_get_digest, true)
53CASPLUGINAPI_FUNCTION(standalone_data_dispose, false)
54CASPLUGINAPI_FUNCTION(string_dispose, true)
55