Commit ccb06bd9 authored by Martti Käärik's avatar Martti Käärik
Browse files

Custom parser with configurable default rule.

Change-Id: Ie16159babe4b4d8a58c1acce568c7ac9f81903f4
parent 98f0d304
Loading
Loading
Loading
Loading
+6 −0
Original line number Original line Diff line number Diff line
@@ -3,8 +3,10 @@
 */
 */
package org.etsi.mts.tdl.graphical.labels;
package org.etsi.mts.tdl.graphical.labels;


import org.eclipse.xtext.parser.IParser;
import org.eclipse.xtext.serializer.sequencer.IContextFinder;
import org.eclipse.xtext.serializer.sequencer.IContextFinder;
import org.eclipse.xtext.serializer.tokens.ICrossReferenceSerializer;
import org.eclipse.xtext.serializer.tokens.ICrossReferenceSerializer;
import org.etsi.mts.tdl.graphical.labels.parser.RuleBasedDataParser;
import org.etsi.mts.tdl.graphical.labels.serializer.DataCrossReferenceSerializer;
import org.etsi.mts.tdl.graphical.labels.serializer.DataCrossReferenceSerializer;


/**
/**
@@ -19,4 +21,8 @@ public class DataRuntimeModule extends AbstractDataRuntimeModule {
	public Class<? extends IContextFinder> bindIContextFinder() {
	public Class<? extends IContextFinder> bindIContextFinder() {
		return DataContextFinder.class;
		return DataContextFinder.class;
	}
	}
	
	public Class<? extends IParser> bindIParser() {
		return RuleBasedDataParser.class;
	}
}
}
+17 −0
Original line number Original line Diff line number Diff line
package org.etsi.mts.tdl.graphical.labels.parser;

import org.etsi.mts.tdl.graphical.labels.parser.antlr.DataParser;

public class RuleBasedDataParser extends DataParser {
	
	private String defaultRuleName = super.getDefaultRuleName();
	
	public void setDefaultRuleName(String defaultRuleName) {
		this.defaultRuleName = defaultRuleName;
	}

	@Override
	protected String getDefaultRuleName() {
		return defaultRuleName;
	}
}