001package org.hl7.fhir.r5.utils.structuremap;
002
003import org.hl7.fhir.r5.model.Base;
004import org.hl7.fhir.r5.model.PrimitiveType;
005import org.hl7.fhir.utilities.MarkedToMoveToAdjunctPackage;
006
007@MarkedToMoveToAdjunctPackage
008public class Variable {
009  private VariableMode mode;
010  private String name;
011  private Base object;
012
013  public Variable(VariableMode mode, String name, Base object) {
014    super();
015    this.mode = mode;
016    this.name = name;
017    this.object = object;
018  }
019
020  public VariableMode getMode() {
021    return mode;
022  }
023
024  public String getName() {
025    return name;
026  }
027
028  public Base getObject() {
029    return object;
030  }
031
032  public String summary() {
033    if (object == null)
034      return null;
035    else if (object instanceof PrimitiveType)
036      return name + ": \"" + ((PrimitiveType) object).asStringValue() + '"';
037    else
038      return name + ": (" + object.fhirType() + ")";
039  }
040}