github.com/vugu/vugu@v0.3.5/js/impl-nonjs.go (about) 1 // +build !js 2 3 package js 4 5 import "errors" 6 7 var errNotImpl = errors.New("js not implemented") 8 9 // Error placeholder for syscall/js 10 type Error struct { 11 Value 12 } 13 14 // Error placeholder for syscall/js 15 func (e Error) Error() string { 16 return errNotImpl.Error() 17 } 18 19 // Func placeholder for syscall/js 20 type Func struct { 21 Value 22 } 23 24 // FuncOf placeholder for syscall/js 25 func FuncOf(fn func(Value, []Value) interface{}) Func { 26 // making this panic for now, although I can see some utility in allowing this 27 // and then they just never get called, will see... 28 panic(errNotImpl) 29 // return Func{} 30 } 31 32 // Release placeholder for syscall/js 33 func (c Func) Release() { 34 // nop 35 } 36 37 // Type placeholder for syscall/js 38 type Type int 39 40 // Placeholder for syscall/js 41 const ( 42 TypeUndefined Type = iota 43 TypeNull 44 TypeBoolean 45 TypeNumber 46 TypeString 47 TypeSymbol 48 TypeObject 49 TypeFunction 50 ) 51 52 // String placeholder for syscall/js 53 func (t Type) String() string { 54 return "undefined" 55 } 56 57 // Undefined placeholder for syscall/js 58 func Undefined() Value { 59 return Value{} 60 } 61 62 // Null placeholder for syscall/js 63 func Null() Value { 64 return Value{} 65 } 66 67 // Global placeholder for syscall/js 68 func Global() Value { 69 return Value{} 70 } 71 72 // ValueOf placeholder for syscall/js 73 func ValueOf(x interface{}) Value { 74 return Value{} 75 } 76 77 // CopyBytesToGo placeholder for syscall/js 78 func CopyBytesToGo(dst []byte, src Value) int { 79 return 0 80 } 81 82 // CopyBytesToJS placeholder for syscall/js 83 func CopyBytesToJS(dst Value, src []byte) int { 84 return 0 85 } 86 87 // // TypedArray placeholder for syscall/js 88 // type TypedArray struct { 89 // Value 90 // } 91 92 // // TypedArrayOf placeholder for syscall/js 93 // func TypedArrayOf(slice interface{}) TypedArray { 94 // return TypedArray{} 95 // } 96 97 // // Release placeholder for syscall/js 98 // func (a TypedArray) Release() { 99 // // nop 100 // } 101 102 // ValueError placeholder for syscall/js 103 type ValueError struct { 104 Method string 105 Type Type 106 } 107 108 // Error placeholder for syscall/js 109 func (e *ValueError) Error() string { 110 return errNotImpl.Error() 111 } 112 113 // Wrapper placeholder for syscall/js 114 type Wrapper interface { 115 JSValue() Value 116 } 117 118 // Value placeholder for syscall/js 119 type Value struct { 120 stub uint64 121 } 122 123 // JSValue placeholder for syscall/js 124 func (v Value) JSValue() Value { 125 return v 126 } 127 128 // Type placeholder for syscall/js 129 func (v Value) Type() Type { 130 return TypeUndefined 131 } 132 133 func (v Value) Get(p string) Value { 134 return Undefined() 135 } 136 137 func (v Value) Set(p string, x interface{}) { 138 panic(errNotImpl) 139 } 140 141 func (v Value) Index(i int) Value { 142 return Undefined() 143 } 144 145 func (v Value) SetIndex(i int, x interface{}) { 146 panic(errNotImpl) 147 } 148 149 func (v Value) Length() int { 150 return 0 151 } 152 153 func (v Value) Call(m string, args ...interface{}) Value { 154 panic(errNotImpl) 155 } 156 157 func (v Value) Invoke(args ...interface{}) Value { 158 panic(errNotImpl) 159 } 160 161 func (v Value) New(args ...interface{}) Value { 162 return Undefined() 163 } 164 165 func (v Value) Float() float64 { 166 return 0 167 } 168 169 func (v Value) Int() int { 170 return 0 171 } 172 173 func (v Value) Bool() bool { 174 return false 175 } 176 177 func (v Value) Truthy() bool { 178 return false 179 } 180 181 func (v Value) String() string { 182 return "" 183 } 184 185 func (v Value) InstanceOf(t Value) bool { 186 return false 187 } 188 189 func (v Value) IsUndefined() bool { 190 return true 191 } 192 193 func (v Value) IsNull() bool { 194 return false 195 }