General cleanup suggestions
-
Use default operators for cryptocontext.h
(and perhaps other classes) (fixed by !133 (closed)) -
Follow member-variable naming convention in style guide ( CKKSPacked
), and avoid use ofthis->
(fixed by !129 (closed), !132 (closed)) -
Add CKKSPackedEncoding
to section7.6 Plaintext
ofpalisade_manual.pdf
(fixed in 7ee9c73b) -
Use make_shared
instead ofnew
for classes aliased toshared_ptr
(e.g.EncodingParams, LPEvalKey, Plaintext, Ciphertext
) (fixed by !96 (closed)) -
Use reserve
andemplace_back
for performance-critical code (e.g. encoding) -
Check use of pragma omp parallel for
:-
dcrtpoly.cpp
contains severalpragma omp parallel for
directives onm_vectors.size()
which is small, and may be slower than single-threaded
-
-
Standardize copyright to < 80 characters per line, and enable more cpplint options -
Apply copyright to benchmark folder (WIP at !174 (closed))
-
-
Minimize use of uninitialized double/size_t values (e.g. ckkspackendencoding.cpp
) -
Enable some clang-tidy options -
Sort header includes -
Standardize FIXME
=>TODO
(fixed by !131 (closed); see #145 (closed)) -
Use alias for typename NativePoly::Params
, etc. to improve readability of template code (fixed by !100 (closed)) -
Use aliases instead of typedef -
Standardize header guard format. Currently, we have ( LBCRYPTO_LATTICE_SUBGAUSSIAN_H
,TRAPDOOR_LIB_ABE_ABE_RNS_H_
,_LBCRYPTO_SUBGAUSSIAN_GSW_CPP
,LBCRYPTO_OBFUSCATE_LWEBPCHCPRF_CPP
,_SRC_LIB_CORE_MATH_MATRIX_IMPL_CPP
,SRC_CORE_LIB_LATTICE_STDLATTICEPARMS_H_
,_XMAP_H
) at least 7 different styles. Alternatively, use#pragma once
? (See #144) -
Avoid #define XXX MAGIC_NUMBER
macros. For example (aesutil.h
,UnitTestBlocKAllocate.cpp
).-
Use alias in ubintdyn.h
forour_*int128_t
, or remove?
-
-
Add PALISADE_CHECK
macro to simplify somePALISADE_THROW
code (WIP at !130 (closed))
Edited by Fabian Boemer