Mercurial > hg > CbC > CbC_gcc
view gcc/go/gofrontend/go-sha1.h @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// go-sha1.h -- GCC specific sha1 checksum utilities. -*- C++ -*- // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. #ifndef GO_SHA1_H #define GO_SHA1_H #include "go-system.h" // // Interface class for computation of SHA1 checksums. Front end requests // one of these objects from the back end to use for computing // checksums (each back end tends to have a different SHA1 implementation). // Back ends are expected to create a new class that derives from this // one containing an implementation. // class Go_sha1_helper { public: virtual ~Go_sha1_helper() { } virtual void process_bytes(const void* buffer, size_t len) = 0; virtual std::string finish() = 0; static const int checksum_len = 20; }; // Call to create and return a new sha1 helper (this routine defined // by the backend). Caller is responsible for deletion. extern Go_sha1_helper* go_create_sha1_helper(); #endif // !defined(GO_SHA1_H)