Did you know ... | Search Documentation: |
Pack logtalk -- logtalk-3.86.0/manuals/_sources/refman/predicates/logtalk_make_0.rst.txt |
.. This file is part of Logtalk https://logtalk.org/ SPDX-FileCopyrightText: 1998-2024 Paulo Moura <pmoura@logtalk.org> SPDX-License-Identifier: Apache-2.0
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
.. rst-class:: align-right
built-in predicate
.. index:: pair: logtalk_make/0; Built-in predicate .. _predicates_logtalk_make_0:
::
logtalk_make
Reloads all Logtalk source files that have been modified since the time
they were last loaded. Only source files loaded using the
:ref:predicates_logtalk_load_1
and :ref:predicates_logtalk_load_2
predicates are reloaded. Non-modified files will also be reloaded when
a previous attempt to load them failed or when there is a change to the
compilation mode (i.e., when the files were loaded without explicit
:ref:`debug <flag_debug>` or :ref:`optimize <flag_optimize>` flags and
the default values of these flags changed after loading; no check is made,
however, for other implicit compiler flags that may have changed since
loading). When an included file is modified, this predicate reloads its
main file (i.e., the file that contains the :ref:directives_include_1
directive).
Depending on the :term:`backend Prolog compiler`, the shortcut {*}
may
be used as an alternative. Check the :term:`adapter files <adapter file>`
for the availability of the shortcut as it is not part of the language.
.. warning::
Only use the {*}
shortcut at the top-level interpreter and
never in source files.
This predicate can be extended by the user by defining clauses for the
:ref:predicates_logtalk_make_target_action_1
multifile and dynamic hook
predicate using the argument all
. The additional user defined actions
are run after the default one.
::
logtalk_make - one
(none)
::
% reload all files modified since last loaded: | ?- logtalk_make.
.. seealso::
:ref:predicates_logtalk_compile_1
,
:ref:predicates_logtalk_compile_2
,
:ref:predicates_logtalk_load_1
,
:ref:predicates_logtalk_load_2
,
:ref:predicates_logtalk_make_1
,
:ref:predicates_logtalk_make_target_action_1