diff --git a/OneDotNet.sln b/OneDotNet.sln index 245a0021..c438d930 100644 --- a/OneDotNet.sln +++ b/OneDotNet.sln @@ -124,7 +124,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Xceed.Wpf.Toolkit", "third_ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TaskAssigner", "TaskAssigner\TaskAssigner.csproj", "{02544C21-1FEB-4B34-9F01-288EE78B3630}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CompdbRegrouper", "codelab\CompdbRegrouper\CompdbRegrouper.csproj", "{6310868B-AF37-4D08-A1E5-0C00085A914D}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompdbRegrouper", "codelab\CompdbRegrouper\CompdbRegrouper.csproj", "{6310868B-AF37-4D08-A1E5-0C00085A914D}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ParseHeader", "codelab\ParseHeader\ParseHeader.csproj", "{EA3FDE46-7B74-4463-BAFD-74710BA98313}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FileManifests", "codelab\FileManifests\FileManifests.csproj", "{14045A3B-ADE7-4CCF-992A-8FFF558FAD17}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -344,6 +348,18 @@ Global {6310868B-AF37-4D08-A1E5-0C00085A914D}.DebugNonWindows|Any CPU.Build.0 = Debug|Any CPU {6310868B-AF37-4D08-A1E5-0C00085A914D}.Release|Any CPU.ActiveCfg = Release|Any CPU {6310868B-AF37-4D08-A1E5-0C00085A914D}.Release|Any CPU.Build.0 = Release|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.DebugNonWindows|Any CPU.ActiveCfg = Debug|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.DebugNonWindows|Any CPU.Build.0 = Debug|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EA3FDE46-7B74-4463-BAFD-74710BA98313}.Release|Any CPU.Build.0 = Release|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.Debug|Any CPU.Build.0 = Debug|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.DebugNonWindows|Any CPU.ActiveCfg = Debug|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.DebugNonWindows|Any CPU.Build.0 = Debug|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.Release|Any CPU.ActiveCfg = Release|Any CPU + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -389,6 +405,8 @@ Global {6F79C3CF-633E-4645-A3B1-D9D6520526CD} = {E307CA64-13F5-446A-BCA5-C611A235A2E4} {02544C21-1FEB-4B34-9F01-288EE78B3630} = {9D7C39A1-EF36-4491-8CC0-2D45C3B51580} {6310868B-AF37-4D08-A1E5-0C00085A914D} = {9D7C39A1-EF36-4491-8CC0-2D45C3B51580} + {EA3FDE46-7B74-4463-BAFD-74710BA98313} = {9D7C39A1-EF36-4491-8CC0-2D45C3B51580} + {14045A3B-ADE7-4CCF-992A-8FFF558FAD17} = {9D7C39A1-EF36-4491-8CC0-2D45C3B51580} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {E0F2E2F1-944D-46B4-BA89-EE1F0BBD57A1} diff --git a/codelab/CompdbRegrouper/Program.cs b/codelab/CompdbRegrouper/Program.cs index 5689c06f..7aecc6c5 100644 --- a/codelab/CompdbRegrouper/Program.cs +++ b/codelab/CompdbRegrouper/Program.cs @@ -32,7 +32,7 @@ internal static void Main(string[] args) } IEnumerable> g = compdb - .Where(item => !item.Directory.Contains("src/test") && !item.Directory.Contains("src/example")) + .Where(item => item.Directory == "/tmp/thrift-0.13.0/lib/cpp") .Select(item => new CookedCompdbItem(item)) .GroupBy(item => string.Join(",", item.Arguments)); diff --git a/codelab/CompdbRegrouper/compile_commands.json b/codelab/CompdbRegrouper/compile_commands.json index 6af845a0..bd211b5a 100644 --- a/codelab/CompdbRegrouper/compile_commands.json +++ b/codelab/CompdbRegrouper/compile_commands.json @@ -1,485 +1,1887 @@ [ - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TSSLSocket.o", - "src/thrift/transport/TSSLSocket.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TSSLSocket.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/libthriftz_la-TZlibTransport.o", - "src/thrift/transport/TZlibTransport.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TZlibTransport.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TThreadPoolServer.o", - "src/thrift/server/TThreadPoolServer.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TThreadPoolServer.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TThreadedServer.o", - "src/thrift/server/TThreadedServer.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TThreadedServer.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/concurrency/Monitor.o", - "src/thrift/concurrency/Monitor.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/concurrency/Monitor.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TServerSocket.o", - "src/thrift/transport/TServerSocket.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TServerSocket.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/concurrency/Mutex.o", - "src/thrift/concurrency/Mutex.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/concurrency/Mutex.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TSocketPool.o", - "src/thrift/transport/TSocketPool.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TSocketPool.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TServer.o", - "src/thrift/server/TServer.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TServer.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TServerFramework.o", - "src/thrift/server/TServerFramework.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TServerFramework.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/libthriftz_la-THeaderTransport.o", - "src/thrift/transport/THeaderTransport.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/THeaderTransport.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/protocol/libthriftz_la-THeaderProtocol.o", - "src/thrift/protocol/THeaderProtocol.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/protocol/THeaderProtocol.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TNonblockingSSLServerSocket.o", - "src/thrift/transport/TNonblockingSSLServerSocket.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TNonblockingSSLServerSocket.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TSSLServerSocket.o", - "src/thrift/transport/TSSLServerSocket.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TSSLServerSocket.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TTransportUtils.o", - "src/thrift/transport/TTransportUtils.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TTransportUtils.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TNonblockingServerSocket.o", - "src/thrift/transport/TNonblockingServerSocket.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TNonblockingServerSocket.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TConnectedClient.o", - "src/thrift/server/TConnectedClient.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TConnectedClient.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/concurrency/ThreadFactory.o", - "src/thrift/concurrency/ThreadFactory.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/concurrency/ThreadFactory.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/transport/TBufferTransports.o", - "src/thrift/transport/TBufferTransports.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/transport/TBufferTransports.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/server/TSimpleServer.o", - "src/thrift/server/TSimpleServer.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/server/TSimpleServer.cpp" - }, - { - "arguments": [ - "clang++", - "-c", - "-std=c++11", - "-DHAVE_CONFIG_H", - "-I/tmp/boost_1_68_0", - "-I/tmp/boringssl-master/build/include", - "-I./src", - "-D__STDC_FORMAT_MACROS", - "-D__STDC_LIMIT_MACROS", - "-Wall", - "-Wextra", - "-pedantic", - "-g", - "-O2", - "-o", - "src/thrift/concurrency/Thread.o", - "src/thrift/concurrency/Thread.cpp" - ], - "directory": "/tmp/thrift-0.13.0/lib/cpp", - "file": "src/thrift/concurrency/Thread.cpp" - } -] \ No newline at end of file + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-I/tmp/libevent-2.1.11-stable/include", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/libthriftnb_la-TNonblockingServer.o", + "src/thrift/server/TNonblockingServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TNonblockingServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/TimerManager.o", + "src/thrift/concurrency/TimerManager.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/TimerManager.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/TOutput.o", + "src/thrift/TOutput.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/TOutput.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/thrift-common.o", + "src/thrift/common.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/common.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_cl_generator.o", + "src/thrift/generate/t_cl_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_cl_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I.", + "-Wall", + "-Wno-sign-compare", + "-Wno-unused", + "-g", + "-O2", + "-o", + "thrift/thrift_libparse_a-thriftl.o", + "thrift/thriftl.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp/src", + "file": "thrift/thriftl.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TConnectedClient.o", + "src/thrift/server/TConnectedClient.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TConnectedClient.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/THttpClient.o", + "src/thrift/transport/THttpClient.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/THttpClient.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TServerFramework.o", + "src/thrift/server/TServerFramework.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TServerFramework.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_csharp_generator.o", + "src/thrift/generate/t_csharp_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_csharp_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/libthriftz_la-THeaderTransport.o", + "src/thrift/transport/THeaderTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/THeaderTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/thrift-main.o", + "src/thrift/main.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/main.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TTransportException.o", + "src/thrift/transport/TTransportException.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TTransportException.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/audit/thrift-t_audit.o", + "src/thrift/audit/t_audit.cpp" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/audit/t_audit.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TThreadPoolServer.o", + "src/thrift/server/TThreadPoolServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TThreadPoolServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/TBase64Utils.o", + "src/thrift/protocol/TBase64Utils.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/TBase64Utils.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TServer.o", + "src/thrift/server/TServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TSocket.o", + "src/thrift/transport/TSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TPipeServer.o", + "src/thrift/transport/TPipeServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TPipeServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/ThreadFactory.o", + "src/thrift/concurrency/ThreadFactory.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/ThreadFactory.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_php_generator.o", + "src/thrift/generate/t_php_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_php_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_netstd_generator.o", + "src/thrift/generate/t_netstd_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_netstd_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/processor/PeekProcessor.o", + "src/thrift/processor/PeekProcessor.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/processor/PeekProcessor.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/parse/thrift-t_typedef.o", + "src/thrift/parse/t_typedef.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/parse/t_typedef.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_c_glib_generator.o", + "src/thrift/generate/t_c_glib_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_c_glib_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_hs_generator.o", + "src/thrift/generate/t_hs_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_hs_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/THttpServer.o", + "src/thrift/transport/THttpServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/THttpServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_rb_generator.o", + "src/thrift/generate/t_rb_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_rb_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/parse/thrift-parse.o", + "src/thrift/parse/parse.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/parse/parse.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_java_generator.o", + "src/thrift/generate/t_java_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_java_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_go_generator.o", + "src/thrift/generate/t_go_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_go_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_erl_generator.o", + "src/thrift/generate/t_erl_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_erl_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TNonblockingSSLServerSocket.o", + "src/thrift/transport/TNonblockingSSLServerSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TNonblockingSSLServerSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TSocketPool.o", + "src/thrift/transport/TSocketPool.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TSocketPool.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_perl_generator.o", + "src/thrift/generate/t_perl_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_perl_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_html_generator.o", + "src/thrift/generate/t_html_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_html_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/Mutex.o", + "src/thrift/concurrency/Mutex.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/Mutex.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/Monitor.o", + "src/thrift/concurrency/Monitor.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/Monitor.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I.", + "-Wall", + "-Wno-sign-compare", + "-Wno-unused", + "-g", + "-O2", + "-o", + "thrift/thrift_libparse_a-thrifty.o", + "thrift/thrifty.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp/src", + "file": "thrift/thrifty.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/async/TAsyncChannel.o", + "src/thrift/async/TAsyncChannel.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/async/TAsyncChannel.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_delphi_generator.o", + "src/thrift/generate/t_delphi_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_delphi_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_dart_generator.o", + "src/thrift/generate/t_dart_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_dart_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_st_generator.o", + "src/thrift/generate/t_st_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_st_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/async/TAsyncProtocolProcessor.o", + "src/thrift/async/TAsyncProtocolProcessor.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/async/TAsyncProtocolProcessor.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TSSLSocket.o", + "src/thrift/transport/TSSLSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TSSLSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TServerSocket.o", + "src/thrift/transport/TServerSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TServerSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TFDTransport.o", + "src/thrift/transport/TFDTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TFDTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_json_generator.o", + "src/thrift/generate/t_json_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_json_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/libthriftz_la-THeaderProtocol.o", + "src/thrift/protocol/THeaderProtocol.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/THeaderProtocol.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_gv_generator.o", + "src/thrift/generate/t_gv_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_gv_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TSSLServerSocket.o", + "src/thrift/transport/TSSLServerSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TSSLServerSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TBufferTransports.o", + "src/thrift/transport/TBufferTransports.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TBufferTransports.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_netcore_generator.o", + "src/thrift/generate/t_netcore_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_netcore_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_rs_generator.o", + "src/thrift/generate/t_rs_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_rs_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TNonblockingServerSocket.o", + "src/thrift/transport/TNonblockingServerSocket.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TNonblockingServerSocket.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_py_generator.o", + "src/thrift/generate/t_py_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_py_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TSimpleFileTransport.o", + "src/thrift/transport/TSimpleFileTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TSimpleFileTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/Thread.o", + "src/thrift/concurrency/Thread.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/Thread.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_swift_generator.o", + "src/thrift/generate/t_swift_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_swift_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/libthriftz_la-TZlibTransport.o", + "src/thrift/transport/TZlibTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TZlibTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_cpp_generator.o", + "src/thrift/generate/t_cpp_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_cpp_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/THttpTransport.o", + "src/thrift/transport/THttpTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/THttpTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/concurrency/ThreadManager.o", + "src/thrift/concurrency/ThreadManager.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/concurrency/ThreadManager.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-I/tmp/libevent-2.1.11-stable/include", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/async/libthriftnb_la-TEvhttpClientChannel.o", + "src/thrift/async/TEvhttpClientChannel.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/async/TEvhttpClientChannel.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_generator.o", + "src/thrift/generate/t_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TPipe.o", + "src/thrift/transport/TPipe.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TPipe.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/TDebugProtocol.o", + "src/thrift/protocol/TDebugProtocol.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/TDebugProtocol.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TThreadedServer.o", + "src/thrift/server/TThreadedServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TThreadedServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/TProtocol.o", + "src/thrift/protocol/TProtocol.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/TProtocol.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/TJSONProtocol.o", + "src/thrift/protocol/TJSONProtocol.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/TJSONProtocol.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_javame_generator.o", + "src/thrift/generate/t_javame_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_javame_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TFileTransport.o", + "src/thrift/transport/TFileTransport.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TFileTransport.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_js_generator.o", + "src/thrift/generate/t_js_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_js_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_d_generator.o", + "src/thrift/generate/t_d_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_d_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/server/TSimpleServer.o", + "src/thrift/server/TSimpleServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/server/TSimpleServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-I/tmp/libevent-2.1.11-stable/include", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/async/libthriftnb_la-TEvhttpServer.o", + "src/thrift/async/TEvhttpServer.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/async/TEvhttpServer.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_xml_generator.o", + "src/thrift/generate/t_xml_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_xml_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/transport/TTransportUtils.o", + "src/thrift/transport/TTransportUtils.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/transport/TTransportUtils.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_as3_generator.o", + "src/thrift/generate/t_as3_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_as3_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_lua_generator.o", + "src/thrift/generate/t_lua_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_lua_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_xsd_generator.o", + "src/thrift/generate/t_xsd_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_xsd_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_haxe_generator.o", + "src/thrift/generate/t_haxe_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_haxe_generator.cc" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/VirtualProfiling.o", + "src/thrift/VirtualProfiling.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/VirtualProfiling.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/async/TConcurrentClientSyncInfo.o", + "src/thrift/async/TConcurrentClientSyncInfo.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/async/TConcurrentClientSyncInfo.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/TApplicationException.o", + "src/thrift/TApplicationException.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/TApplicationException.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I/tmp/boost_1_68_0", + "-I/tmp/boringssl-master/build/include", + "-I./src", + "-D__STDC_FORMAT_MACROS", + "-D__STDC_LIMIT_MACROS", + "-Wall", + "-Wextra", + "-pedantic", + "-g", + "-O2", + "-o", + "src/thrift/protocol/TMultiplexedProtocol.o", + "src/thrift/protocol/TMultiplexedProtocol.cpp" + ], + "directory": "/tmp/thrift-0.13.0/lib/cpp", + "file": "src/thrift/protocol/TMultiplexedProtocol.cpp" + }, + { + "arguments": [ + "clang++", + "-c", + "-std=c++11", + "-DHAVE_CONFIG_H", + "-I./src", + "-Wall", + "-Wextra", + "-pedantic", + "-Werror", + "-g", + "-O2", + "-o", + "src/thrift/generate/thrift-t_ocaml_generator.o", + "src/thrift/generate/t_ocaml_generator.cc" + ], + "directory": "/tmp/thrift-0.13.0/compiler/cpp", + "file": "src/thrift/generate/t_ocaml_generator.cc" + } +] diff --git a/codelab/FileManifests/FileManifests.csproj b/codelab/FileManifests/FileManifests.csproj new file mode 100644 index 00000000..d453e9a0 --- /dev/null +++ b/codelab/FileManifests/FileManifests.csproj @@ -0,0 +1,8 @@ + + + + Exe + netcoreapp3.1 + + + diff --git a/codelab/FileManifests/Program.cs b/codelab/FileManifests/Program.cs new file mode 100644 index 00000000..f4935a04 --- /dev/null +++ b/codelab/FileManifests/Program.cs @@ -0,0 +1,85 @@ +// +// Copyright Shuai Zhang. All rights reserved. +// Licensed under the GPLv3 license. See LICENSE file in the project root for full license information. +// + +using System; +using System.IO; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading; + +namespace FileManifests +{ + internal class Program + { + internal static void Main() + { + var options = new EnumerationOptions + { + RecurseSubdirectories = true, + ReturnSpecialDirectories = false, + }; + + long counter = 0; + using var sha512 = new ThreadLocal(() => SHA512.Create()); + using StreamWriter writer = File.CreateText("manifest.csv"); + writer.WriteLine("\"" + string.Join( + "\",\"", + nameof(FileInfo.Name), + nameof(FileInfo.Directory.FullName), + nameof(FileInfo.Length), + nameof(FileInfo.CreationTimeUtc), + nameof(FileInfo.LastWriteTimeUtc), + "SHA512") + "\""); + foreach (FileInfo f in new DirectoryInfo(".") + .EnumerateFiles(string.Empty, SearchOption.AllDirectories) + .AsParallel()) + { + string sha512Hex; + try + { + using FileStream stream = f.OpenRead(); + sha512Hex = ByteArrayToHexString(sha512.Value.ComputeHash(stream)); + } + catch (IOException e) + { + sha512Hex = string.Empty; + Console.WriteLine("WARN {0}", e); + } + + writer.WriteLine("\"" + string.Join( + "\",\"", + f.Name, + f.Directory.FullName, + f.Length, + new DateTimeOffset(f.CreationTimeUtc).ToUnixTimeSeconds(), + new DateTimeOffset(f.LastWriteTimeUtc).ToUnixTimeSeconds(), + sha512Hex) + "\""); + + long current = Interlocked.Increment(ref counter); + if (current % 1000 == 0) + { + Console.WriteLine($"INFO {current} files proceeded."); + } + } + + Console.WriteLine($"INFO All {counter} files proceeded."); + } + + private static string ByteArrayToHexString(byte[] bytes) + { + var result = new StringBuilder(bytes.Length * 2); + string hexAlphabet = "0123456789ABCDEF"; + + foreach (byte b in bytes) + { + result.Append(hexAlphabet[(int)(b >> 4)]); + result.Append(hexAlphabet[(int)(b & 0xF)]); + } + + return result.ToString(); + } + } +} diff --git a/codelab/ParseHeader/ParseHeader.csproj b/codelab/ParseHeader/ParseHeader.csproj new file mode 100644 index 00000000..d453e9a0 --- /dev/null +++ b/codelab/ParseHeader/ParseHeader.csproj @@ -0,0 +1,8 @@ + + + + Exe + netcoreapp3.1 + + + diff --git a/codelab/ParseHeader/Program.cs b/codelab/ParseHeader/Program.cs new file mode 100644 index 00000000..552bf03e --- /dev/null +++ b/codelab/ParseHeader/Program.cs @@ -0,0 +1,29 @@ +// +// Copyright Shuai Zhang. All rights reserved. +// Licensed under the GPLv3 license. See LICENSE file in the project root for full license information. +// + +using System; +using System.Buffers.Binary; + +namespace ParseHeader +{ + internal class Program + { + internal static void Main() + { + byte[] headerBytes = new byte[] + { + 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x32, 0x30, 0x32, 0x30, 0x30, 0x36, 0x32, 0x38, + 0x31, 0x31, 0x33, 0x36, 0x31, 0x34, 0x30, 0x31, + }; + ulong s1 = BinaryPrimitives.ReadUInt64BigEndian(new ReadOnlySpan(headerBytes, 0, 8)); + ulong s2 = BinaryPrimitives.ReadUInt64BigEndian(new ReadOnlySpan(headerBytes, 8, 8)); + ulong s3 = BinaryPrimitives.ReadUInt64BigEndian(new ReadOnlySpan(headerBytes, 16, 8)); + Console.WriteLine($"s1 = {s1}"); + Console.WriteLine($"s2 = {s2}"); + Console.WriteLine($"s3 = {s3}"); + } + } +}