That's why you have prototypes (tnx Kyle!) Joep
2009/1/6, Sebastien Lelong <[email protected]>: > > Hi, > > > > > > > > 1. I've written two libs: i2c_hw_slave.jal and i2c_hw_slave_isr.jal. > Only > > > i2c_hw_slave_isr.jal (the ISR) is required by client code. I could have > merge > > > them, but I thought it might be useful to keep the init/read/write > functions > > > apart from ISR, for other purpose (like implementing a i2c slave, but > not > > > using states). What's your point ? > > I think this is a bit confusing for users, an other file with similar > > code - what should they choose... > > I think it is better to have one file that contains the required code. > [...] > > Well, I was wrong ! Two libraries are needed because: > > - before including the ISR, callbacks must be defined > - some callbacks need to i2c_hw_slave_read or i2c_hw_slave_write > > If those procedures are defined in a unique lib, which also contains the > ISR, there is a circular dependency: you can't include one unique ISR lib to > get those func to define your callbacks, because you callbacks must be > defined before including one unique ISR lib. > > So I must kept them the way they are: > > - i2c_hw_slave: common i2c slave procedures > - i2c_hw_slave_isr.jal: ISR related stuff > > This also separate things which are ISR related from things which aren't > (yeah, I like when things are in the correct place :)) > > > Cheers, > Seb > -- > Sébastien Lelong > > http://www.sirloon.net > http://sirbot.org > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "jallib" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/jallib?hl=en -~----------~----~----~----~------~----~------~--~---
