2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-05-21 19:22:05 +00:00

Add xCAT code standard doc page

This commit is contained in:
wangxiaopeng 2016-01-06 07:11:08 -05:00
parent f7ff5867a7
commit 14aeb23a05
2 changed files with 94 additions and 1 deletions

View File

@ -0,0 +1,92 @@
Code Standard for Perl
======================
This document gives out a ``Code Standard`` for Perl programming in xCAT. All the Perl code which is checked in to xCAT code repository should follow this standard.
This document does not give the coding rules one by one, but give a piece of example code. You need to follow the example code strictly.
This standard referred to the Perl code style from perldoc: http://perldoc.perl.org/perlstyle.html
Meanwhile, you are recommended to use following command line to tidy your code: ::
perltidy -w -syn -g -opt -i=4 -nt -io -nbbc -kbl=2 -pscf=-c -aws -pt=2 -bbc -nolc <orig_code> -o <formatted_code>
Code Standard Example: ::
#! /usr/bin/perl
# This is a perl program example to demo the recommended
# style to write perl code
use strict;
use warnings;
#--------------------------------------------------------------------------------
=head3 subroutine_example
Descriptions:
This a subroutine to demo how to write perl code
Arguments:
param1: The first parameter
param2: The second parameter
param3: The third parameter
Returns:
0 - success
0 - fail
=cut
#--------------------------------------------------------------------------------
sub subroutine_example {
my ($param1, $param2, $param3) = @_;
print "In the subroutine subroutine_example.\n";
return 0;
}
# Declar variables
my $a_local_scale;
my @a_local_array;
my %a_local_hash;
$a_local_scale = 1;
@a_local_array = ("a", "b", "c");
%a_local_hash = (
"v1" => 1,
"v2" => 2,
"v3" => 3,
);
# Demo how to check the key of hash
if (%a_local_hash and
defined($a_local_hash{v1}) and
defined($a_local_hash{v2}) and
defined($a_local_hash{v3})) {
# Calculate the sum of values
my $sum_of_values = $a_local_hash{v1}
+ $a_local_hash{v2}
+ $a_local_hash{v3};
print "The sum of values: $sum_of_values.\n";
}
# Demo how to check whether the array is empty
if (@a_local_array) {
print "Has element in array: " . join(',', @a_local_array) . "\n";
}
elsif ($a_local_scale) {
print "The value of a scale variable: $a_local_scale.\n";
}
else {
# None of above
print "Get into the default path.\n";
}
# Call the subroutine subroutine_example()
subroutine_example($a_local_scale, \@a_local_array, %a_local_hash);
exit 0;

View File

@ -3,7 +3,8 @@ Code Development
.. toctree::
:maxdepth: 2
code_standard.rst
builds.rst
debug.rst
tips.rst