module.go 403 B

123456789101112131415161718192021222324
  1. package module
  2. import (
  3. "cp/node"
  4. "cp/object"
  5. "ypk/assert"
  6. )
  7. type Module struct {
  8. Enter node.Node
  9. Objects map[node.Node][]object.Object
  10. Nodes []node.Node
  11. }
  12. func (m *Module) NodeByObject(obj object.Object) (ret node.Node) {
  13. assert.For(obj != nil, 20)
  14. for i := 0; (i < len(m.Nodes)) && (ret == nil); i++ {
  15. node := m.Nodes[i]
  16. if node.Object() == obj {
  17. ret = node
  18. }
  19. }
  20. return ret
  21. }