Releases: goplus/gogen
Releases · goplus/gogen
Release v0.9.37
new features:
- support assignOp(+=, -=, etc). see InitBuiltinAssignOps, TestBigRatAssignOp, TestBigRatAssignOp2, TestBigRatAssignOp3.
- TestErrDefineVar
Release v0.9.35
new features:
- rational support: untyped bigint/bigrat, bigint/bigrat (and operators), see cb.UntypedBigInt/UntypedBigRat
- constant eval: support constant.BinaryOp/Compare/Shift
- DefaultConv/AssignableConv
changes:
- remove BuiltinContracts, LoadUnderlyingFunc
- stack element: internal.Elem => *internal.Elem
Release v0.9.23
new features:
- binary operators: LAnd(&&), LOr(||) and LNot(!)
- cb.Member support embedded fields of struct
changes:
- support codecov (coverage report)
- ComparableTo bugfix
Release v0.9.20
new features:
- add MatchError
- add AssignWith, CallWith
- codeErrorTest: TestErrRecv (pointer type), TestErrMemberRef, TestErrReturn, TestErrAssign, TestErrForRange, TestErrConst, TestErrNewVar
changes:
- NewFuncWith returns error
- pkg.NewParam add token.Pos
- pkg.NewConstStart/NewVar/NewVarStart add token.Pos
Release v0.9.16
new features:
- init func
- error recover: ResetInit / ResetStmt
- codeErrorTest: TestErrInitFunc, TestErrRecv, TestErrLabel, TestErrNewVar, TestErrStructLit, TestErrMapLit, TestErrArrayLit, TestErrSliceLit, TestErrSlice, TestErrIndex, TestErrIndexRef, TestErrStar, TestErrMember
Release v0.9.8
new features:
- type assert
- type switch..case
- select..case
- Comments/SetComments
changes:
- for range: allow for _, x := range chanExpr
Release v0.9.1
new features:
- interface
- AssignOp (+=, -=, etc.)
- SetDebug support debugInstr, debugImport, debugMatch
- getUnderlying: support delay load a type init
changes:
- NewFunc/NewFuncWith bugfix
Release v0.8.73
new features:
- MemberVal(name string) => MemberVal(name string, mflags ...*int), to support Go+ AutoProperty feature
- EnsureImported
changes:
- SetDebug(debug bool) => SetDebug(dbgFlags int)
- NewLoadPkgsCached(
load func(cfg *packages.Config, patterns ...string) ([]*packages.Package, error)) LoadPkgsFunc
small fix:
- CallInlineClosure bugfix
- cb.Elem() is a part of cb.Star()
- BinaryOp: nil == v AND nil != nil
Release v0.8.50
new features:
- StructLit (eg. struct {a int}{1}, struct {a int}{a: 1}, etc.)
- NamedLit (eg. type foo XXX; foo{1}, foo{a: 1}, etc.)
- NewType/AliasType
- Methods
- MemberRef
- pkg variable ref
- operator: & and * (Addr and Elem)
changes:
- SliceGet => Slice
- IndexGet => Index
todo:
- ZeroLit support *types.Named
Release v0.8.25
new features:
- inline a function call (see cb.CallInlineClosureStart .. End)
- CompareNil (and BinaryOp support == nil, != nil)
- ReturnErr (use it to return an error easier)
- ZeroLit enhancement (support all builtin types, including basic types, slice, array, map, chan, interface, etc.)
- gop_test.go (now support bigint/bigrat variable declaration, BinaryOp/UnaryOp, TypeCast/Init)
changes:
- label bugfix (including goto/break/continue)