public override BoundNode VisitPreviousSubmissionReference( BoundPreviousSubmissionReference node ) { var targetType = (ImplicitNamedTypeSymbol)node.Type; Debug.Assert(targetType.TypeKind == TypeKind.Submission); Debug.Assert(_factory.TopLevelMethod is { IsStatic: false });
public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) { var targetType = (ImplicitTypeSymbol)node.Type; Debug.Assert(targetType.IsScriptClass); Debug.Assert(!containingSymbol.IsStatic); Debug.Assert(previousSubmissionFields != null); var targetScriptReference = previousSubmissionFields.GetOrMakeField(targetType); var thisReference = new BoundThisReference(null, null, containingSymbol.ThisParameter, containingType); return new BoundFieldAccess(null, null, thisReference, targetScriptReference, constantValueOpt: null); }
public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) { var targetType = (ImplicitNamedTypeSymbol)node.Type; Debug.Assert(targetType.TypeKind == TypeKind.Submission); Debug.Assert(!_factory.CurrentMethod.IsStatic); Debug.Assert(_previousSubmissionFields != null); var syntax = node.Syntax; var targetScriptReference = _previousSubmissionFields.GetOrMakeField(targetType); var thisReference = new BoundThisReference(syntax, _factory.CurrentType); return new BoundFieldAccess(syntax, thisReference, targetScriptReference, ConstantValue.NotAvailable); }
public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) { var targetType = (ImplicitTypeSymbol)node.Type; Debug.Assert(targetType.IsScriptClass); Debug.Assert(!containingSymbol.IsStatic); Debug.Assert(previousSubmissionFields != null); var targetScriptReference = previousSubmissionFields.GetOrMakeField(targetType); var thisReference = new BoundThisReference(null, null, containingSymbol.ThisParameter, containingType); return(new BoundFieldAccess(null, null, thisReference, targetScriptReference, constantValueOpt: null)); }
public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) { var targetType = (ImplicitNamedTypeSymbol)node.Type; Debug.Assert(targetType.TypeKind == TypeKind.Submission); Debug.Assert(!_factory.TopLevelMethod.IsStatic); Debug.Assert(_previousSubmissionFields != null); var syntax = node.Syntax; var targetScriptReference = _previousSubmissionFields.GetOrMakeField(targetType); var thisReference = new BoundThisReference(syntax, _factory.CurrentType); return(new BoundFieldAccess(syntax, thisReference, targetScriptReference, ConstantValue.NotAvailable)); }
public override object VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node, object arg) { return(null); }