more specctra dsn work

This commit is contained in:
dickelbeck 2008-01-18 22:41:16 +00:00
parent 879fcecae7
commit 76344d43b1
3 changed files with 754 additions and 107 deletions

View File

@ -81,6 +81,7 @@ const static KEYWORD tokens[] = {
TOKDEF(boundary),
TOKDEF(brickpat),
TOKDEF(bundle),
TOKDEF(bus),
TOKDEF(bypass),
TOKDEF(capacitance_resolution),
TOKDEF(capacitor),
@ -136,6 +137,7 @@ const static KEYWORD tokens[] = {
TOKDEF(family),
TOKDEF(family_family),
TOKDEF(family_family_spacing),
TOKDEF(fanout),
TOKDEF(farad),
TOKDEF(file),
TOKDEF(fit),
@ -301,6 +303,7 @@ const static KEYWORD tokens[] = {
TOKDEF(primary),
TOKDEF(priority),
TOKDEF(property),
TOKDEF(protect),
TOKDEF(qarc),
TOKDEF(quarter),
TOKDEF(radius),
@ -355,6 +358,7 @@ const static KEYWORD tokens[] = {
TOKDEF(smd),
TOKDEF(snap),
TOKDEF(snap_angle),
TOKDEF(soft),
TOKDEF(source),
TOKDEF(space_in_quoted_tokens),
TOKDEF(spacing),
@ -688,18 +692,20 @@ L_read:
head = cur+1;
}
// handle T_DASH or T_NUMBER
else if( strchr( "+-.0123456789", *cur ) )
{
if( *cur=='-' && !strchr( ".0123456789", *(cur+1) ) )
/* get the dash out of a <pin_reference> which is embedded for example
like: U2-14 or "U2"-"14"
This is detectable by a non-space immediately preceeding the dash.
*/
else if( *cur == '-' && cur>start && !isspace( cur[-1] ) )
{
head = cur+1;
curText.clear();
curText += *cur;
curText += '-';
curTok = T_DASH;
}
else
// handle T_NUMBER
else if( strchr( "+-.0123456789", *cur ) )
{
head = cur+1;
while( head<limit && strchr( ".0123456789", *head ) )
@ -709,7 +715,6 @@ L_read:
curText.append( cur, head );
curTok = T_NUMBER;
}
}
// a quoted string
else if( *cur == stringDelimiter )

View File

@ -81,6 +81,7 @@ enum DSN_T {
T_boundary,
T_brickpat,
T_bundle,
T_bus,
T_bypass,
T_capacitance_resolution,
T_capacitor,
@ -136,6 +137,7 @@ enum DSN_T {
T_family,
T_family_family,
T_family_family_spacing,
T_fanout,
T_farad,
T_file,
T_fit,
@ -301,6 +303,7 @@ enum DSN_T {
T_primary,
T_priority,
T_property,
T_protect,
T_qarc,
T_quarter,
T_radius,
@ -355,6 +358,7 @@ enum DSN_T {
T_smd,
T_snap,
T_snap_angle,
T_soft,
T_source,
T_space_in_quoted_tokens,
T_spacing,

File diff suppressed because it is too large Load Diff