File tree 28 files changed +407
-0
lines changed 28 files changed +407
-0
lines changed Original file line number Diff line number Diff line change @@ -16,6 +16,7 @@ linters:
16
16
- gci
17
17
- gocheckcompilerdirectives
18
18
- gofmt
19
+ - goheader
19
20
- goimports
20
21
- gomodguard
21
22
- gosec
@@ -53,6 +54,10 @@ linters-settings:
53
54
- alias
54
55
- dot
55
56
- blank
57
+ goheader :
58
+ values :
59
+ template-path : .libevm-header
60
+
56
61
gomodguard :
57
62
blocked :
58
63
modules :
@@ -78,6 +83,7 @@ issues:
78
83
- errcheck
79
84
- gci
80
85
- gofmt
86
+ - goheader
81
87
- gosec
82
88
- gosimple
83
89
- govet
@@ -92,6 +98,7 @@ issues:
92
98
- testifylint
93
99
- thelper
94
100
- tparallel
101
+ - typecheck
95
102
- usestdlibvars
96
103
- varnamelen
97
104
- wastedassign
Original file line number Diff line number Diff line change
1
+ Copyright {{ MOD-YEAR }} the libevm authors.
2
+
3
+ The libevm additions to go-ethereum are free software: you can redistribute
4
+ them and/or modify them under the terms of the GNU Lesser General Public License
5
+ as published by the Free Software Foundation, either version 3 of the License,
6
+ or (at your option) any later version.
7
+
8
+ The libevm additions are distributed in the hope that they will be useful,
9
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ General Public License for more details.
12
+
13
+ You should have received a copy of the GNU Lesser General Public License
14
+ along with the go-ethereum library. If not, see
15
+ <http://www.gnu.org/licenses/>.
Original file line number Diff line number Diff line change @@ -356,3 +356,9 @@ also included in our repository in the `COPYING.LESSER` file.
356
356
The go-ethereum binaries (i.e. all code inside of the ` cmd ` directory) are licensed under the
357
357
[ GNU General Public License v3.0] ( https://www.gnu.org/licenses/gpl-3.0.en.html ) , also
358
358
included in our repository in the ` COPYING ` file.
359
+
360
+ The libevm (i) _ additions_ to the go-ethereum library (i.e. all code in files with ` libevm ` in their full path,
361
+ be it a directory or file name); and (ii) _ modifications_ to existing go-ethereum code; are licensed under the
362
+ [ GNU Lesser General Public License v3.0] ( https://www.gnu.org/licenses/lgpl-3.0.en.html ) ,
363
+ also included in our repository in the ` COPYING.LESSER ` file. A comprehensive outline of _ modifications_ is
364
+ produced by the [ libevm delta workflow] ( https://github.com/ava-labs/go-ethereum/actions/workflows/libevm-delta.yml ) .
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package core
2
17
3
18
// canExecuteTransaction is a convenience wrapper for calling the
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package core_test
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm_test
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm
2
17
3
18
import "github.com/ethereum/go-ethereum/params"
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm
2
17
3
18
// The original RunPrecompiledContract was migrated to being a method on
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm
2
17
3
18
import "github.com/holiman/uint256"
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package vm_test
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
16
+
1
17
// Package ethtest provides utility functions for use in testing
2
18
// Ethereum-related functionality.
3
19
package ethtest
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package ethtest
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
16
+
1
17
// Package hookstest provides test doubles and convenience wrappers for testing
2
18
// libevm hooks.
3
19
package hookstest
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package libevm_test
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package libevm
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package pseudo
2
17
3
18
// A Constructor returns newly constructed [Type] instances for a pre-registered
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
1
16
package pseudo
2
17
3
18
import (
Original file line number Diff line number Diff line change
1
+ // Copyright 2024 the libevm authors.
2
+ //
3
+ // The libevm additions to go-ethereum are free software: you can redistribute
4
+ // them and/or modify them under the terms of the GNU Lesser General Public License
5
+ // as published by the Free Software Foundation, either version 3 of the License,
6
+ // or (at your option) any later version.
7
+ //
8
+ // The libevm additions are distributed in the hope that they will be useful,
9
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
11
+ // General Public License for more details.
12
+ //
13
+ // You should have received a copy of the GNU Lesser General Public License
14
+ // along with the go-ethereum library. If not, see
15
+ // <http://www.gnu.org/licenses/>.
16
+
1
17
// Package pseudo provides a bridge between generic and non-generic code via
2
18
// pseudo-types and pseudo-values. With careful usage, there is minimal
3
19
// reduction in type safety.
You can’t perform that action at this time.
0 commit comments