コード例 #1
0
 public override string Generate(IMetadataMangler mangler, INsMember scope, IMemberDef member, string old,
                                 int iteration)
 {
     if (iteration > 0)
     {
         old += iteration;
     }
     return(Encode(Hasher.ComputeHash(Encoding.UTF8.GetBytes(old))));
 }
コード例 #2
0
            public override string Generate(IMetadataMangler mangler, INsMember scope, IMemberDef member, string old,
                                            int iteration)
            {
                var name = old.Replace('.', '_') + "_";

                if (iteration > 0)
                {
                    name += iteration;
                }
                return(name);
            }
コード例 #3
0
 public override string Generate(IMetadataMangler mangler, GenericParam source)
 {
     return(source.Name + "_");
 }
コード例 #4
0
 /// <summary>
 /// Generate new name for a given generic parameter
 /// </summary>
 /// <param name="mangler">instance of the mangler plugin</param>
 /// <param name="source">generic parameter</param>
 /// <returns>new name</returns>
 public abstract string Generate(IMetadataMangler mangler, GenericParam source);
コード例 #5
0
 /// <summary>
 /// Generate new name for a given method parameter
 /// </summary>
 /// <param name="mangler">instance of the mangler plugin</param>
 /// <param name="source">method parameter</param>
 /// <returns>new name</returns>
 public abstract string Generate(IMetadataMangler mangler, ParamDef source);
コード例 #6
0
 /// <summary>
 /// Generate new name for a given metadata member
 /// </summary>
 /// <param name="mangler">instance of the mangler plugin</param>
 /// <param name="scope">naming scope</param>
 /// <param name="member">the member to rename</param>
 /// <param name="old">old name</param>
 /// <param name="iteration">number of current iteration (increments with each unsuccessful attemt to generate new name)</param>
 /// <returns>new name</returns>
 public abstract string Generate(IMetadataMangler mangler, INsMember scope, IMemberDef member, string old,
                                 int iteration);
コード例 #7
0
 public override string Generate(IMetadataMangler mangler, INsMember scope, IMemberDef member, string old,
                                 int iteration)
 {
     return(Encode(mangler.Rng.NextBytes((MaxSignificantBits + 7) >> 3)));
 }
コード例 #8
0
 public override string Generate(IMetadataMangler mangler, INsMember scope, IMemberDef member, string old,
                                 int iteration)
 {
     return(Encode(ToBytes(NextSequence(scope), MaxSignificantBits)));
 }
コード例 #9
0
 public override string Generate(IMetadataMangler mangler, GenericParam source)
 {
     return(Encode(ToBytes(source.Number, MaxSignificantBits)));
 }
コード例 #10
0
 public override string Generate(IMetadataMangler mangler, ParamDef source)
 {
     return(Encode(ToBytes(source.Sequence, MaxSignificantBits)));
 }