← Back to team overview

kicad-developers team mailing list archive

Re: Sweet parser

 

On 3/25/2011 4:42 PM, Dick Hollenbeck wrote:
> -------------------------
>> When it comes to coding, we should be careful not to allow the schematic
>> editor to go beyond the bounds of the public Sweet API.  This should be
>> possible to enforce by keeping the sweet stuff as a separate DLL.
> 
> I still think the best way forward will be to have a LIB_SOURCE that simply
> reads old lib files and provides PARTs through the LIB_SOURCE API, which
> inherently means generating a sweet string for each part, on the fly.  This
> provides a good model for any other type of library conversion facility.

Great idea.  This is one of the things I've been thinking about as well.
 Converting the existing libraries can always be done with external
conversion tools written in other languages like Python but asking user
to convert libraries this way is not very practical.

> 
> As soon as I am done with the sweet parser, I will be doing all the Format()
> functions which is the reverse of the Parse() operation, and from this code,
> given that we can Format() into a STRING_FORMATTER, means we can generate
> Sweet strings from the C++ structures.  These building blocks can be put
> into any "converting" type of LIB_SOURCE.

We should be able to merge this into the current library editor and
provide a save library to the new file format option.  If it's done
properly, we should be able to generate a part file tree based on the
library name as the path and the component names as the file names.  The
tricky part may be breaking down components with multiple parts and
alternate body styles into the appropriate gate files to take advantage
of the inheritance built into the new format.

Wayne

> 
> 
> Dick
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 



Follow ups

References