Closed qfox closed 7 years ago
Cross tech decl algebra:
// U — merge
[{ entity: A }] U [{ entity: A, tech: '1' }] →
→ [{ entity: A }, { entity: A, tech: '1' }] // Because any tech can be not '1' in result
[{ entity: A, tech: '1' }] U [{ entity: A, tech: '2' }] →
→ [{ entity: A, tech: '1' }, { entity: A, tech: '2' }]
// / — subtract
[{ entity: A }] / [{ entity: A, tech: 'specified' }] → [{ entity: A }]
[{ entity: A, tech: 'specified' }] / [{ entity: A }] → []
[{ entity: A, tech: 'specified' }] / [{ tech: 'specified' }] → []
// П — intersect
[{ entity: A }] П [{ entity: A, tech: 'specified' }] → [{ entity: A, tech: 'specified' }]
[{ entity: A, tech: '1' }] П [{ entity: A, tech: '2' }] → []
[{ tech: '1' }] П [{ entity: A, tech: '1' }] → [{ entity: A, tech: '1' }]
closed favor of #81
BemFile is a structure that has entity and tech. Normalize v2 returns items as bemfiles.
bem-graph
also uses this format to operate with deps.Seems like we should support it everywhere.