Changeset 17 for trunk/Compiler/Produce/UProducerDynamicC.pas
- Timestamp:
- Nov 8, 2010, 2:14:13 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Compiler/Produce/UProducerDynamicC.pas
r12 r17 17 17 function TranslateType(Name: string): string; 18 18 function TranslateOperator(Name: string): string; 19 procedure Emit(AText: string);20 procedure EmitLn(AText: string = '');21 19 procedure GenerateUses(UsedModules: TUsedModuleList); 22 20 procedure GenerateModule(Module: TModule); … … 39 37 function GenerateExpression(Expression: TExpression): string; 40 38 public 41 TextSource: TStringList;42 IndentationLength: Integer;43 Indetation: Integer;44 39 procedure AssignToStringList(Target: TStringList); override; 45 40 procedure Produce(Module: TModule); override; … … 54 49 constructor TProducerDynamicC.Create; 55 50 begin 56 TextSource := TStringList.Create;57 IndentationLength := 2;58 51 Name := 'Dynamic C'; 59 52 end; … … 90 83 else if Name = 'xor' then Result := '^' 91 84 else Result := Name; 92 end;93 94 procedure TProducerDynamicC.EmitLn(AText: string = '');95 begin96 Emit(AText);97 TextSource.Add('');98 end;99 100 procedure TProducerDynamicC.Emit(AText: string);101 begin102 with TextSource do begin103 if Count = 0 then Add('');104 if Strings[Count - 1] = '' then105 Strings[Count - 1] := Strings[Count - 1] + DupeString(' ', IndentationLength * Indetation);106 Strings[Count - 1] := Strings[Count - 1] + AText;107 end;108 85 end; 109 86
Note:
See TracChangeset
for help on using the changeset viewer.