Skip to main content
Glama
emicklei

melrōse musical expression player

by emicklei
transpose.go766 B
package op import ( "fmt" "github.com/emicklei/melrose/core" ) type Transpose struct { Target core.Sequenceable Semitones core.HasValue } func (p Transpose) S() core.Sequence { return p.Target.S().Pitched(core.Int(p.Semitones)) } func (p Transpose) Storex() string { return fmt.Sprintf("transpose(%s,%s)", core.Storex(p.Semitones), core.Storex(p.Target)) } // Replaced is part of Replaceable func (p Transpose) Replaced(from, to core.Sequenceable) core.Sequenceable { if core.IsIdenticalTo(p, from) { return to } if core.IsIdenticalTo(p.Target, from) { return Transpose{Target: to, Semitones: p.Semitones} } if r, ok := p.Target.(core.Replaceable); ok { return Transpose{Target: r.Replaced(from, to), Semitones: p.Semitones} } return p }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/emicklei/melrose'

If you have feedback or need assistance with the MCP directory API, please join our Discord server