library: strconv
This commit is contained in:
@@ -209,6 +209,7 @@ Here are the Go packages that can be imported correctly:
|
||||
* [math](https://pkg.go.dev/math)
|
||||
* [math/bits](https://pkg.go.dev/math/bits)
|
||||
* [math/cmplx](https://pkg.go.dev/math/cmplx)
|
||||
* [strconv](https://pkg.go.dev/strconv)
|
||||
* [syscall](https://pkg.go.dev/syscall) (partially)
|
||||
* [sync](https://pkg.go.dev/sync) (partially)
|
||||
* [sync/atomic](https://pkg.go.dev/sync/atomic) (partially)
|
||||
|
||||
7
_demo/strconv/strconv.go
Normal file
7
_demo/strconv/strconv.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package main
|
||||
|
||||
import "strconv"
|
||||
|
||||
func main() {
|
||||
println(strconv.Itoa(-123))
|
||||
}
|
||||
@@ -518,10 +518,15 @@ func ignoreName(name string) bool {
|
||||
return true
|
||||
}
|
||||
*/
|
||||
return strings.HasPrefix(name, "internal/") || strings.HasPrefix(name, "crypto/") ||
|
||||
return (strings.HasPrefix(name, "internal/") && !supportedInternal(name)) ||
|
||||
strings.HasPrefix(name, "crypto/") || strings.HasPrefix(name, "reflect.") ||
|
||||
strings.HasPrefix(name, "arena.") || strings.HasPrefix(name, "maps.") ||
|
||||
strings.HasPrefix(name, "time.") || strings.HasPrefix(name, "runtime/") ||
|
||||
strings.HasPrefix(name, "plugin.") || strings.HasPrefix(name, "reflect.")
|
||||
strings.HasPrefix(name, "plugin.")
|
||||
}
|
||||
|
||||
func supportedInternal(name string) bool {
|
||||
return strings.HasPrefix(name, "internal/bytealg.")
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
@@ -706,6 +706,9 @@ func decodeFile(outFile string, zipf *zip.File) (err error) {
|
||||
}
|
||||
|
||||
func canSkipToBuild(pkgPath string) bool {
|
||||
if _, ok := hasAltPkg[pkgPath]; ok {
|
||||
return false
|
||||
}
|
||||
switch pkgPath {
|
||||
case "unsafe":
|
||||
return true
|
||||
@@ -718,16 +721,17 @@ func canSkipToBuild(pkgPath string) bool {
|
||||
type none struct{}
|
||||
|
||||
var hasAltPkg = map[string]none{
|
||||
"errors": {},
|
||||
"io": {},
|
||||
"io/fs": {},
|
||||
"math": {},
|
||||
"math/cmplx": {},
|
||||
"sync": {},
|
||||
"sync/atomic": {},
|
||||
"syscall": {},
|
||||
"os": {},
|
||||
"runtime": {},
|
||||
"errors": {},
|
||||
"internal/bytealg": {},
|
||||
"io": {},
|
||||
"io/fs": {},
|
||||
"math": {},
|
||||
"math/cmplx": {},
|
||||
"sync": {},
|
||||
"sync/atomic": {},
|
||||
"syscall": {},
|
||||
"os": {},
|
||||
"runtime": {},
|
||||
}
|
||||
|
||||
func check(err error) {
|
||||
|
||||
22
internal/lib/internal/bytealg/bytealg.go
Normal file
22
internal/lib/internal/bytealg/bytealg.go
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (c) 2024 The GoPlus Authors (goplus.org). All rights reserved.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package bytealg
|
||||
|
||||
// llgo:skip init
|
||||
import (
|
||||
_ "unsafe"
|
||||
)
|
||||
Reference in New Issue
Block a user