24 lines
1.0 KiB
Raku
24 lines
1.0 KiB
Raku
#!/usr/bin/env perl -p
|
|
|
|
# Hide some symbols
|
|
s!public (class db_java|[^(]* delete|[^(]* [A-Za-z_]*0\()!/* package */ $1!;
|
|
|
|
# Mark methods that don't throw exceptions
|
|
s!public [^(]*get_version_[a-z]*\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]*[ _]err[a-z_]*\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]*[ _]msg[a-z_]*\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]*[ _]message[a-z_]*\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]*[ _]strerror\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]*log_compare\([^)]*\)!$& /* no exception */!;
|
|
s!public [^(]* feedback\([^)]*\)!$& /* no exception */!;
|
|
|
|
# Mark methods that throw special exceptions
|
|
m/DbSequence/ || s!(public [^(]*(open|remove|rename)0?\([^)]*\))( {|;)!$1 throws com.sleepycat.db.DatabaseException, java.io.FileNotFoundException$3!;
|
|
|
|
# Everything else throws a DbException
|
|
s!(public [^(]*\([^)]*\))(;| {)!$1 throws com.sleepycat.db.DatabaseException$2!;
|
|
|
|
# Add initialize methods for Java parts of Db and DbEnv
|
|
s!\.new_DbEnv\(.*$!$&\n initialize();!;
|
|
s!\.new_Db\(.*$!$&\n initialize(dbenv);!;
|