public ParameterSyntax(SyntaxToken name, ReferenceTypeSyntax type) { Requires.NotNull(name, nameof(name)); SyntaxRequires.TypeIs(name, SyntaxTokenType.Identifier, nameof(name)); Name = name; Type = type; }
public ReferenceType(ReferenceTypeSyntax syntax, Package containingPackage, ValueType type) : base(syntax, containingPackage) { IsOwned = syntax.IsOwned ?? false; // TODO actually infer ownership Type = type; }
private static ReferenceType Resolve(Package containingPackage, ReferenceTypeSyntax syntax, IReadOnlyDictionary<SyntaxNode, Binder> binders) { var valueType = Resolve(containingPackage, syntax.Type, binders); return new ReferenceType(syntax, containingPackage, valueType); }