Update dependencies
This commit is contained in:
44
vendor/github.com/dblohm7/wingoes/com/unknown.go
generated
vendored
Normal file
44
vendor/github.com/dblohm7/wingoes/com/unknown.go
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
// Copyright (c) 2022 Tailscale Inc & AUTHORS. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build windows
|
||||
|
||||
package com
|
||||
|
||||
import (
|
||||
"runtime"
|
||||
)
|
||||
|
||||
var (
|
||||
IID_IUnknown = &IID{0x00000000, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
|
||||
)
|
||||
|
||||
// ObjectBase is a garbage-collected instance of any COM object's base interface.
|
||||
type ObjectBase struct {
|
||||
GenericObject[IUnknownABI]
|
||||
}
|
||||
|
||||
// IID always returns IID_IUnknown.
|
||||
func (o ObjectBase) IID() *IID {
|
||||
return IID_IUnknown
|
||||
}
|
||||
|
||||
// Make produces a new instance of ObjectBase that wraps r. Its return type is
|
||||
// always ObjectBase.
|
||||
func (o ObjectBase) Make(r ABIReceiver) any {
|
||||
if r == nil {
|
||||
return ObjectBase{}
|
||||
}
|
||||
|
||||
runtime.SetFinalizer(r, ReleaseABI)
|
||||
|
||||
pp := (**IUnknownABI)(r)
|
||||
return ObjectBase{GenericObject[IUnknownABI]{Pp: pp}}
|
||||
}
|
||||
|
||||
// UnsafeUnwrap returns the underlying IUnknownABI of the object. As the name
|
||||
// implies, this is unsafe -- you had better know what you are doing!
|
||||
func (o ObjectBase) UnsafeUnwrap() *IUnknownABI {
|
||||
return *(o.Pp)
|
||||
}
|
||||
Reference in New Issue
Block a user