The underlying protected method that actually does the work.
The underlying protected method that actually does the work. Use this.newDiffList to optionally create returned DiffList. Needs to be defined in subclasses.
The number of calls to process that resulted in a change (a non-empty DiffList)
The number of calls to process(numIterations:Int) or process(contexts:C,numIterations:Int).
If true, calls to "newDiffList" will create a new DiffList to describe the changes they made, otherwise "newDiffList" will return null.
In your implementation of "process1" use this method to optionally create a new DiffList, obeying "makeNewDiffList".
Convenient method for setting makeNewDiffList to false, and returning this.
Called after each iteration of sampling the full list of variables.
Called after each iteration of sampling the full list of variables. Return false if you want sampling to stop early.
Call just after each step of sampling.
Called just before each step of sampling.
Called just before each step of sampling. Return an alternative variable if you want that one sampled instead. Return null if you want to abort sampling of this context.
Do one step of sampling.
Do one step of sampling. This is a method intended to be called by users. It manages hooks and processCount.
The number of calls to process(context:C)
Samplers that key off of particular contexts. Subclasses implement "process1(context:C)"