public void readNodesDefinitions(List<Statement> statements) throws IOException {
        readNodesDefinitions(statements, new ShaderNodeDefinitionKey());
    }
Read the ShaderNodesDefinitions block and internally stores a map of
ShaderNodesDefinition This method is used by the j3m loader.

When loaded in a material, the definitions are not stored as a list, but
they are stored in shader nodes based on this definition.

The map is here to map the definition to the nodes, and ovoid reloading
already loaded definitions

@param statements the list of statements to parse
@throws IOException if an I/O error occurs
jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java