⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 itcl.c

📁 这是一个Linux下的集成开发环境
💻 C
📖 第 1 页 / 共 5 页
字号:
/* line 307 "itcl.puma" */   get_objects (s->class.next);/* line 308 "itcl.puma" *//* line 308 "itcl.puma" */   prev_class = cur_class_ptr;/* line 309 "itcl.puma" */   cur_class_ptr = GetCStr (s->class.qualification->local_ident.ident);/* line 310 "itcl.puma" */   get_objects (s->class.block);/* line 311 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->class.qualification->Kind == kglobal_ident) {/* line 313 "itcl.puma" */ {  tTree obj;  tString prev_class;  {/* line 319 "itcl.puma" *//* line 319 "itcl.puma" */   obj = IdentifyGlobal (s->class.qualification->global_ident.ident);/* line 320 "itcl.puma" */  if (obj != NoTree && Tree_IsType (obj->object.object, knamespace_c)) {      relocate (s->class.block, obj->object.object->class.block->texts.env);      use (obj, s->class.qualification->global_ident.pos, PAF_REF_READ);   } else {      s->class.env->env.objects = mobject (s, s->class.qualification->global_ident.ident, s->class.env->env.objects);      dcl (s->class.env->env.objects, s->class.attribute);   }/* line 328 "itcl.puma" */   get_objects (s->class.next);/* line 329 "itcl.puma" *//* line 329 "itcl.puma" */   prev_class = cur_class_ptr;/* line 330 "itcl.puma" */   cur_class_ptr = GetCStr (s->class.qualification->global_ident.ident);/* line 331 "itcl.puma" */   get_objects (s->class.block);/* line 332 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->class.qualification->Kind == klocal_text) {/* line 334 "itcl.puma" */ {  tString prev_class;  {/* line 342 "itcl.puma" */   get_objects (s->class.next);/* line 343 "itcl.puma" *//* line 343 "itcl.puma" */   prev_class = cur_class_ptr;/* line 344 "itcl.puma" */   cur_class_ptr = GetCStr (get_ident (s->class.qualification));/* line 345 "itcl.puma" */   get_objects (s->class.block);/* line 346 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->class.qualification->Kind == kglobal_text) {/* line 334 "itcl.puma" */ {  tString prev_class;  {/* line 342 "itcl.puma" */   get_objects (s->class.next);/* line 343 "itcl.puma" *//* line 343 "itcl.puma" */   prev_class = cur_class_ptr;/* line 344 "itcl.puma" */   cur_class_ptr = GetCStr (get_ident (s->class.qualification));/* line 345 "itcl.puma" */   get_objects (s->class.block);/* line 346 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }/* line 348 "itcl.puma" */  {/* line 350 "itcl.puma" */   need_pass_2 = rtrue;/* line 351 "itcl.puma" */   s = s->class.next;   goto yyRecursion;  }  case kitcl_class:  if (s->itcl_class.qualification->Kind == klocal_ident) {/* line 292 "itcl.puma" */ {  tTree obj;  tString prev_class;  {/* line 298 "itcl.puma" *//* line 298 "itcl.puma" */   obj = IdentifyLocal (s->itcl_class.qualification->local_ident.ident, s->itcl_class.env -> env . objects);/* line 299 "itcl.puma" */  if (obj != NoTree && Tree_IsType (obj->object.object, knamespace_c)) {      relocate (s->itcl_class.block, obj->object.object->class.block->texts.env);      use (obj, s->itcl_class.qualification->local_ident.pos, PAF_REF_READ);   } else {      s->itcl_class.env->env.objects = mobject (s, s->itcl_class.qualification->local_ident.ident, s->itcl_class.env->env.objects);      dcl (s->itcl_class.env->env.objects, s->itcl_class.attribute);   }/* line 307 "itcl.puma" */   get_objects (s->itcl_class.next);/* line 308 "itcl.puma" *//* line 308 "itcl.puma" */   prev_class = cur_class_ptr;/* line 309 "itcl.puma" */   cur_class_ptr = GetCStr (s->itcl_class.qualification->local_ident.ident);/* line 310 "itcl.puma" */   get_objects (s->itcl_class.block);/* line 311 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->itcl_class.qualification->Kind == kglobal_ident) {/* line 313 "itcl.puma" */ {  tTree obj;  tString prev_class;  {/* line 319 "itcl.puma" *//* line 319 "itcl.puma" */   obj = IdentifyGlobal (s->itcl_class.qualification->global_ident.ident);/* line 320 "itcl.puma" */  if (obj != NoTree && Tree_IsType (obj->object.object, knamespace_c)) {      relocate (s->itcl_class.block, obj->object.object->class.block->texts.env);      use (obj, s->itcl_class.qualification->global_ident.pos, PAF_REF_READ);   } else {      s->itcl_class.env->env.objects = mobject (s, s->itcl_class.qualification->global_ident.ident, s->itcl_class.env->env.objects);      dcl (s->itcl_class.env->env.objects, s->itcl_class.attribute);   }/* line 328 "itcl.puma" */   get_objects (s->itcl_class.next);/* line 329 "itcl.puma" *//* line 329 "itcl.puma" */   prev_class = cur_class_ptr;/* line 330 "itcl.puma" */   cur_class_ptr = GetCStr (s->itcl_class.qualification->global_ident.ident);/* line 331 "itcl.puma" */   get_objects (s->itcl_class.block);/* line 332 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->itcl_class.qualification->Kind == klocal_text) {/* line 334 "itcl.puma" */ {  tString prev_class;  {/* line 342 "itcl.puma" */   get_objects (s->itcl_class.next);/* line 343 "itcl.puma" *//* line 343 "itcl.puma" */   prev_class = cur_class_ptr;/* line 344 "itcl.puma" */   cur_class_ptr = GetCStr (get_ident (s->itcl_class.qualification));/* line 345 "itcl.puma" */   get_objects (s->itcl_class.block);/* line 346 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }  if (s->itcl_class.qualification->Kind == kglobal_text) {/* line 334 "itcl.puma" */ {  tString prev_class;  {/* line 342 "itcl.puma" */   get_objects (s->itcl_class.next);/* line 343 "itcl.puma" *//* line 343 "itcl.puma" */   prev_class = cur_class_ptr;/* line 344 "itcl.puma" */   cur_class_ptr = GetCStr (get_ident (s->itcl_class.qualification));/* line 345 "itcl.puma" */   get_objects (s->itcl_class.block);/* line 346 "itcl.puma" */   cur_class_ptr = prev_class;  }   return; }  }/* line 348 "itcl.puma" */  {/* line 350 "itcl.puma" */   need_pass_2 = rtrue;/* line 351 "itcl.puma" */   s = s->itcl_class.next;   goto yyRecursion;  }  case kstmt:  if (s->stmt.words->Kind == kone_word) {  if (Tree_IsType (s->stmt.words->one_word.next, kword_c)) {/* line 353 "itcl.puma" */  {/* line 355 "itcl.puma" */   add_variables (s->stmt.words->one_word.ident, s->stmt.words->one_word.next, default_attr);/* line 356 "itcl.puma" */   get_objects (s->stmt.words);/* line 357 "itcl.puma" */   s = s->stmt.next;   goto yyRecursion;  }  }  }/* line 359 "itcl.puma" */  {/* line 360 "itcl.puma" */   get_objects (s->stmt.words);/* line 361 "itcl.puma" */   s = s->stmt.next;   goto yyRecursion;  }  case kblock:/* line 363 "itcl.puma" */  {/* line 364 "itcl.puma" */   get_objects (s->block.stmts);/* line 365 "itcl.puma" */   s = s->block.next;   goto yyRecursion;  }  case kcontent:/* line 367 "itcl.puma" */  {/* line 368 "itcl.puma" */   get_objects (s->content.qualification);/* line 369 "itcl.puma" */   s = s->content.next;   goto yyRecursion;  }  case kblock_content:/* line 371 "itcl.puma" */  {/* line 372 "itcl.puma" */   get_objects (s->block_content.stmts);/* line 373 "itcl.puma" */   s = s->block_content.next;   goto yyRecursion;  }  case ktext:  case kcharacter:  case kident:/* line 375 "itcl.puma" */  {/* line 376 "itcl.puma" */   s = s->text.next;   goto yyRecursion;  }  case kone_word:/* line 378 "itcl.puma" */  {/* line 379 "itcl.puma" */   s = s->one_word.next;   goto yyRecursion;  }  case kqual_word:/* line 381 "itcl.puma" */  {/* line 382 "itcl.puma" */   get_objects (s->qual_word.qualification);/* line 383 "itcl.puma" */   s = s->qual_word.next;   goto yyRecursion;  }  case kqual_words:/* line 385 "itcl.puma" */  {/* line 386 "itcl.puma" */   get_objects (s->qual_words.qualifications);/* line 387 "itcl.puma" */   s = s->qual_words.next;   goto yyRecursion;  }  case kone_qualification:/* line 389 "itcl.puma" */  {/* line 390 "itcl.puma" */   get_objects (s->one_qualification.qualification);/* line 391 "itcl.puma" */   s = s->one_qualification.next;   goto yyRecursion;  }  case klocal_text:/* line 393 "itcl.puma" */  {/* line 394 "itcl.puma" */   s = s->local_text.texts;   goto yyRecursion;  }  case kglobal_text:/* line 396 "itcl.puma" */  {/* line 397 "itcl.puma" */   s = s->global_text.texts;   goto yyRecursion;  }  case kqualification:/* line 399 "itcl.puma" */  {/* line 400 "itcl.puma" */   s = s->qualification.qualification;   goto yyRecursion;  }  case kcomplex_qual:/* line 402 "itcl.puma" */  {/* line 403 "itcl.puma" */   get_objects (s->complex_qual.qualification);/* line 404 "itcl.puma" */   s = s->complex_qual.texts;   goto yyRecursion;  }  case ksubscription:/* line 406 "itcl.puma" */  {/* line 407 "itcl.puma" */   get_objects (s->subscription.qualification);/* line 408 "itcl.puma" */   s = s->subscription.index;   goto yyRecursion;  }  };}static void get_param_objects#if defined __STDC__ | defined __cplusplus(register tTree s)#else(s) register tTree s;#endif{ yyRecursion:  if (s->Kind == kone_word) {/* line 415 "itcl.puma" */ {  register tTree yyV1;  {/* line 416 "itcl.puma" */   yyALLOC (tTree,Tree_PoolFreePtr,Tree_PoolStartPtr,    Tree_Alloc,yobject,MakeTree,yyV1,kobject,Tree_InitHead)    yyV1->object.object = s;    yyV1->object.ident = s->one_word.ident;    yyV1->object.next = s->one_word.env -> env . objects;   s->one_word.env -> env . objects = yyV1;/* line 417 "itcl.puma" */   dcl (s->one_word.env -> env . objects, PAF_PUBLIC);/* line 418 "itcl.puma" */   s = s->one_word.next;   goto yyRecursion;  } }  }  if (Tree_IsType (s, kword_c)) {/* line 420 "itcl.puma" */  {/* line 421 "itcl.puma" */   s = s->word_c.next;   goto yyRecursion;  }  };}static void add_variables#if defined __STDC__ | defined __cplusplus(register tIdent yyP3, register tTree yyP2, register int attr)#else(yyP3, yyP2, attr) register tIdent yyP3; register tTree yyP2; register int attr;#endif{ yyRecursion:  if (equaltIdent (yyP3, (iset))) {  if (yyP2->word_c.next->Kind == knoword) {/* line 428 "itcl.puma" */  {/* line 429 "itcl.puma" */   add_var (yyP2, PAF_REF_READ, default_attr);  }   return;  }  }  if (equaltIdent (yyP3, (iset))) {/* line 431 "itcl.puma" */  {/* line 432 "itcl.puma" */   add_var (yyP2, PAF_REF_WRITE, default_attr);  }   return;  }  if (equaltIdent (yyP3, (iglobal))) {/* line 434 "itcl.puma" */  {/* line 435 "itcl.puma" */   add_global_vars (yyP2);  }   return;  }  if (equaltIdent (yyP3, (ivariable))) {  if (yyP2->word_c.next->Kind == knoword) {/* line 437 "itcl.puma" */  {/* line 438 "itcl.puma" */   add_variable_vars (yyP2, PAF_REF_READ, attr);  }   return;  }  }  if (equaltIdent (yyP3, (ivariable))) {  if (Tree_IsType (yyP2->word_c.next, kword_c)) {  if (yyP2->word_c.next->word_c.next->Kind == kqual_word) {/* line 440 "itcl.puma" */  {/* line 443 "itcl.puma" */   relocate (yyP2->word_c.next->word_c.next->qual_word.qualification, menv (mnoobject (), yyP2->word_c.next->word_c.next->qual_word.env, yyP2->word_c.next->word_c.next));/* line 444 "itcl.puma" */   add_variable_vars (yyP2, PAF_REF_WRITE, attr);  }   return;  }  }  }  if (equaltIdent (yyP3, (ivariable))) {/* line 446 "itcl.puma" */  {/* line 447 "itcl.puma" */   add_variable_vars (yyP2, PAF_REF_WRITE, attr);  }   return;  }  if (equaltIdent (yyP3, (icommon))) {  if (yyP2->word_c.next->Kind == knoword) {/* line 449 "itcl.puma" */  {/* line 450 "itcl.puma" */   add_var (yyP2, PAF_REF_READ, default_attr);  }   return;  }  }  if (equaltIdent (yyP3, (icommon))) {/* line 452 "itcl.puma" */  {/* line 453 "itcl.puma" */   add_var (yyP2, PAF_REF_WRITE, default_attr);  }   return;  }  if (equaltIdent (yyP3, (ipublic))) {  if (yyP2->Kind == kone_word) {  if (Tree_IsType (yyP2->one_word.next, kword_c)) {/* line 455 "itcl.puma" */  {/* line 457 "itcl.puma" */   if (! (yyP2->one_word.ident == ivariable || yyP2->one_word.ident == icommon)) goto yyL9;  {/* line 458 "itcl.puma" */   yyP3 = yyP2->one_word.ident;   yyP2 = yyP2->one_word.next;   attr = PAF_PUBLIC;   goto yyRecursion;  }  }yyL9:;  }  }  }  if (equaltIdent (yyP3, (ipublic))) {  if (yyP2->word_c.next->Kind == knoword) {/* line 460 "itcl.puma" */  {/* line 461 "itcl.puma" */   add_var (yyP2, PAF_REF_READ, PAF_PUBLIC);  }   return;  }  }  if (equaltIdent (yyP3, (ipublic))) {  if (Tree_IsType (yyP2->word_c.next, kword_c)) {  if (yyP2->word_c.next->word_c.next->Kind == kqual_word) {/* line 463 "itcl.puma" */  {/* line 466 "itcl.puma" */   relocate (yyP2->word_c.next->word_c.next->qual_word.qualification, menv (mnoobject (), yyP2->word_c.next->word_c.next->qual_word.env, yyP2->word_c.next->word_c.next));/* line 467 "itcl.puma" */   add_var (yyP2, PAF_REF_WRITE, PAF_PUBLIC);  }   return;  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -