public bool IsSubTypeOf(HSharpType type) { if (this.ReferencedType is IExtendableType extendable && type is ReferenceType refType) { if (refType.ReferencedType is IExtendableType extendableType) { return(extendable.IsExtensionOf(extendableType)); } else { return(false); } }
public ExternalFunctionType(string methodname, ClassType owner, FuncDeclNode declOrigin, HSharpType returnType, List <HSharpType> parameters) : base(methodname, owner, declOrigin, returnType, parameters) { }
public FunctionType(string methodname, ClassType owner, FuncDeclNode declOrigin, HSharpType returnType, List <HSharpType> parameters) { this.Name = methodname; this.Origin = declOrigin; this.Owner = owner; this.ReturnType = returnType; this.ParameterTypes = parameters; }
public ReferenceType(HSharpType refType) { this.ReferencedType = refType; }