Ejemplo n.º 1
0
        internal void resolveReferences(MetaDataLoader loader,
                                        MetaDataMethod[] paramOwners)
        {
            this.signature = signature.resolve(loader);
            // paramOwners[paramOwners.Length-1] == null, so this is safe
            int paramEndIndex = this.paramIndex;

            while (paramOwners[paramEndIndex] == this)
            {
                paramEndIndex++;
            }
            int paramCount = paramEndIndex - this.paramIndex;

            this.paramArray = loader.getParams(this.paramIndex, paramCount);
            int limit = this.paramArray.Length;

            if (paramCount != limit)
            {
                MetaDataParam resultParam = loader.getParam(this.paramIndex);
                resultParam.resolveReferences(this);
            }
            for (int i = 0; i < limit; i++)
            {
                this.paramArray[i].resolveReferences(this);
            }
        }