Beispiel #1
0
        // Get type index for specific method by name
        public uint GetMethodFunctionIdTypeIndex(MethodDesc method)
        {
            lock (_lock)
            {
                uint typeIndex;

                if (_methodIdIndices.TryGetValue(method, out typeIndex))
                {
                    return(typeIndex);
                }

                MemberFunctionIdTypeDescriptor descriptor = new MemberFunctionIdTypeDescriptor();

                descriptor.MemberFunction = GetMethodTypeIndex(method);
                descriptor.ParentClass    = GetTypeIndex(method.OwningType, true);
                descriptor.Name           = method.Name;

                typeIndex = _objectWriter.GetMemberFunctionId(descriptor);
                _methodIdIndices.Add(method, typeIndex);
                return(typeIndex);
            }
        }
Beispiel #2
0
 uint ITypesDebugInfoWriter.GetMemberFunctionId(MemberFunctionIdTypeDescriptor memberIdDescriptor)
 {
     return(_dbgInfoWriter.GetMemberFunctionId(memberIdDescriptor));
 }
Beispiel #3
0
 uint ITypesDebugInfoWriter.GetMemberFunctionId(MemberFunctionIdTypeDescriptor memberIdDescriptor)
 {
     return(GetMemberFunctionIdTypeIndex(_nativeObjectWriter, memberIdDescriptor));
 }
Beispiel #4
0
 private static extern uint GetMemberFunctionIdTypeIndex(IntPtr objWriter, MemberFunctionIdTypeDescriptor memberIdDescriptor);