package jetbrains.mps.kotlin.behavior;

/*Generated by MPS */

import jetbrains.mps.kotlin.api.declaration.ParameterDeclaration;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SLinkOperations;
import org.jetbrains.mps.openapi.language.SContainmentLink;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;

public class FunctionTypeInvokeParameterDeclaration implements ParameterDeclaration {
  private final SNode myParam;
  public FunctionTypeInvokeParameterDeclaration(SNode param) {
    myParam = param;
  }
  @Override
  public SNode getNode() {
    return myParam;
  }
  @Override
  public SNode getType() {
    return SLinkOperations.getTarget(myParam, LINKS.type$69zk);
  }
  @Override
  public boolean isVararg() {
    return false;
  }
  @Override
  public boolean isOptional() {
    return false;
  }

  private static final class LINKS {
    /*package*/ static final SContainmentLink type$69zk = MetaAdapterFactory.getContainmentLink(0x6b3888c1980244d8L, 0x8baff8e6c33ed689L, 0x63c34deca48843ccL, 0x63c34deca48843d1L, "type");
  }
}
