Exemplo n.º 1
0
 /// <summary>
 /// Serializes the binding state to the given writer.
 /// </summary>
 public static void SerializeBindingSymbols([NotNull] SpecBindingSymbols bindingSymbols, [NotNull] BuildXLWriter writer)
 {
     SerializeSymbols(bindingSymbols.DeclaredSymbols, writer);
     SerializeSymbols(bindingSymbols.ReferencedSymbols, writer);
     writer.Write(bindingSymbols.DeclaredSymbolsFingerprint);
     writer.Write(bindingSymbols.ReferencedSymbolsFingerprint);
 }
Exemplo n.º 2
0
        private static SpecBindingSymbols Copy(SpecBindingSymbols symbols, SymbolTable symbolTable)
        {
            using (var ms = new MemoryStream())
            {
                BuildXLWriter writer = new BuildXLWriter(true, ms, true, true);
                FrontEndSnapshotSerializer.SerializeBindingSymbols(symbols, writer);

                ms.Position = 0;
                BuildXLReader reader = new BuildXLReader(true, ms, true);
                return(FrontEndSnapshotSerializer.DeserializeBindingFingerprint(reader));
            }
        }
Exemplo n.º 3
0
        private SpecBindingSymbols CreateFingerprint(string code)
        {
            var source = ParseAndEnsureNodeIsNotNull(code);

            return(SpecBindingSymbols.Create(source, keepSymbols: true));
        }