1 package org.simantics.scl.compiler.constants;
3 import org.objectweb.asm.Label;
4 import org.simantics.scl.compiler.internal.codegen.continuations.Cont;
5 import org.simantics.scl.compiler.internal.codegen.references.IVal;
6 import org.simantics.scl.compiler.internal.codegen.utils.MethodBuilder;
7 import org.simantics.scl.compiler.internal.codegen.utils.TransientClassBuilder;
8 import org.simantics.scl.compiler.types.Type;
9 import org.simantics.scl.compiler.types.Types;
10 import org.simantics.scl.runtime.tuple.Tuple0;
12 public class NoRepConstant extends Constant {
13 public static final NoRepConstant PUNIT = new NoRepConstant(Types.PUNIT);
14 public static final NoRepConstant UNIT = new NoRepConstant(Types.UNIT);
16 public NoRepConstant(Type type) {
20 public void push(MethodBuilder mb) {
25 public void deconstruct(MethodBuilder mb, IVal parameter, Cont success,
30 public int constructorTag() {
35 public String toString() {
40 public Object realizeValue(TransientClassBuilder classBuilder) {
41 return Tuple0.INSTANCE;