src/Generic/propositions/sem_tree/SemMention.cpp
// This appears to be the only entry point to createTracesEarnestly

This appears to be the only entry point to createTracesEarnestly
This appears to be the only entry point to createTracesEarnestly
bool SemMention::createTraces(SemReference *awaiting_ref) {
	if (_branch == 0) {
		return SemNode::createTraces(awaiting_ref);
	} else {
		bool result = _branch->createTraces(this);
		if (result == false) {
			_branch->createTracesEarnestly(this);
		}
		result = false;
		for (SemNode *child = getFirstChild();
			 child;
			 child = child->getNext()) {
			if (child != _branch) {
				if (child->isTangential()) {
					child->createTraces(0);
				} else {
					result |= child->createTraces(this);
				}
			}
		}
		return result;
	}
}
bool SemMention :: createTraces ( SemReference * awaiting_ref ) { if ( _branch == 0 ) { return SemNode :: createTraces ( awaiting_ref ) ; } else { bool result = _branch -> createTraces ( this ) ; if ( result == false ) { _branch -> createTracesEarnestly ( this ) ; } result = false ; for ( SemNode * child = getFirstChild ( ) ; child ; child = child -> getNext ( ) ) { if ( child != _branch ) { if ( child -> isTangential ( ) ) { child -> createTraces ( 0 ) ; } else { result |= child -> createTraces ( this ) ; } } } return result ; } }
This appears to be the only entry point to createTracesEarnestly
This appears to be the only entry point to createTracesEarnestly
// if there's a branch it's a relative clause, which means
 // we need to seek out a trace to point to this node
 // first search in the branch
 // now create traces among all other children
