/// <summary> /// Writes a FullSymbol using its underlying string representation /// </summary> public override void Write(FullSymbol value) { Start <FullSymbol>(); Write(value.IsValid); if (value.IsValid) { Write(value.ToString(m_symbolTable)); } End(); }
/// <summary> /// Constructs a debug view from a normal FullSymbol. /// </summary> /// <remarks> /// This constructor is required by the debugger. /// Consequently, Invalid AbsoluteIds are allowed. /// </remarks> public AbsoluteIdDebuggerView(FullSymbol fullSymbol) { Id = fullSymbol.Value; if (fullSymbol == Invalid) { OwningSymbolTable = null; Identifier = null; } else { OwningSymbolTable = HierarchicalNameTable.DebugTryGetTableForId(fullSymbol.Value) as SymbolTable; if (OwningSymbolTable != null) { Identifier = fullSymbol.ToString(OwningSymbolTable); } } }