Each code instrumentation point within a file is uniquely identified by its callsite identifier. The callsite identifier is a monotonically increasing integer incrementing from the initial value of 0 for a new module.
The predicate associates arbitrary data (a valid Prolog term) with a specified instrumentation callsite within a module or file.
The data is stored in a non-logical store and can be retrieved using instrument:get_callsite_data/2.
The predicate is a tool and data for a callsite of a module other than the current calling module context can be stored by invoking set_callsite_data(SiteId, UserData)@Module.