-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfeatures.html
157 lines (134 loc) · 7.75 KB
/
features.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
---
title: Cevelop Features Overview
layout: default
active: features
permalink: /features/
---
<div class="jumbotron">
<div class="container">
<h1>Features <small>– what's inside?</small></h1>
</div>
</div>
<div class="container">
<div class="row featurette">
<div class="col-md-7">
<h1>Test-Driven Development</h1>
<p>Cevelop ships with CUTE (<a href="http://www.cute-test.com" target="_blank">www.cute-test.com</a>), an easy to use unit testing framework for <span style="color:red;">C++</span>. CUTE is tightly integrated with Cevelop to offer easy writing and management of unit tests. The following features are included:</p>
<ul>
<li>Red/Green-bar test result visualization</li>
<li>Support for <span style="color:red;">C++</span> seams and mock objects</li>
<li>Code coverage visualization</li>
<li>Diff-viewer for failing tests</li>
<li>Automatic test registration</li>
</ul>
</div>
<div class="col-md-5">
<img class="featurette-image img-responsive" src="../img/cute-feature.png" alt="Generic placeholder image" style="margin-top: 50px;">
<p class="img-caption">Red/Green-bar test-driven development with Cevelop</p>
</div>
</div>
<hr class="featurette-divider">
<div class="row featurette">
<div class="col-md-5">
<div id="carousel-macros" class="carousel slide" data-ride="carousel" data-interval="0" style="margin-top: 50px;">
<ol class="carousel-indicators">
<li data-target="#carousel-macros" data-slide-to="0" class="active"></li>
<li data-target="#carousel-macros" data-slide-to="1"></li>
<li data-target="#carousel-macros" data-slide-to="2"></li>
</ol>
<div class="carousel-inner" role="listbox" >
<div class="item active">
<a href="#carousel-macros" role="button" data-slide="next">
<img src="../img/macro01.png" alt="" >
</a>
</div>
<div class="item">
<a href="#carousel-macros" role="button" data-slide="next">
<img src="../img/macro02.png" alt="" >
</a>
</div>
<div class="item">
<a href="#carousel-macros" role="button" data-slide="next">
<img src="../img/macro03.png" alt="" >
</a>
</div>
</div>
</div>
<p class="img-caption">Cevelop can automatically transform macro definitions into C++11 code</p>
</div>
<div class="col-md-7">
<h1> Spring-clean your <span style="color:red;">C++</span> Code </h1>
<p>Cevelop offers a variety of gardening tools to keep your code up-to-date with the latest ISO <span style="color:red;">C++</span> Standard. It can perform a variety of static code analyses to find potential weaknesses in your code, and provides <strong>Quick-Assists</strong> to fix them.</p>
<ul>
<li>Find macros and transform them into semantically equivalent, type-safe, and <span style="color:red;">C++</span>11 compliant code.</li>
<li>Migrate variable declarations and initializations to the new uniform initialization syntax.</li>
<li>Detect uninitialized variables.</li>
</ul>
</div>
</div>
<hr class="featurette-divider">
<div class="row featurette">
<div class="col-md-7">
<h1>Refactorings</h1>
<p>Cevelop provides many additional refactorings that help you write and maintain your <span style="color:red;">C++</span> code.</p>
<p>Our <strong>namespace</strong> related refactorings help keeping your global namespace unpolluted and ambiguity-free, as well as making your code generally more readable:
<ul>
<li><strong>Inline Using</strong> changes identifiers to include their namespace or class prefix and eliminates using namespace directives and using declarations.</li>
<li><strong>Extract Using Declaration</strong> can automatically extract fully-qualified names into the local block-scope, which makes the code more readable without polluting the global namespace</li>
<li><strong>Qualify Name</strong> resolves the scope of unqualified names, in case you are ever in doubt about the origin of an identifier.</li>
<ul>
</div>
<div class="col-md-5">
<div id="carousel-namespace" class="carousel slide" data-ride="carousel" data-interval="0" style="margin-top: 50px;">
<ol class="carousel-indicators">
<li data-target="#carousel-namespace" data-slide-to="0" class="active"></li>
<li data-target="#carousel-namespace" data-slide-to="1"></li>
</ol>
<div class="carousel-inner" role="listbox" >
<div class="item active">
<a href="#carousel-namespace" role="button" data-slide="next"><img src="../img/inline-namespace01.png" alt="" ></a>
</div>
<div class="item">
<a href="#carousel-namespace" role="button" data-slide="next"><img src="../img/inline-namespace02.png" alt="" ></a>
</div>
</div>
</div>
<p class="img-caption">Cevelop automatically identifies problematic namespace directives</p>
</div>
</div>
<hr class="featurette-divider">
<div class="row featurette">
<div class="col-md-12">
<h1 id="templator">Template Visualization</h1>
<p>Visually explore function- and class-templates: The <strong>Template Information View</strong> displays detailed template information and lets you easily browse through instantiation levels.</p>
<p>The Template Information View can be openend in Cevelop via <i>Window</i> → <i>Show View</i> → <i>Others...</i> → <i>C/C++</i> → <i>Template Information</i></p>
<img class="featurette-image img-responsive" src="../img/templator-variadic-large.png" alt="Generic placeholder image">
<p class="img-caption">Recursive calls to a variadic template function, visualized in Cevelop 1.6</p>
</div>
</div>
<hr class="featurette-divider">
<div class="row featurette">
<div class="col-md-5">
<img class="featurette-image img-responsive" src="../img/constificator_refactoring_diff.png" alt="Generic placeholder image">
<p class="img-caption">Constificator Refactoring Example</p>
</div>
<div class="col-md-7">
<h1 id="constificator">Constification</h1>
<p><strong>Constificator</strong> helps to write const-correct code starting from the first line of your project. It also supports you retroactively when reviewing or extending an existing codebase. Because it makes use of the existing problem reporting infrastructure of Cevelop, it integrates nicely into the existing workflow by providing standard problem markers and QuickFixes.</p>
<p><strong>Constificator</strong> is available as a Beta Plug-in. See our <a href="/beta">Beta Plug-ins</a> page for more details and installation instructions.
<p>To learn about the usage and benefits of <strong>Constificator</strong>, have a look at the <a target="_blank" href="/resources/Constificator_Documentation.pdf">Constificator User Manual</a>.</p>
</div>
</div>
<hr class="featurette-divider">
<div class="row featurette">
<div class="col-md-7">
<h1 id="includator">Include Analysis and Optimization</h2>
<p class="lead">Dependencies among <span style="color:red;">C++</span> header files can become quite complex and get out of control. Includator analyzes the dependency hierarchy in <span style="color:red;">C++</span> projects and optimizes them if necessary. Such cleanup keeps <span style="color:red;">C++</span> header files tidy and reduces compile time.</p>
<p class="lead">Cevelop provides exclusive access to <strong>Includator</strong>, which otherwise has to be purchased separately!</p>
</div>
<div class="col-md-5">
<img class="featurette-image img-responsive" src="../img/square-includator.png" alt="Generic placeholder image">
<p class="img-caption">Include Analysis Example</p>
</div>
</div>
</div>