// Path: src/com/iconmaster/source/element/Element.java
// public class Element implements IDirectable {
// 	public IElementType type;
// 	public Object[] args = new Object[10];
// 	public Element dataType = null;
// 	public ArrayList<String> directives = new ArrayList<>();
// 	public Range range;
// 
// 	public Element(Range range, IElementType type) {
// 		this.range = range;
// 		this.type = type;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		StringBuilder sb = new StringBuilder("{");
// 		sb.append(type).append(" as ").append(dataType).append(": [").append(args[0]).append(" ").append(args[1]).append(" ").append(args[2]).append(" ").append(args[3]).append("]");
// 		return sb.append("}").toString();
// 	}
// 
// 	@Override
// 	public ArrayList<String> getDirectives() {
// 		return directives;
// 	}
// }


import com.iconmaster.source.element.Element;
package com.iconmaster.source.prototype;


/**
 *
 * @author iconmaster
 */
public class CustomType extends TypeDef {
	public Element rawType;

	public CustomType(String name, Element type) {
		super(name);
// Path: src/com/iconmaster/source/element/Element.java
// public class Element implements IDirectable {
// 	public IElementType type;
// 	public Object[] args = new Object[10];
// 	public Element dataType = null;
// 	public ArrayList<String> directives = new ArrayList<>();
// 	public Range range;
// 
// 	public Element(Range range, IElementType type) {
// 		this.range = range;
// 		this.type = type;
// 	}
// 
// 	@Override
// 	public String toString() {
// 		StringBuilder sb = new StringBuilder("{");
// 		sb.append(type).append(" as ").append(dataType).append(": [").append(args[0]).append(" ").append(args[1]).append(" ").append(args[2]).append(" ").append(args[3]).append("]");
// 		return sb.append("}").toString();
// 	}
// 
// 	@Override
// 	public ArrayList<String> getDirectives() {
// 		return directives;
// 	}
// }


// Path: src/com/iconmaster/source/prototype/CustomType.java
import com.iconmaster.source.element.Element;

package com.iconmaster.source.prototype;


/**
 *
 * @author iconmaster
 */
public class CustomType extends TypeDef {
	public Element rawType;

	public CustomType(String name, Element type) {
		super(name);
		this.rawType = type;