toJSON method

Map<String, dynamic> toJSON()

Transforms this instance into a JSON object.

Implementation

Map<String,dynamic> toJSON() {
	final Map<String,dynamic> data = {
		'type': runtimeType.toString(),
		'entities': [],
		'_messageDispatcher': _messageDispatcher.toJSON()
	};

	// entities

	processEntity( entity ) {
		data['entities'].add( entity.toJSON() );
		for ( int i = 0, l = entity.children.length; i < l; i ++ ) {
			processEntity( entity.children[ i ] );
		}
	}

	for ( int i = 0, l = entities.length; i < l; i ++ ) {
		// recursively process all entities
		processEntity( entities[ i ] );
	}

	return data;
}