Browse Source
Coccinelle (http://coccinelle.lip6.fr/) is a program which performs mechanical transformations on C programs using semantic patches. These semantic patches can be used to implement automatic refactoring and maintenance tasks. Add a set of basic semantic patches to convert common patterns related to the struct object_id transformation, as well as a README. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint


2 changed files with 97 additions and 0 deletions
@ -0,0 +1,2 @@
@@ -0,0 +1,2 @@
|
||||
This directory provides examples of Coccinelle (http://coccinelle.lip6.fr/) |
||||
semantic patches that might be useful to developers. |
@ -0,0 +1,95 @@
@@ -0,0 +1,95 @@
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- is_null_sha1(E1.hash) |
||||
+ is_null_oid(&E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- is_null_sha1(E1->hash) |
||||
+ is_null_oid(E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- sha1_to_hex(E1.hash) |
||||
+ oid_to_hex(&E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- sha1_to_hex(E1->hash) |
||||
+ oid_to_hex(E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- sha1_to_hex_r(E1.hash) |
||||
+ oid_to_hex_r(&E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- sha1_to_hex_r(E1->hash) |
||||
+ oid_to_hex_r(E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- hashclr(E1.hash) |
||||
+ oidclr(&E1) |
||||
|
||||
@@ |
||||
expression E1; |
||||
@@ |
||||
- hashclr(E1->hash) |
||||
+ oidclr(E1) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcmp(E1.hash, E2.hash) |
||||
+ oidcmp(&E1, &E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcmp(E1->hash, E2->hash) |
||||
+ oidcmp(E1, E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcmp(E1->hash, E2.hash) |
||||
+ oidcmp(E1, &E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcmp(E1.hash, E2->hash) |
||||
+ oidcmp(&E1, E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcpy(E1.hash, E2.hash) |
||||
+ oidcpy(&E1, &E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcpy(E1->hash, E2->hash) |
||||
+ oidcpy(E1, E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcpy(E1->hash, E2.hash) |
||||
+ oidcpy(E1, &E2) |
||||
|
||||
@@ |
||||
expression E1, E2; |
||||
@@ |
||||
- hashcpy(E1.hash, E2->hash) |
||||
+ oidcpy(&E1, E2) |
Loading…
Reference in new issue