src/Generic/SPropTrees/STreeNode.cpp
//like DistillUtilities::getAtomiHead() but operates on SynNodes and can start anywhere (not only on NAME mentions!

like DistillUtilities::getAtomiHead() but operates on SynNodes and can start anywhere (not only on NAME mentions!
like DistillUtilities :: getAtomiHead () but operates on SynNodes and can start anywhere ( not only on NAME mentions!
const SynNode* STreeNode::getAtomicHeadGeneral(const SynNode* sn) {
	const SynNode *headPreterm=sn->getHeadPreterm();
	const SynNode *potentialName=headPreterm->getParent();
	return (potentialName && potentialName->getTag() == Symbol(L"NPP")) ? potentialName : headPreterm;
}
const SynNode * STreeNode :: getAtomicHeadGeneral ( const SynNode * sn ) { const SynNode * headPreterm = sn -> getHeadPreterm ( ) ; const SynNode * potentialName = headPreterm -> getParent ( ) ; return ( potentialName && potentialName -> getTag ( ) == Symbol ( L" " ) ) ? potentialName : headPreterm ; }
like DistillUtilities::getAtomiHead() but operates on SynNodes and can start anywhere (not only on NAME mentions!
like DistillUtilities :: getAtomiHead () but operates on SynNodes and can start anywhere ( not only on NAME mentions!
//!!! faking name tag here, this is not standard policy
