Consider something like this (which is not uncommon in snippet code):
$tpls = array(
'innerTpl',
'outerTpl',
'rowTpl',
}
foreach($tpls as $tpl) {
$this->config[$tpl] = $modx->getChunk($tpl);
}
or this, which is even more common:
$tpl = $modx->getOption('rowTpl', $scriptProperties, 'componentRowTpl');
$this->rowTpl = $modx->getChunk($tpl);
The name of the chunk being used here depends on the value (if any) that the user puts in that property, which could be in the snippet tag, the snippet's default properties, an attached property set, or (in rare cases) a System Setting, Context Setting, or User Setting.
In fact, almost all of the getChunk() calls in a well-written extra are dynamic so that the user can pass the chunk name as a property. In all those cases, even parsing the getChunk() call would get you nothing useful, and a whole lot of chunks would be mistakenly listed as unused.
And, if that's not bad enough for you, the chunk may also be retrieved with getObject() or getCollection() and that call is also likely to be dynamic.
It's a feature that's often asked for and seems really easy, but it's a real can of worms when you try to implement it.
As Susan says, Templates are easier, but in rare cases, they can be used without being attached to any resource.