public ConstructorSymbol(
     ObjectTypeSymbol containingSymbol,
     Name?name,
     FixedList <DataType> parameterDataTypes,
     FixedSet <ReachabilityAnnotation>?reachabilityAnnotations = null)
     : base(containingSymbol, name, parameterDataTypes,
            containingSymbol.DeclaresDataType.ToConstructorReturn(),
            reachabilityAnnotations ?? FixedSet <ReachabilityAnnotation> .Empty)
 {
     ContainingSymbol = containingSymbol;
     ReturnDataType   = containingSymbol.DeclaresDataType.ToConstructorReturn();
 }
 public static ConstructorSymbol CreateDefault(ObjectTypeSymbol containingSymbol)
 {
     return(new ConstructorSymbol(containingSymbol, null, FixedList <DataType> .Empty, FixedSet <ReachabilityAnnotation> .Empty));
 }