1#ifndef REPLACE_OBJECT_H 2#define REPLACE_OBJECT_H 3 4#include"oidmap.h" 5#include"repository.h" 6 7struct replace_object { 8struct oidmap_entry original; 9struct object_id replacement; 10}; 11 12/* 13 * This internal function is only declared here for the benefit of 14 * lookup_replace_object(). Please do not call it directly. 15 */ 16externconst struct object_id *do_lookup_replace_object(const struct object_id *oid); 17 18/* 19 * If object sha1 should be replaced, return the replacement object's 20 * name (replaced recursively, if necessary). The return value is 21 * either sha1 or a pointer to a permanently-allocated value. When 22 * object replacement is suppressed, always return sha1. 23 */ 24staticinlineconst struct object_id *lookup_replace_object(const struct object_id *oid) 25{ 26if(!check_replace_refs) 27return oid; 28returndo_lookup_replace_object(oid); 29} 30 31#endif/* REPLACE_OBJECT_H */