55 references to ValueBoundaryBehavior
Microsoft.Interop.ComInterfaceGenerator (13)
Marshallers\ComInterfaceDispatchMarshallingResolver.cs (2)
66public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.NativeIdentifier;
Marshallers\KeepAliveThisMarshaller.cs (2)
34public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.ManagedIdentifier;
Marshallers\ManagedHResultExceptionGeneratorResolver.cs (4)
57public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.ManagedIdentifier; 94public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.ManagedIdentifier;
Marshallers\ObjectUnwrapperResolver.cs (2)
61public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.NativeIdentifier;
Marshallers\StructAsHResultMarshallerFactory.cs (3)
84public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 88return ValueBoundaryBehavior.AddressOfNativeIdentifier; 91return ValueBoundaryBehavior.NativeIdentifier;
Microsoft.Interop.JavaScript.JSImportGenerator (3)
Marshaling\BaseJSGenerator.cs (1)
32public ValueBoundaryBehavior ValueBoundaryBehavior => _inner.ValueBoundaryBehavior;
Marshaling\EmptyJSGenerator.cs (2)
15public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) => ValueBoundaryBehavior.ManagedIdentifier;
Microsoft.Interop.SourceGeneration (39)
Marshalling\BlittableMarshaller.cs (4)
24public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 28return ValueBoundaryBehavior.ManagedIdentifier; 32return ValueBoundaryBehavior.NativeIdentifier; 34return ValueBoundaryBehavior.AddressOfNativeIdentifier;
Marshalling\BoolMarshaller.cs (3)
40public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 44return ValueBoundaryBehavior.AddressOfNativeIdentifier; 47return ValueBoundaryBehavior.NativeIdentifier;
Marshalling\CharMarshaller.cs (5)
18public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 22return ValueBoundaryBehavior.NativeIdentifier; 26return ValueBoundaryBehavior.ManagedIdentifier; 30return ValueBoundaryBehavior.AddressOfNativeIdentifier; 33return ValueBoundaryBehavior.NativeIdentifier;
Marshalling\CustomTypeMarshallingGenerator.cs (3)
16public ValueBoundaryBehavior ValueBoundaryBehavior => TypeInfo.IsByRef ? ValueBoundaryBehavior.AddressOfNativeIdentifier : ValueBoundaryBehavior.NativeIdentifier;
Marshalling\DelegateMarshaller.cs (3)
25public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 27return info.IsByRef ? ValueBoundaryBehavior.AddressOfNativeIdentifier : ValueBoundaryBehavior.NativeIdentifier;
Marshalling\Forwarder.cs (2)
22public ValueBoundaryBehavior GetValueBoundaryBehavior(TypePositionInfo info, StubCodeContext context) 24return ValueBoundaryBehavior.ManagedIdentifier;
Marshalling\MarshallingGenerator.cs (2)
110ValueBoundaryBehavior ValueBoundaryBehavior { get; } 172public ValueBoundaryBehavior ValueBoundaryBehavior => unbound.GetValueBoundaryBehavior(TypeInfo, context);
Marshalling\MarshallingGeneratorExtensions.cs (9)
85ValueBoundaryBehavior.ManagedIdentifier => generator.TypeInfo.IsByRef ? param : managed, 86ValueBoundaryBehavior.NativeIdentifier or ValueBoundaryBehavior.CastNativeIdentifier => native, 87ValueBoundaryBehavior.AddressOfNativeIdentifier => param, 145ValueBoundaryBehavior.ManagedIdentifier when !info.IsByRef => Argument(IdentifierName(managedIdentifier)), 146ValueBoundaryBehavior.ManagedIdentifier when info.IsByRef => Argument(IdentifierName(managedIdentifier)).WithRefKindKeyword(MarshallerHelpers.GetManagedArgumentRefKindKeyword(info)), 147ValueBoundaryBehavior.NativeIdentifier => Argument(IdentifierName(nativeIdentifier)), 148ValueBoundaryBehavior.AddressOfNativeIdentifier => Argument(PrefixUnaryExpression(SyntaxKind.AddressOfExpression, IdentifierName(nativeIdentifier))), 149ValueBoundaryBehavior.CastNativeIdentifier => Argument(CastExpression(generator.AsParameter(context).Type, IdentifierName(nativeIdentifier))),
Marshalling\StaticPinnableManagedValueMarshaller.cs (3)
23public ValueBoundaryBehavior ValueBoundaryBehavior 33return Interop.ValueBoundaryBehavior.NativeIdentifier; 37return Interop.ValueBoundaryBehavior.CastNativeIdentifier;
VariableDeclarations.cs (5)
137ValueBoundaryBehavior boundaryBehavior = marshaller.ValueBoundaryBehavior; 144(ValueBoundaryBehavior.NativeIdentifier or ValueBoundaryBehavior.CastNativeIdentifier)) 147if (boundaryBehavior != ValueBoundaryBehavior.AddressOfNativeIdentifier) 167if (boundaryBehavior != ValueBoundaryBehavior.ManagedIdentifier)