Commit 522e8f9d authored by Leonard Faecke's avatar Leonard Faecke
Browse files

* Added deeper analysis of structured types

parent 7bb83565
Loading
Loading
Loading
Loading
+31 −1
Original line number Diff line number Diff line
@@ -435,7 +435,37 @@ public class UsageAnalyzer implements Callable<TTCN3Usage> {
			addToOutput(output, id);
		} else if(type.getBody().getStructured() != null) {
			id += "Structured";
			//TODO expand analysis
			StructuredTypeDef struc = type.getBody().getStructured();
			if(struc.getEnumDef() != null) {
				id += "Enum";
			} else if(struc.getPort() != null) {
				id += "Port";
				if(struc.getPort().getBody().getAttribs().getMixed() != null) {
					id += "Mixed";
				} if(struc.getPort().getBody().getAttribs().getMessage() != null) {
					id += "Message";
				} if(struc.getPort().getBody().getAttribs().getProcedure() != null) {
					id += "Procedure";
				} else {
					System.out.println("Unknown type structure port");
				}
			} else if(struc.getComponent() != null) {
				id += "Component";
			} else if(struc.getRecord() != null) {
				id += "Record";
			} else if (struc.getRecordOf() != null) {
				id += "RecordOf";
				id += struc.getRecordOf().getType().getPre();
			} else if(struc.getSet() != null) {
				id += "Set";
			} else if (struc.getSetOf() != null) {
				id += "SetOf";
				id += struc.getSetOf().getType().getPre();
			} else if (struc.getUnion() != null) {
				id += "Union";
			} else {
				System.out.println("Unknown type structure");
			}
			addToOutput(output, id);
		} else {
			System.out.println("Type is neither structured nor a subtype");