Project

General

Profile

Revision 9

Added by Willibald K. over 8 years ago

remove support for Qualitative Action Systems, rename UlyssesType to Type

View differences:

OoaPrologType.java
29 29

  
30 30
import org.momut.ooas.ast.identifiers.EnumIdentifier;
31 31
import org.momut.ooas.ast.identifiers.Identifier;
32
import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
33 32
import org.momut.ooas.ast.types.BoolType;
34 33
import org.momut.ooas.ast.types.CharType;
35 34
import org.momut.ooas.ast.types.EnumType;
......
41 40
import org.momut.ooas.ast.types.OoActionSystemInstance;
42 41
import org.momut.ooas.ast.types.OoActionSystemType;
43 42
import org.momut.ooas.ast.types.OpaqueType;
44
import org.momut.ooas.ast.types.QrType;
45 43
import org.momut.ooas.ast.types.TupleType;
46
import org.momut.ooas.ast.types.UlyssesType;
44
import org.momut.ooas.ast.types.Type;
47 45
import org.momut.ooas.ast.types.ValuedEnumType;
48 46
import org.momut.ooas.codegen.OoasCodeEmitter;
49 47
import org.momut.ooas.utils.exceptions.NotImplementedException;
......
58 56

  
59 57
	protected final Scratchbook m_scratchbook;
60 58

  
61
	public static void EmitType(UlyssesType aType, OoaPrologIdentifier.Factory idFactory, Scratchbook scratchbook)
59
	public static void EmitType(Type aType, OoaPrologIdentifier.Factory idFactory, Scratchbook scratchbook)
62 60
	{
63 61
		final OoaPrologType ptype = new OoaPrologType(idFactory, scratchbook);
64 62
		final OoasCodeEmitter m_emitter = new OoasCodeEmitter();
......
176 174
			m_emitter.Append("[");
177 175
			first = true;
178 176

  
179
			for (final UlyssesType type: tupleType.innerTypes())
177
			for (final Type type: tupleType.innerTypes())
180 178
			{
181 179
				final OoaPrologType iType = new OoaPrologType(idFactory, scratchbook);
182 180
				type.Accept(iType);
......
191 189
			m_emitter.AppendLine("]).");
192 190
			break;
193 191

  
194
		case QrType:
195
			aType.Accept(ptype);
196
			final QrType qrtype = (QrType)aType;
197

  
198
			final StringBuilder landmarks = new StringBuilder();
199
			int cntr = 0;
200
			for (final LandmarkIdentifier s: qrtype.landmarks())
201
			{
202
				if (cntr != 0)
203
					landmarks.append(", ");
204
				else
205
					cntr++;
206

  
207
				final OoaPrologIdentifier identifierVisitor = idFactory.create();
208
				s.Accept(identifierVisitor);
209
				landmarks.append(identifierVisitor.toString());
210
			}
211
			m_emitter.AppendLine(String.format("qspace( %s, [%s] ).", ptype.toString(), landmarks.toString()));
212
			break;
213 192
		default:
214 193
			throw new NotImplementedException();
215 194
		}
......
220 199
	private final OoasCodeEmitter m_emitter = new OoasCodeEmitter();
221 200
	private final OoaPrologIdentifier.Factory m_idFactory;
222 201

  
223
	public /*override*/ @Override
224
	void visit(CharType charType)
202
	@Override
203
	public void visit(CharType charType)
225 204
	{
226 205
		m_emitter.Append("char");
227 206
	}
228 207

  
229
	public /*override*/ @Override
230
	void visit(IntType intType)
208
	@Override
209
	public void visit(IntType intType)
231 210
	{
232 211
		final OoaPrologIdentifier id = m_idFactory.create();
233 212
		intType.identifier().Accept(id);
......
235 214
		m_emitter.Append(id.toString());
236 215
	}
237 216

  
238
	public /*override*/ @Override
239
	void visit(BoolType boolType)
217
	@Override
218
	public void visit(BoolType boolType)
240 219
	{
241 220
		m_emitter.Append("bool");
242 221
	}
243 222

  
244
	public /*override*/ @Override
245
	void visit(FloatType floatType)
223
	@Override
224
	public void visit(FloatType floatType)
246 225
	{
247 226
		throw new NotImplementedException();
248 227
	}
249 228

  
250
	public /*override*/ @Override
251
	void visit(EnumType enumType)
229
	@Override
230
	public void visit(EnumType enumType)
252 231
	{
253 232
		final OoaPrologIdentifier id = m_idFactory.create();
254 233
		enumType.identifier().Accept(id);
......
256 235
		m_emitter.Append(id.toString());
257 236
	}
258 237

  
259
	public /*override*/ @Override
260
	void visit(ListType listType)
238
	@Override
239
	public void visit(ListType listType)
261 240
	{
262 241
		final OoaPrologIdentifier id = m_idFactory.create();
263 242
		listType.identifier().Accept(id);
......
266 245

  
267 246
	}
268 247

  
269
	public /*override*/ @Override
270
	void visit(MapType mapType)
248
	@Override
249
	public void visit(MapType mapType)
271 250
	{
272 251
		throw new NotImplementedException();
273 252
	}
274 253

  
275
	public /*override*/ @Override
276
	void visit(QrType qrType)
277
	{
278
		final OoaPrologIdentifier id = m_idFactory.create();
279
		qrType.identifier().Accept(id);
280
		m_emitter.Append(id.toString());
281
		// m_emitter.Append(qrType.identifier.tokenText.ToLower());
282
	}
283 254

  
284
	public /*override*/ @Override
285
	void visit(TupleType tupleType)
255
	@Override
256
	public void visit(TupleType tupleType)
286 257
	{
287 258
		final OoaPrologIdentifier id = m_idFactory.create();
288 259
		tupleType.identifier().Accept(id);
......
290 261
		m_emitter.Append(id.toString());
291 262
	}
292 263

  
293
	public /*override*/ @Override
294
	void visit(FunctionType functionType)
264
	@Override
265
	public void visit(FunctionType functionType)
295 266
	{
296 267
		throw new NotImplementedException();
297 268
	}
298 269

  
299
	public /*override*/ @Override
300
	void visit(OoActionSystemType ooActionSystemType)
270
	@Override
271
	public void visit(OoActionSystemType ooActionSystemType)
301 272
	{
302 273
		final OoaPrologIdentifier id = m_idFactory.create();
303 274
		ooActionSystemType.identifier().Accept(id);
304 275
		m_emitter.Append(id.toString());
305 276
	}
306 277

  
307
	public /*override*/ @Override
308
	void visit(OpaqueType opaqueType)
278
	@Override
279
	public void visit(OpaqueType opaqueType)
309 280
	{
310 281
		throw new NotImplementedException();
311 282
	}
312 283

  
313 284

  
314 285
	@Override
315
	public /*override*/ String toString()
286
	public String toString()
316 287
	{
317 288
		return m_emitter.toString();
318 289
	}

Also available in: Unified diff