void DefineConstant(ConstantDebugInformation constant) { var row = metadata.AddStandAloneSignature(metadata.GetConstantTypeBlobIndex(constant.ConstantType)); var token = new MetadataToken(TokenType.Signature, row); writer.DefineConstant2(constant.Name, constant.Value, token.ToInt32()); }
public void Write(MethodBody body, /*Telerik Authorship*/ MetadataToken methodToken, /*Telerik Authorship*/ MetadataToken localVarToken) { /*Telerik Authorship*/ //var method_token = body.Method.MetadataToken; var sym_token = new SymbolToken(methodToken.ToInt32()); //var sym_token = new SymbolToken(body.Method.MetadataToken.ToInt32()); var instructions = CollectInstructions(body); if (instructions.Count == 0) { return; } var start_offset = 0; var end_offset = body.CodeSize; writer.OpenMethod(sym_token); writer.OpenScope(start_offset); DefineSequencePoints(instructions); /*Telerik Authorship*/ Dictionary <VariableDefinition, string> methodVariableDefinitionToNameMap = GetMethodVariableDefinitionToNameMap(body.Method); DefineVariables(body, /*Telerik Authorship*/ localVarToken, /*Telerik Authorship*/ methodVariableDefinitionToNameMap, start_offset, end_offset); writer.CloseScope(end_offset); writer.CloseMethod(); }
public static string ToSuffixString(this MetadataToken token) { if (!DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens) { return(string.Empty); } return(" @" + token.ToInt32().ToString("x8")); }
public void Read(MethodBody body, InstructionMapper mapper) { MetadataToken method_token = body.Method.MetadataToken; MethodEntry entry = this.symbol_file.GetMethodByToken(method_token.ToInt32()); if (entry != null) { Scope[] scopes = MdbReader.ReadScopes(entry, body, mapper); this.ReadLineNumbers(entry, mapper); MdbReader.ReadLocalVariables(entry, body, scopes); } }
public override void Process(NameValueCollection parameters, MetadataProcessor.MetadataAccessor accessor) { foreach (Context txt in cc.txts) { if (txt.fld.Name[0] != '\0') { continue; } MetadataToken tkn = accessor.LookupToken(txt.mtdRef); string str = Convert.ToBase64String(BitConverter.GetBytes(tkn.ToInt32() ^ cc.key)); StringBuilder sb = new StringBuilder(str.Length); for (int i = 0; i < str.Length; i++) { sb.Append((char)((byte)str[i] ^ i)); } txt.fld.Name = sb.ToString(); } }
public static T Resolve <T>(this Assembly asm, MetadataToken token, object param = null) where T : MemberInfo { var mModule = asm.GetModules()[0]; if (typeof(T) == typeof(FieldInfo)) { try { return(FieldInfo.GetFieldFromHandle(mModule.ResolveField(token.ToInt32()).FieldHandle) as T); } catch { return(default(T)); } } return(default(T)); }
void DefineVariables(MethodBody body, /*Telerik Authorship*/ MetadataToken localVarToken, /*Telerik Authorship*/ Dictionary <VariableDefinition, string> methodVariableDefinitionToNameMap, int start_offset, int end_offset) { if (!body.HasVariables) { return; } /*Telerik Authorship*/ //var sym_token = new SymbolToken (body.LocalVarToken.ToInt32 ()); var sym_token = new SymbolToken(localVarToken.ToInt32()); var variables = body.Variables; for (int i = 0; i < variables.Count; i++) { var variable = variables [i]; /*Telerik Authorship*/ string variableName = GetVariableName(variable, methodVariableDefinitionToNameMap); CreateLocalVariable(variable, /*Telerik Authorship*/ variableName, sym_token, start_offset, end_offset); } }
public void Write(MethodBody body, /*Telerik Authorship*/ MetadataToken methodToken, /*Telerik Authorship*/ MetadataToken localVarToken) { /*Telerik Authorship*/ //var method_token = body.Method.MetadataToken; var sym_token = new SymbolToken (methodToken.ToInt32 ()); //var sym_token = new SymbolToken(body.Method.MetadataToken.ToInt32()); var instructions = CollectInstructions (body); if (instructions.Count == 0) return; var start_offset = 0; var end_offset = body.CodeSize; writer.OpenMethod (sym_token); writer.OpenScope (start_offset); DefineSequencePoints (instructions); /*Telerik Authorship*/ Dictionary<VariableDefinition, string> methodVariableDefinitionToNameMap = GetMethodVariableDefinitionToNameMap(body.Method); DefineVariables(body, /*Telerik Authorship*/ localVarToken, /*Telerik Authorship*/ methodVariableDefinitionToNameMap, start_offset, end_offset); writer.CloseScope (end_offset); writer.CloseMethod (); }
void DefineVariables(MethodBody body, /*Telerik Authorship*/ MetadataToken localVarToken, /*Telerik Authorship*/ Dictionary<VariableDefinition, string> methodVariableDefinitionToNameMap, int start_offset, int end_offset) { if (!body.HasVariables) return; /*Telerik Authorship*/ //var sym_token = new SymbolToken (body.LocalVarToken.ToInt32 ()); var sym_token = new SymbolToken(localVarToken.ToInt32()); var variables = body.Variables; for (int i = 0; i < variables.Count; i++) { var variable = variables [i]; /*Telerik Authorship*/ string variableName = GetVariableName(variable, methodVariableDefinitionToNameMap); CreateLocalVariable(variable, /*Telerik Authorship*/ variableName, sym_token, start_offset, end_offset); } }
public MemberID(string assemblyName, string moduleName, MetadataToken token) { AssemblyQualifiedTypeName = assemblyName; ModuleName = moduleName; Token = token.ToInt32(); }