Changeset d1f11cd in tol
- Timestamp:
- Sep 19, 2011, 3:22:45 PM (15 years ago)
- Branches:
- 1941-docker-image-to-test, devel, master
- Children:
- c6e98e2
- Parents:
- 7860d11
- File:
-
- 1 edited
-
tol/btol/bgrammar/oprimp.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tol/btol/bgrammar/oprimp.cpp
r7860d11 rd1f11cd 580 580 else if((tok->TokenType()==BINARY)&&(tok->Name()=="::")) 581 581 { 582 if(BParser::Unparse(left_orig)=="BysMcmc::NameBlock config") 583 printf(""); 582 584 //BText expr = BParser::Unparse(left); 583 585 //Std(BText("Unparse(left)=\n")<<BParser::Unparse(left)+"\n"); … … 594 596 { 595 597 tok = BParser::treToken(left); 596 BSyntaxObject* member = unb->Contens().Member(tok->Name());597 if(!member) { Error(err_msg); }598 else if(member->Mode()== BSTRUCTMODE)599 {600 str = (BStruct*)member;601 gra = GraSet();598 const BText& tokName = tok->Name(); 599 //VBR: Misteriosamente aprecen en los OIS expresiones como BysMcmc::NameBlock 600 BGrammar* g = BGrammar::FindByName(tokName,false); 601 if(g) 602 { 603 gra = g; 602 604 unb = NULL; 603 605 left = Tree::treLeft(left); 604 606 } 605 else if(member->Mode() == BCLASSMODE)606 {607 cls = (BClass*)member;608 gra = GraNameBlock();609 unb = NULL;610 left = Tree::treLeft(left);611 }612 else if((member->Mode() == BOBJECTMODE) && (member->Grammar() == GraNameBlock()))613 {614 unb = (BUserNameBlock*)member;615 left = Tree::treRight(left);616 }617 607 else 618 608 { 619 Error(err_msg); 620 } 621 } 622 609 BSyntaxObject* member = unb->Contens().Member(tokName); 610 if(!member) { Error(err_msg); } 611 else if(member->Mode()== BSTRUCTMODE) 612 { 613 str = (BStruct*)member; 614 gra = GraSet(); 615 unb = NULL; 616 left = Tree::treLeft(left); 617 } 618 else if(member->Mode() == BCLASSMODE) 619 { 620 cls = (BClass*)member; 621 gra = GraNameBlock(); 622 unb = NULL; 623 left = Tree::treLeft(left); 624 } 625 else if((member->Mode() == BOBJECTMODE) && (member->Grammar() == GraNameBlock())) 626 { 627 unb = (BUserNameBlock*)member; 628 left = Tree::treRight(left); 629 } 630 else 631 { 632 Error(err_msg); 633 } 634 } 635 } 623 636 } 624 637 else if(tok->TokenType()!=FUNCTION)
Note: See TracChangeset
for help on using the changeset viewer.
