Merge pull request #4 from liamg/feature/switch-to-glfw-3.3-beta

Switch to glfw 3.3 beta
This commit is contained in:
Liam Galvin 2018-10-21 11:47:47 +01:00 committed by GitHub
commit adc5c18c43
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
224 changed files with 84424 additions and 303 deletions

View File

@ -6,7 +6,7 @@ jobs:
build: build:
docker: docker:
# specify the version # specify the version
- image: circleci/golang:latest - image: liamg/golang-opengl
# Specify service dependencies here if necessary # Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images # CircleCI maintains a library of pre-built images

24
Gopkg.lock generated
View File

@ -4,26 +4,26 @@
[[projects]] [[projects]]
name = "github.com/BurntSushi/toml" name = "github.com/BurntSushi/toml"
packages = ["."] packages = ["."]
revision = "b26d9c308763d68093482582cea63d69be07a0f0" revision = "3012a1dbe2e4bd1391d42b32f0577cb7bbc7f005"
version = "v0.3.0" version = "v0.3.1"
[[projects]] [[projects]]
name = "github.com/davecgh/go-spew" name = "github.com/davecgh/go-spew"
packages = ["spew"] packages = ["spew"]
revision = "346938d642f2ec3594ed81d874461961cd0faa76" revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73"
version = "v1.1.0" version = "v1.1.1"
[[projects]] [[projects]]
branch = "master" branch = "master"
name = "github.com/go-gl/gl" name = "github.com/go-gl/gl"
packages = ["all-core/gl"] packages = ["all-core/gl"]
revision = "68e2537930806bfcee1b92a0e14b4e9b8bb3a3e3" revision = "629e6eb0370bc1987d806c0786368395657324a0"
[[projects]] [[projects]]
branch = "master" branch = "3.3-beta"
name = "github.com/go-gl/glfw" name = "github.com/go-gl/glfw"
packages = ["v3.2/glfw"] packages = ["v3.3/glfw"]
revision = "46a8d530c3268b31eeb1310f30fe42be1cae98f2" revision = "6e2aad9c205df8e65253545488dd5012bce36960"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -34,8 +34,8 @@
[[projects]] [[projects]]
name = "github.com/kr/pty" name = "github.com/kr/pty"
packages = ["."] packages = ["."]
revision = "fa756f09eeb418bf1cc6268c66ceaad9bb98f598" revision = "db8e3cd836b82e82e0a9c8edc6896967dd31374f"
version = "v1.1.2" version = "v1.1.3"
[[projects]] [[projects]]
name = "github.com/pmezard/go-difflib" name = "github.com/pmezard/go-difflib"
@ -77,11 +77,11 @@
branch = "master" branch = "master"
name = "golang.org/x/image" name = "golang.org/x/image"
packages = ["font","math/fixed"] packages = ["font","math/fixed"]
revision = "c73c2afc3b812cdd6385de5a50616511c4a3d458" revision = "991ec62608f3c0da01d400756917825d1e2fd528"
[solve-meta] [solve-meta]
analyzer-name = "dep" analyzer-name = "dep"
analyzer-version = 1 analyzer-version = 1
inputs-digest = "511d10ed41125fb4859199ab90d9779aaa5a5134f6ca26eca1d517d200404124" inputs-digest = "302948f4c12acd4eadda5fc66d75d85826acd51ccfeb0cee64372595397cdadd"
solver-name = "gps-cdcl" solver-name = "gps-cdcl"
solver-version = 1 solver-version = 1

View File

@ -29,7 +29,7 @@
name = "github.com/go-gl/gl" name = "github.com/go-gl/gl"
[[constraint]] [[constraint]]
branch = "master" branch = "3.3-beta"
name = "github.com/go-gl/glfw" name = "github.com/go-gl/glfw"
[[constraint]] [[constraint]]

View File

@ -30,6 +30,7 @@ func NewBuffer(viewCols uint16, viewLines uint16, attr CellAttributes) *Buffer {
cursorAttr: attr, cursorAttr: attr,
autoWrap: true, autoWrap: true,
} }
b.SetVerticalMargins(0, uint(viewLines-1))
b.ResizeView(viewCols, viewLines) b.ResizeView(viewCols, viewLines)
return b return b
} }
@ -333,6 +334,9 @@ func (buffer *Buffer) NewLine() {
buffer.cursorX = 0 buffer.cursorX = 0
if (buffer.topMargin > 0 || buffer.bottomMargin < uint(buffer.ViewHeight())-1) && uint(buffer.cursorY) == buffer.bottomMargin { if (buffer.topMargin > 0 || buffer.bottomMargin < uint(buffer.ViewHeight())-1) && uint(buffer.cursorY) == buffer.bottomMargin {
fmt.Printf("Top %d Bot %d VH %d", buffer.topMargin, buffer.bottomMargin, buffer.ViewHeight())
// scrollable region is enabled // scrollable region is enabled
for i := buffer.topMargin; i < buffer.bottomMargin; i++ { for i := buffer.topMargin; i < buffer.bottomMargin; i++ {
above := buffer.getViewLine(uint16(i)) above := buffer.getViewLine(uint16(i))
@ -413,7 +417,7 @@ func (buffer *Buffer) getCurrentLine() *Line {
func (buffer *Buffer) getViewLine(index uint16) *Line { func (buffer *Buffer) getViewLine(index uint16) *Line {
if index >= buffer.ViewHeight() { // @todo is this okay? if index >= buffer.ViewHeight() { // @todo is this okay?#
return &buffer.lines[len(buffer.lines)-1] return &buffer.lines[len(buffer.lines)-1]
} }

View File

@ -1,6 +1,7 @@
package buffer package buffer
import ( import (
"fmt"
"strings" "strings"
"testing" "testing"
"time" "time"
@ -20,6 +21,9 @@ func TestOffsets(t *testing.T) {
assert.Equal(t, uint16(10), b.ViewWidth()) assert.Equal(t, uint16(10), b.ViewWidth())
assert.Equal(t, uint16(10), b.Width()) assert.Equal(t, uint16(10), b.Width())
assert.Equal(t, uint16(3), b.ViewHeight()) assert.Equal(t, uint16(3), b.ViewHeight())
for i, l := range b.lines {
fmt.Printf("%d. %s", i, l.String())
}
assert.Equal(t, 5, b.Height()) assert.Equal(t, 5, b.Height())
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/liamg/raft/glfont" "github.com/liamg/raft/glfont"
"github.com/go-gl/gl/all-core/gl" "github.com/go-gl/gl/all-core/gl"
"github.com/go-gl/glfw/v3.2/glfw" "github.com/go-gl/glfw/v3.3/glfw"
"github.com/liamg/raft/buffer" "github.com/liamg/raft/buffer"
"github.com/liamg/raft/config" "github.com/liamg/raft/config"
"github.com/liamg/raft/terminal" "github.com/liamg/raft/terminal"
@ -254,8 +254,8 @@ func (gui *GUI) loadFont(path string) error {
} }
func (gui *GUI) createWindow(width int, height int) (*glfw.Window, error) { func (gui *GUI) createWindow(width int, height int) (*glfw.Window, error) {
if err := glfw.Init(); err != nil { if !glfw.Init() {
return nil, err return nil, fmt.Errorf("Failed to initialise GLFW")
} }
glfw.WindowHint(glfw.Resizable, glfw.True) glfw.WindowHint(glfw.Resizable, glfw.True)
@ -264,10 +264,7 @@ func (gui *GUI) createWindow(width int, height int) (*glfw.Window, error) {
glfw.WindowHint(glfw.OpenGLProfile, glfw.OpenGLCoreProfile) glfw.WindowHint(glfw.OpenGLProfile, glfw.OpenGLCoreProfile)
glfw.WindowHint(glfw.OpenGLForwardCompatible, glfw.True) glfw.WindowHint(glfw.OpenGLForwardCompatible, glfw.True)
window, err := glfw.CreateWindow(width, height, "Terminal", nil, nil) window := glfw.CreateWindow(width, height, "Terminal", nil, nil)
if err != nil {
return nil, err
}
window.MakeContextCurrent() window.MakeContextCurrent()
return window, nil return window, nil

View File

@ -1,6 +1,6 @@
package gui package gui
import "github.com/go-gl/glfw/v3.2/glfw" import "github.com/go-gl/glfw/v3.3/glfw"
// send typed runes straight through to the pty // send typed runes straight through to the pty
func (gui *GUI) char(w *glfw.Window, r rune) { func (gui *GUI) char(w *glfw.Window, r rune) {
@ -28,9 +28,8 @@ func (gui *GUI) key(w *glfw.Window, key glfw.Key, scancode int, action glfw.Acti
switch key { switch key {
case glfw.KeyV: case glfw.KeyV:
// todo handle both these errors // todo handle both these errors
if buf, err := gui.window.GetClipboardString(); err == nil { _ = gui.terminal.Write([]byte(gui.window.GetClipboardString()))
_ = gui.terminal.Write([]byte(buf))
}
case glfw.KeySemicolon: case glfw.KeySemicolon:
gui.config.Slomo = !gui.config.Slomo gui.config.Slomo = !gui.config.Slomo
} }

View File

@ -4,7 +4,7 @@ import (
"fmt" "fmt"
"math" "math"
"github.com/go-gl/glfw/v3.2/glfw" "github.com/go-gl/glfw/v3.3/glfw"
"github.com/liamg/raft/terminal" "github.com/liamg/raft/terminal"
) )

View File

@ -1,14 +1,21 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The MIT License (MIT)
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Copyright (c) 2013 TOML authors
Everyone is permitted to copy and distribute verbatim or modified Permission is hereby granted, free of charge, to any person obtaining a copy
copies of this license document, and changing it is allowed as long of this software and associated documentation files (the "Software"), to deal
as the name is changed. in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The above copyright notice and this permission notice shall be included in
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION all copies or substantial portions of the Software.
0. You just DO WHAT THE FUCK YOU WANT TO.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,14 +1,21 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The MIT License (MIT)
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Copyright (c) 2013 TOML authors
Everyone is permitted to copy and distribute verbatim or modified Permission is hereby granted, free of charge, to any person obtaining a copy
copies of this license document, and changing it is allowed as long of this software and associated documentation files (the "Software"), to deal
as the name is changed. in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The above copyright notice and this permission notice shall be included in
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION all copies or substantial portions of the Software.
0. You just DO WHAT THE FUCK YOU WANT TO.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,14 +1,21 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The MIT License (MIT)
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Copyright (c) 2013 TOML authors
Everyone is permitted to copy and distribute verbatim or modified Permission is hereby granted, free of charge, to any person obtaining a copy
copies of this license document, and changing it is allowed as long of this software and associated documentation files (the "Software"), to deal
as the name is changed. in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The above copyright notice and this permission notice shall be included in
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION all copies or substantial portions of the Software.
0. You just DO WHAT THE FUCK YOU WANT TO.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,14 +1,21 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The MIT License (MIT)
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Copyright (c) 2013 TOML authors
Everyone is permitted to copy and distribute verbatim or modified Permission is hereby granted, free of charge, to any person obtaining a copy
copies of this license document, and changing it is allowed as long of this software and associated documentation files (the "Software"), to deal
as the name is changed. in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE The above copyright notice and this permission notice shall be included in
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION all copies or substantial portions of the Software.
0. You just DO WHAT THE FUCK YOU WANT TO.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -16,6 +16,8 @@ age = 250
andrew = "gallant" andrew = "gallant"
kait = "brady" kait = "brady"
now = 1987-07-05T05:45:00Z now = 1987-07-05T05:45:00Z
nowEast = 2017-06-22T16:15:21+08:00
nowWest = 2017-06-22T02:14:36-06:00
yesOrNo = true yesOrNo = true
pi = 3.14 pi = 3.14
colors = [ colors = [
@ -38,6 +40,8 @@ cauchy = "cat 2"
Pi float64 Pi float64
YesOrNo bool YesOrNo bool
Now time.Time Now time.Time
NowEast time.Time
NowWest time.Time
Andrew string Andrew string
Kait string Kait string
My map[string]cats My map[string]cats
@ -53,11 +57,21 @@ cauchy = "cat 2"
if err != nil { if err != nil {
panic(err) panic(err)
} }
nowEast, err := time.Parse("2006-01-02T15:04:05-07:00", "2017-06-22T16:15:21+08:00")
if err != nil {
panic(err)
}
nowWest, err := time.Parse("2006-01-02T15:04:05-07:00", "2017-06-22T02:14:36-06:00")
if err != nil {
panic(err)
}
var answer = simple{ var answer = simple{
Age: 250, Age: 250,
Andrew: "gallant", Andrew: "gallant",
Kait: "brady", Kait: "brady",
Now: now, Now: now,
NowEast: nowEast,
NowWest: nowWest,
YesOrNo: true, YesOrNo: true,
Pi: 3.14, Pi: 3.14,
Colors: [][]string{ Colors: [][]string{

View File

@ -775,7 +775,7 @@ func lexDatetime(lx *lexer) stateFn {
return lexDatetime return lexDatetime
} }
switch r { switch r {
case '-', 'T', ':', '.', 'Z': case '-', 'T', ':', '.', 'Z', '+':
return lexDatetime return lexDatetime
} }

View File

@ -1,14 +1,28 @@
language: go language: go
go_import_path: github.com/davecgh/go-spew
go: go:
- 1.5.4 - 1.6.x
- 1.6.3 - 1.7.x
- 1.7 - 1.8.x
- 1.9.x
- 1.10.x
- tip
sudo: false
install: install:
- go get -v golang.org/x/tools/cmd/cover - go get -v github.com/alecthomas/gometalinter
- gometalinter --install
script: script:
- go test -v -tags=safe ./spew - export PATH=$PATH:$HOME/gopath/bin
- go test -v -tags=testcgo ./spew -covermode=count -coverprofile=profile.cov - export GORACE="halt_on_error=1"
- test -z "$(gometalinter --disable-all
--enable=gofmt
--enable=golint
--enable=vet
--enable=gosimple
--enable=unconvert
--deadline=4m ./spew | tee /dev/stderr)"
- go test -v -race -tags safe ./spew
- go test -v -race -tags testcgo ./spew -covermode=atomic -coverprofile=profile.cov
after_success: after_success:
- go get -v github.com/mattn/goveralls - go get -v github.com/mattn/goveralls
- export PATH=$PATH:$HOME/gopath/bin
- goveralls -coverprofile=profile.cov -service=travis-ci - goveralls -coverprofile=profile.cov -service=travis-ci

View File

@ -2,7 +2,7 @@ ISC License
Copyright (c) 2012-2016 Dave Collins <dave@davec.name> Copyright (c) 2012-2016 Dave Collins <dave@davec.name>
Permission to use, copy, modify, and distribute this software for any Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies. copyright notice and this permission notice appear in all copies.

View File

@ -1,12 +1,9 @@
go-spew go-spew
======= =======
[![Build Status](https://img.shields.io/travis/davecgh/go-spew.svg)] [![Build Status](https://img.shields.io/travis/davecgh/go-spew.svg)](https://travis-ci.org/davecgh/go-spew)
(https://travis-ci.org/davecgh/go-spew) [![ISC License] [![ISC License](http://img.shields.io/badge/license-ISC-blue.svg)](http://copyfree.org)
(http://img.shields.io/badge/license-ISC-blue.svg)](http://copyfree.org) [![Coverage Status] [![Coverage Status](https://img.shields.io/coveralls/davecgh/go-spew.svg)](https://coveralls.io/r/davecgh/go-spew?branch=master)
(https://img.shields.io/coveralls/davecgh/go-spew.svg)]
(https://coveralls.io/r/davecgh/go-spew?branch=master)
Go-spew implements a deep pretty printer for Go data structures to aid in Go-spew implements a deep pretty printer for Go data structures to aid in
debugging. A comprehensive suite of tests with 100% test coverage is provided debugging. A comprehensive suite of tests with 100% test coverage is provided
@ -21,8 +18,7 @@ post about it
## Documentation ## Documentation
[![GoDoc](https://img.shields.io/badge/godoc-reference-blue.svg)] [![GoDoc](https://img.shields.io/badge/godoc-reference-blue.svg)](http://godoc.org/github.com/davecgh/go-spew/spew)
(http://godoc.org/github.com/davecgh/go-spew/spew)
Full `go doc` style documentation for the project can be viewed online without Full `go doc` style documentation for the project can be viewed online without
installing this package by using the excellent GoDoc site here: installing this package by using the excellent GoDoc site here:

View File

@ -16,7 +16,9 @@
// when the code is not running on Google App Engine, compiled by GopherJS, and // when the code is not running on Google App Engine, compiled by GopherJS, and
// "-tags safe" is not added to the go build command line. The "disableunsafe" // "-tags safe" is not added to the go build command line. The "disableunsafe"
// tag is deprecated and thus should not be used. // tag is deprecated and thus should not be used.
// +build !js,!appengine,!safe,!disableunsafe // Go versions prior to 1.4 are disabled because they use a different layout
// for interfaces which make the implementation of unsafeReflectValue more complex.
// +build !js,!appengine,!safe,!disableunsafe,go1.4
package spew package spew
@ -34,80 +36,49 @@ const (
ptrSize = unsafe.Sizeof((*byte)(nil)) ptrSize = unsafe.Sizeof((*byte)(nil))
) )
var ( type flag uintptr
// offsetPtr, offsetScalar, and offsetFlag are the offsets for the
// internal reflect.Value fields. These values are valid before golang
// commit ecccf07e7f9d which changed the format. The are also valid
// after commit 82f48826c6c7 which changed the format again to mirror
// the original format. Code in the init function updates these offsets
// as necessary.
offsetPtr = uintptr(ptrSize)
offsetScalar = uintptr(0)
offsetFlag = uintptr(ptrSize * 2)
// flagKindWidth and flagKindShift indicate various bits that the var (
// reflect package uses internally to track kind information. // flagRO indicates whether the value field of a reflect.Value
// // is read-only.
// flagRO indicates whether or not the value field of a reflect.Value is flagRO flag
// read-only.
// // flagAddr indicates whether the address of the reflect.Value's
// flagIndir indicates whether the value field of a reflect.Value is // value may be taken.
// the actual data or a pointer to the data. flagAddr flag
//
// These values are valid before golang commit 90a7c3c86944 which
// changed their positions. Code in the init function updates these
// flags as necessary.
flagKindWidth = uintptr(5)
flagKindShift = uintptr(flagKindWidth - 1)
flagRO = uintptr(1 << 0)
flagIndir = uintptr(1 << 1)
) )
func init() { // flagKindMask holds the bits that make up the kind
// Older versions of reflect.Value stored small integers directly in the // part of the flags field. In all the supported versions,
// ptr field (which is named val in the older versions). Versions // it is in the lower 5 bits.
// between commits ecccf07e7f9d and 82f48826c6c7 added a new field named const flagKindMask = flag(0x1f)
// scalar for this purpose which unfortunately came before the flag
// field, so the offset of the flag field is different for those
// versions.
//
// This code constructs a new reflect.Value from a known small integer
// and checks if the size of the reflect.Value struct indicates it has
// the scalar field. When it does, the offsets are updated accordingly.
vv := reflect.ValueOf(0xf00)
if unsafe.Sizeof(vv) == (ptrSize * 4) {
offsetScalar = ptrSize * 2
offsetFlag = ptrSize * 3
}
// Commit 90a7c3c86944 changed the flag positions such that the low // Different versions of Go have used different
// order bits are the kind. This code extracts the kind from the flags // bit layouts for the flags type. This table
// field and ensures it's the correct type. When it's not, the flag // records the known combinations.
// order has been changed to the newer format, so the flags are updated var okFlags = []struct {
// accordingly. ro, addr flag
upf := unsafe.Pointer(uintptr(unsafe.Pointer(&vv)) + offsetFlag) }{{
upfv := *(*uintptr)(upf) // From Go 1.4 to 1.5
flagKindMask := uintptr((1<<flagKindWidth - 1) << flagKindShift) ro: 1 << 5,
if (upfv&flagKindMask)>>flagKindShift != uintptr(reflect.Int) { addr: 1 << 7,
flagKindShift = 0 }, {
flagRO = 1 << 5 // Up to Go tip.
flagIndir = 1 << 6 ro: 1<<5 | 1<<6,
addr: 1 << 8,
}}
// Commit adf9b30e5594 modified the flags to separate the var flagValOffset = func() uintptr {
// flagRO flag into two bits which specifies whether or not the field, ok := reflect.TypeOf(reflect.Value{}).FieldByName("flag")
// field is embedded. This causes flagIndir to move over a bit if !ok {
// and means that flagRO is the combination of either of the panic("reflect.Value has no flag field")
// original flagRO bit and the new bit.
//
// This code detects the change by extracting what used to be
// the indirect bit to ensure it's set. When it's not, the flag
// order has been changed to the newer format, so the flags are
// updated accordingly.
if upfv&flagIndir == 0 {
flagRO = 3 << 5
flagIndir = 1 << 7
}
} }
return field.Offset
}()
// flagField returns a pointer to the flag field of a reflect.Value.
func flagField(v *reflect.Value) *flag {
return (*flag)(unsafe.Pointer(uintptr(unsafe.Pointer(v)) + flagValOffset))
} }
// unsafeReflectValue converts the passed reflect.Value into a one that bypasses // unsafeReflectValue converts the passed reflect.Value into a one that bypasses
@ -119,34 +90,56 @@ func init() {
// This allows us to check for implementations of the Stringer and error // This allows us to check for implementations of the Stringer and error
// interfaces to be used for pretty printing ordinarily unaddressable and // interfaces to be used for pretty printing ordinarily unaddressable and
// inaccessible values such as unexported struct fields. // inaccessible values such as unexported struct fields.
func unsafeReflectValue(v reflect.Value) (rv reflect.Value) { func unsafeReflectValue(v reflect.Value) reflect.Value {
indirects := 1 if !v.IsValid() || (v.CanInterface() && v.CanAddr()) {
vt := v.Type() return v
upv := unsafe.Pointer(uintptr(unsafe.Pointer(&v)) + offsetPtr) }
rvf := *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&v)) + offsetFlag)) flagFieldPtr := flagField(&v)
if rvf&flagIndir != 0 { *flagFieldPtr &^= flagRO
vt = reflect.PtrTo(v.Type()) *flagFieldPtr |= flagAddr
indirects++ return v
} else if offsetScalar != 0 { }
// The value is in the scalar field when it's not one of the
// reference types. // Sanity checks against future reflect package changes
switch vt.Kind() { // to the type or semantics of the Value.flag field.
case reflect.Uintptr: func init() {
case reflect.Chan: field, ok := reflect.TypeOf(reflect.Value{}).FieldByName("flag")
case reflect.Func: if !ok {
case reflect.Map: panic("reflect.Value has no flag field")
case reflect.Ptr: }
case reflect.UnsafePointer: if field.Type.Kind() != reflect.TypeOf(flag(0)).Kind() {
default: panic("reflect.Value flag field has changed kind")
upv = unsafe.Pointer(uintptr(unsafe.Pointer(&v)) + }
offsetScalar) type t0 int
var t struct {
A t0
// t0 will have flagEmbedRO set.
t0
// a will have flagStickyRO set
a t0
}
vA := reflect.ValueOf(t).FieldByName("A")
va := reflect.ValueOf(t).FieldByName("a")
vt0 := reflect.ValueOf(t).FieldByName("t0")
// Infer flagRO from the difference between the flags
// for the (otherwise identical) fields in t.
flagPublic := *flagField(&vA)
flagWithRO := *flagField(&va) | *flagField(&vt0)
flagRO = flagPublic ^ flagWithRO
// Infer flagAddr from the difference between a value
// taken from a pointer and not.
vPtrA := reflect.ValueOf(&t).Elem().FieldByName("A")
flagNoPtr := *flagField(&vA)
flagPtr := *flagField(&vPtrA)
flagAddr = flagNoPtr ^ flagPtr
// Check that the inferred flags tally with one of the known versions.
for _, f := range okFlags {
if flagRO == f.ro && flagAddr == f.addr {
return
} }
} }
panic("reflect.Value read-only flag has changed semantics")
pv := reflect.NewAt(vt, upv)
rv = pv
for i := 0; i < indirects; i++ {
rv = rv.Elem()
}
return rv
} }

View File

@ -16,7 +16,7 @@
// when the code is running on Google App Engine, compiled by GopherJS, or // when the code is running on Google App Engine, compiled by GopherJS, or
// "-tags safe" is added to the go build command line. The "disableunsafe" // "-tags safe" is added to the go build command line. The "disableunsafe"
// tag is deprecated and thus should not be used. // tag is deprecated and thus should not be used.
// +build js appengine safe disableunsafe // +build js appengine safe disableunsafe !go1.4
package spew package spew

View File

@ -180,7 +180,7 @@ func printComplex(w io.Writer, c complex128, floatPrecision int) {
w.Write(closeParenBytes) w.Write(closeParenBytes)
} }
// printHexPtr outputs a uintptr formatted as hexidecimal with a leading '0x' // printHexPtr outputs a uintptr formatted as hexadecimal with a leading '0x'
// prefix to Writer w. // prefix to Writer w.
func printHexPtr(w io.Writer, p uintptr) { func printHexPtr(w io.Writer, p uintptr) {
// Null pointer. // Null pointer.

View File

@ -35,16 +35,16 @@ var (
// cCharRE is a regular expression that matches a cgo char. // cCharRE is a regular expression that matches a cgo char.
// It is used to detect character arrays to hexdump them. // It is used to detect character arrays to hexdump them.
cCharRE = regexp.MustCompile("^.*\\._Ctype_char$") cCharRE = regexp.MustCompile(`^.*\._Ctype_char$`)
// cUnsignedCharRE is a regular expression that matches a cgo unsigned // cUnsignedCharRE is a regular expression that matches a cgo unsigned
// char. It is used to detect unsigned character arrays to hexdump // char. It is used to detect unsigned character arrays to hexdump
// them. // them.
cUnsignedCharRE = regexp.MustCompile("^.*\\._Ctype_unsignedchar$") cUnsignedCharRE = regexp.MustCompile(`^.*\._Ctype_unsignedchar$`)
// cUint8tCharRE is a regular expression that matches a cgo uint8_t. // cUint8tCharRE is a regular expression that matches a cgo uint8_t.
// It is used to detect uint8_t arrays to hexdump them. // It is used to detect uint8_t arrays to hexdump them.
cUint8tCharRE = regexp.MustCompile("^.*\\._Ctype_uint8_t$") cUint8tCharRE = regexp.MustCompile(`^.*\._Ctype_uint8_t$`)
) )
// dumpState contains information about the state of a dump operation. // dumpState contains information about the state of a dump operation.
@ -143,10 +143,10 @@ func (d *dumpState) dumpPtr(v reflect.Value) {
// Display dereferenced value. // Display dereferenced value.
d.w.Write(openParenBytes) d.w.Write(openParenBytes)
switch { switch {
case nilFound == true: case nilFound:
d.w.Write(nilAngleBytes) d.w.Write(nilAngleBytes)
case cycleFound == true: case cycleFound:
d.w.Write(circularBytes) d.w.Write(circularBytes)
default: default:

View File

@ -768,7 +768,7 @@ func addUintptrDumpTests() {
func addUnsafePointerDumpTests() { func addUnsafePointerDumpTests() {
// Null pointer. // Null pointer.
v := unsafe.Pointer(uintptr(0)) v := unsafe.Pointer(nil)
nv := (*unsafe.Pointer)(nil) nv := (*unsafe.Pointer)(nil)
pv := &v pv := &v
vAddr := fmt.Sprintf("%p", pv) vAddr := fmt.Sprintf("%p", pv)

View File

@ -82,18 +82,20 @@ func addCgoDumpTests() {
v5Len := fmt.Sprintf("%d", v5l) v5Len := fmt.Sprintf("%d", v5l)
v5Cap := fmt.Sprintf("%d", v5c) v5Cap := fmt.Sprintf("%d", v5c)
v5t := "[6]testdata._Ctype_uint8_t" v5t := "[6]testdata._Ctype_uint8_t"
v5t2 := "[6]testdata._Ctype_uchar"
v5s := "(len=" + v5Len + " cap=" + v5Cap + ") " + v5s := "(len=" + v5Len + " cap=" + v5Cap + ") " +
"{\n 00000000 74 65 73 74 35 00 " + "{\n 00000000 74 65 73 74 35 00 " +
" |test5.|\n}" " |test5.|\n}"
addDumpTest(v5, "("+v5t+") "+v5s+"\n") addDumpTest(v5, "("+v5t+") "+v5s+"\n", "("+v5t2+") "+v5s+"\n")
// C typedefed unsigned char array. // C typedefed unsigned char array.
v6, v6l, v6c := testdata.GetCgoTypdefedUnsignedCharArray() v6, v6l, v6c := testdata.GetCgoTypdefedUnsignedCharArray()
v6Len := fmt.Sprintf("%d", v6l) v6Len := fmt.Sprintf("%d", v6l)
v6Cap := fmt.Sprintf("%d", v6c) v6Cap := fmt.Sprintf("%d", v6c)
v6t := "[6]testdata._Ctype_custom_uchar_t" v6t := "[6]testdata._Ctype_custom_uchar_t"
v6t2 := "[6]testdata._Ctype_uchar"
v6s := "(len=" + v6Len + " cap=" + v6Cap + ") " + v6s := "(len=" + v6Len + " cap=" + v6Cap + ") " +
"{\n 00000000 74 65 73 74 36 00 " + "{\n 00000000 74 65 73 74 36 00 " +
" |test6.|\n}" " |test6.|\n}"
addDumpTest(v6, "("+v6t+") "+v6s+"\n") addDumpTest(v6, "("+v6t+") "+v6s+"\n", "("+v6t2+") "+v6s+"\n")
} }

View File

@ -182,10 +182,10 @@ func (f *formatState) formatPtr(v reflect.Value) {
// Display dereferenced value. // Display dereferenced value.
switch { switch {
case nilFound == true: case nilFound:
f.fs.Write(nilAngleBytes) f.fs.Write(nilAngleBytes)
case cycleFound == true: case cycleFound:
f.fs.Write(circularShortBytes) f.fs.Write(circularShortBytes)
default: default:

View File

@ -1083,7 +1083,7 @@ func addUintptrFormatterTests() {
func addUnsafePointerFormatterTests() { func addUnsafePointerFormatterTests() {
// Null pointer. // Null pointer.
v := unsafe.Pointer(uintptr(0)) v := unsafe.Pointer(nil)
nv := (*unsafe.Pointer)(nil) nv := (*unsafe.Pointer)(nil)
pv := &v pv := &v
vAddr := fmt.Sprintf("%p", pv) vAddr := fmt.Sprintf("%p", pv)
@ -1536,14 +1536,14 @@ func TestPrintSortedKeys(t *testing.T) {
t.Errorf("Sorted keys mismatch 3:\n %v %v", s, expected) t.Errorf("Sorted keys mismatch 3:\n %v %v", s, expected)
} }
s = cfg.Sprint(map[testStruct]int{testStruct{1}: 1, testStruct{3}: 3, testStruct{2}: 2}) s = cfg.Sprint(map[testStruct]int{{1}: 1, {3}: 3, {2}: 2})
expected = "map[ts.1:1 ts.2:2 ts.3:3]" expected = "map[ts.1:1 ts.2:2 ts.3:3]"
if s != expected { if s != expected {
t.Errorf("Sorted keys mismatch 4:\n %v %v", s, expected) t.Errorf("Sorted keys mismatch 4:\n %v %v", s, expected)
} }
if !spew.UnsafeDisabled { if !spew.UnsafeDisabled {
s = cfg.Sprint(map[testStructP]int{testStructP{1}: 1, testStructP{3}: 3, testStructP{2}: 2}) s = cfg.Sprint(map[testStructP]int{{1}: 1, {3}: 3, {2}: 2})
expected = "map[ts.1:1 ts.2:2 ts.3:3]" expected = "map[ts.1:1 ts.2:2 ts.3:3]"
if s != expected { if s != expected {
t.Errorf("Sorted keys mismatch 5:\n %v %v", s, expected) t.Errorf("Sorted keys mismatch 5:\n %v %v", s, expected)

View File

@ -36,10 +36,7 @@ type dummyFmtState struct {
} }
func (dfs *dummyFmtState) Flag(f int) bool { func (dfs *dummyFmtState) Flag(f int) bool {
if f == int('+') { return f == int('+')
return true
}
return false
} }
func (dfs *dummyFmtState) Precision() (int, bool) { func (dfs *dummyFmtState) Precision() (int, bool) {

View File

@ -16,7 +16,7 @@
// when the code is not running on Google App Engine, compiled by GopherJS, and // when the code is not running on Google App Engine, compiled by GopherJS, and
// "-tags safe" is not added to the go build command line. The "disableunsafe" // "-tags safe" is not added to the go build command line. The "disableunsafe"
// tag is deprecated and thus should not be used. // tag is deprecated and thus should not be used.
// +build !js,!appengine,!safe,!disableunsafe // +build !js,!appengine,!safe,!disableunsafe,go1.4
/* /*
This test file is part of the spew package rather than than the spew_test This test file is part of the spew package rather than than the spew_test
@ -30,7 +30,6 @@ import (
"bytes" "bytes"
"reflect" "reflect"
"testing" "testing"
"unsafe"
) )
// changeKind uses unsafe to intentionally change the kind of a reflect.Value to // changeKind uses unsafe to intentionally change the kind of a reflect.Value to
@ -38,13 +37,13 @@ import (
// fallback code which punts to the standard fmt library for new types that // fallback code which punts to the standard fmt library for new types that
// might get added to the language. // might get added to the language.
func changeKind(v *reflect.Value, readOnly bool) { func changeKind(v *reflect.Value, readOnly bool) {
rvf := (*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(v)) + offsetFlag)) flags := flagField(v)
*rvf = *rvf | ((1<<flagKindWidth - 1) << flagKindShift)
if readOnly { if readOnly {
*rvf |= flagRO *flags |= flagRO
} else { } else {
*rvf &= ^uintptr(flagRO) *flags &^= flagRO
} }
*flags |= flagKindMask
} }
// TestAddedReflectValue tests functionaly of the dump and formatter code which // TestAddedReflectValue tests functionaly of the dump and formatter code which

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gles2 package gles2

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gles2 package gles2

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gles2 implements Go bindings to OpenGL. // Package gles2 implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gles2 package gles2

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gles2 package gles2
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

View File

@ -1,3 +1,5 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// Copyright (c) 2010 Khronos Group. // Copyright (c) 2010 Khronos Group.
// This material may be distributed subject to the terms and conditions // This material may be distributed subject to the terms and conditions
// set forth in the Open Publication License, v 1.0, 8 June 1999. // set forth in the Open Publication License, v 1.0, 8 June 1999.
@ -10,7 +12,7 @@
// Package gl implements Go bindings to OpenGL. // Package gl implements Go bindings to OpenGL.
// //
// This package was automatically generated using Glow: // This package was automatically generated using Glow:
// http://github.com/go-gl/glow // https://github.com/go-gl/glow
// //
package gl package gl

View File

@ -1,12 +1,18 @@
// Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
// This file implements GlowGetProcAddress for every supported platform. The // This file implements GlowGetProcAddress for every supported platform. The
// correct version is chosen automatically based on build tags: // correct version is chosen automatically based on build tags:
//
// windows: WGL // windows: WGL
// darwin: CGL // darwin: CGL
// linux freebsd: GLX // linux freebsd: GLX
//
// Use of EGL instead of the platform's default (listed above) is made possible // Use of EGL instead of the platform's default (listed above) is made possible
// via the "egl" build tag. // via the "egl" build tag.
//
// It is also possible to install your own function outside this package for // It is also possible to install your own function outside this package for
// retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc. // retrieving OpenGL function pointers, to do this see InitWithProcAddrFunc.
package gl package gl
/* /*

View File

@ -1,4 +1,4 @@
// Glow automatically generated OpenGL binding: http://github.com/go-gl/glow // Code generated by glow (https://github.com/go-gl/glow). DO NOT EDIT.
package gl package gl

Some files were not shown because too many files have changed in this diff Show More