コード例 #1
0
ファイル: parser.cpp プロジェクト: majestic53/dasm16
std::string 
_parser::statement_to_string(
	bool verbose
	)
{
	LOCK_OBJECT(std::recursive_mutex, _parser_lock);

	return statement_to_string(_position, verbose);
}
コード例 #2
0
ファイル: printing.c プロジェクト: fwum/fwum
/*
Print an AST node to stdout (recursive)
*/
void dump_node(linked_list *list, int indentation) {
    linked_iter iterator = ll_iter_head(list);
    while(ll_iter_has_next(&iterator)) {
        for(int i = 0; i < indentation; i++) {
    		printf("\t");
        }
        statement *state = ll_iter_next(&iterator);
        printf("%s", statement_to_string(state->type));
    	printf(": %s\n", evaluate(state->data));
    	if(state->children != NULL) {
    		dump_node(state->children, indentation + 1);
        }
    }
}
コード例 #3
0
ファイル: parser.cpp プロジェクト: majestic53/dasm16
std::string 
_parser::to_string(
	bool verbose
	)
{
	LOCK_OBJECT(std::recursive_mutex, _parser_lock);

	std::stringstream ss;

	if(verbose) {
		ss << "STATEMENT[" << _position << "]" << std::endl;
	}
	ss << statement_to_string(_position, verbose);

	return ss.str();
}