| 35 | } |
| 36 | |
| 37 | func (p *Position) Call(args []super.Value) super.Value { |
| 38 | val, subVal := args[0], args[1] |
| 39 | if val.IsNull() || subVal.IsNull() { |
| 40 | return super.Null |
| 41 | } |
| 42 | if !val.IsString() { |
| 43 | return p.sctx.WrapError("position: string arguments required", val) |
| 44 | } |
| 45 | if !subVal.IsString() { |
| 46 | return p.sctx.WrapError("position: string arguments required", subVal) |
| 47 | } |
| 48 | i := strings.Index(val.AsString(), subVal.AsString()) |
| 49 | return super.NewInt64(int64(i + 1)) |
| 50 | } |
| 51 | |
| 52 | type Replace struct { |
| 53 | sctx *super.Context |