1%%
2%% %CopyrightBegin%
3%%
4%% Copyright Ericsson AB 2019. All Rights Reserved.
5%%
6%% Licensed under the Apache License, Version 2.0 (the "License");
7%% you may not use this file except in compliance with the License.
8%% You may obtain a copy of the License at
9%%
10%%     http://www.apache.org/licenses/LICENSE-2.0
11%%
12%% Unless required by applicable law or agreed to in writing, software
13%% distributed under the License is distributed on an "AS IS" BASIS,
14%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15%% See the License for the specific language governing permissions and
16%% limitations under the License.
17%%
18%% %CopyrightEnd%
19%%
20
21%% A NIF resource that sends a message in the destructor.
22
23-module(erts_test_destructor).
24
25-export([init/1, send/2]).
26
27init(Config) ->
28    case is_loaded() of
29        false ->
30            Path = proplists:get_value(data_dir, Config),
31            erlang:load_nif(filename:join(Path,?MODULE), []);
32        true ->
33            ok
34    end.
35
36is_loaded() ->
37    false.
38
39%% Create a resource which sends Msg to Pid when destructed.
40send(_Pid, _Msg) ->
41    erlang:nif_error("NIF not loaded").
42