001package gudusoft.gsqlparser.ir.bound; 002 003import gudusoft.gsqlparser.ir.common.SourceAnchor; 004 005/** 006 * A procedure/function parameter symbol. 007 */ 008public class BoundParameterSymbol extends BoundSymbol { 009 010 private final String paramName; 011 private final BoundTypeRef paramType; 012 private final EParameterMode mode; 013 014 public BoundParameterSymbol(String paramName, BoundScope declaringScope, 015 SourceAnchor declarationAnchor, 016 BoundTypeRef paramType, EParameterMode mode) { 017 super(paramName, declaringScope, declarationAnchor); 018 this.paramName = paramName; 019 this.paramType = paramType; 020 this.mode = mode; 021 } 022 023 public String getParamName() { return paramName; } 024 public BoundTypeRef getParamType() { return paramType; } 025 public EParameterMode getMode() { return mode; } 026 027 @Override 028 public ESymbolKind getSymbolKind() { 029 return ESymbolKind.PARAMETER; 030 } 031}