alias operators: '<<' same as '<+', '>>' same as '+>'. Insert and append operation optimized with linked lists
This commit is contained in:
+6
-2
@@ -39,7 +39,9 @@ func evalRightShift(ctx kern.ExprContext, opTerm *scan.Term) (v any, err error)
|
||||
return
|
||||
}
|
||||
|
||||
v, err = bitRightShift(opTerm, leftValue, rightValue)
|
||||
if v, err = bitRightShift(opTerm, leftValue, rightValue); err != nil {
|
||||
v, err = prependToList(ctx, opTerm, leftValue, rightValue)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -71,7 +73,9 @@ func evalLeftShift(ctx kern.ExprContext, opTerm *scan.Term) (v any, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
v, err = bitLeftShift(opTerm, leftValue, rightValue)
|
||||
if v, err = bitLeftShift(opTerm, leftValue, rightValue); err != nil {
|
||||
v, err = appendToList(ctx, opTerm, leftValue, rightValue)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user