Exemple #1
0
        internal void InitializeProperty(CorPropertyDef prop, out IList <MethodDef> getMethods, out IList <MethodDef> setMethods, out IList <MethodDef> otherMethods)
        {
            getMethods   = new List <MethodDef>();
            setMethods   = new List <MethodDef>();
            otherMethods = new List <MethodDef>();
            if (prop == null)
            {
                return;
            }

            var  mdi   = readerModule.MetaDataImport;
            uint token = prop.OriginalToken.Raw;

            MDAPI.GetPropertyGetterSetter(mdi, token, out uint getToken, out uint setToken);
            var otherTokens = MDAPI.GetPropertyOtherMethodTokens(mdi, token);

            var dict = CreateMethodDict();

            Add(dict, getMethods, getToken);
            Add(dict, setMethods, setToken);
            foreach (uint otherToken in otherTokens)
            {
                Add(dict, otherMethods, otherToken);
            }
        }
Exemple #2
0
		internal void InitializeProperty(CorPropertyDef prop, out ThreadSafe.IList<MethodDef> getMethods, out ThreadSafe.IList<MethodDef> setMethods, out ThreadSafe.IList<MethodDef> otherMethods) {
			getMethods = ThreadSafeListCreator.Create<MethodDef>();
			setMethods = ThreadSafeListCreator.Create<MethodDef>();
			otherMethods = ThreadSafeListCreator.Create<MethodDef>();
			if (prop == null)
				return;

			var mdi = readerModule.MetaDataImport;
			uint token = prop.OriginalToken.Raw;

			uint getToken, setToken;
			MDAPI.GetPropertyGetterSetter(mdi, token, out getToken, out setToken);
			var otherTokens = MDAPI.GetPropertyOtherMethodTokens(mdi, token);

			var dict = CreateMethodDict();
			Add(dict, getMethods, getToken);
			Add(dict, setMethods, setToken);
			foreach (uint otherToken in otherTokens)
				Add(dict, otherMethods, otherToken);
		}