SC_FORCELINK(3)

πŸ“¦
version 2.3.1 Β· 4 versions
, in ubuntu jammy

okay so bestie, welcome to the MPQC manual page for sc::ForceLink< T, A >(3) πŸ’– this one is short but it's lowkey doing important force-the-right-code-to-link business.

πŸŽ€ NAME πŸŽ€

sc::ForceLink< T, A > β€” this, together with ForceLinkBase, is used to force code for particular classes to be linked into executables. no cap, that's the whole vibe.

🌸 SYNOPSIS 🌸

#include <class.h>

Inherits sc::ForceLinkBase< const Ref< KeyVal > & >.

πŸ’– Public Member Functions

  • DescribedClass * create (A a) β€” the public member function listed on the page, exactly like that.

πŸ¦‹ Detailed Description πŸ¦‹

The template setup is:

template<class T, class A = const Ref<KeyVal> &>
class sc::ForceLink< T, A >

(the original page has a stray " sitting right after class sc::ForceLink< T, A > β€” formatting said slay, but the class is still sc::ForceLink< T, A > πŸ’€)

Objects are created from input and checkpoint files by using class name lookup to find that class's ClassDesc object. The ClassDesc object has members that can create the class. Unfortunately, linking in a library doesn't cause code for the the ClassDesc, and thus the class itself, to be linked. ForceLink objects are created in linkage.h files for each library. The code containing the main routine for an executable can include these linkage files to force code for that library's classes to be linked.

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for MPQC from the source code.


xoxo bestie πŸ’… signing off from the MPQC source code: Version 2.3.1, Sun Oct 4 2020 🫢✨

πŸ“¦ where this page comes from