clang-modernize-3.5 - ອອນລາຍໃນຄລາວ

ນີ້ແມ່ນຄໍາສັ່ງ clang-modernize-3.5 ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


clang-modernize - ໜ້າຄູ່ມືສຳລັບ clang-modernize 3.5

ລາຍລະອຽດ


ການນໍາໃຊ້: clang-modernize [ທາງເລືອກ] [ ...]

ທາງເລືອກ:

ຕົວເລືອກການຈັດຮູບແບບ:

- ຮູບ​ແບບ​ - ເປີດ​ໃຊ້​ງານ​ຮູບ​ແບບ​ຂອງ​ລະ​ຫັດ​ການ​ປ່ຽນ​ແປງ​ໂດຍ​ການ​ນໍາ​ໃຊ້​ການ​ທົດ​ແທນ​.
ການນໍາໃຊ້ -ແບບ ເພື່ອເລືອກຮູບແບບການຈັດຮູບແບບ.

-style=- ຮູບແບບການຂຽນລະຫັດ, ປະຈຸບັນສະຫນັບສະຫນູນ:
LLVM, Google, Chromium, Mozilla, WebKit.

ການນໍາໃຊ້ -ແບບ=ເອກະສານ ເພື່ອໂຫຼດການຕັ້ງຄ່າຮູບແບບຈາກ
ໄຟລ໌ .clang-format ທີ່ຕັ້ງຢູ່ໃນໜຶ່ງໃນໄດເຣັກທໍຣີຫຼັກຂອງໄຟລ໌ແຫຼ່ງ (ຫຼື
ໄດເລກະທໍລີປະຈຸບັນສໍາລັບ stdin). ໃຊ້ -style="{key: value, ... }" ເພື່ອກໍານົດສະເພາະ
ຕົວກໍານົດການ, ເຊັ່ນ:

-style="{BasedOnStyle: llvm, IndentWidth: 8}"

-style-config=- ເສັ້ນທາງໄປຫາໄດເລກະທໍລີທີ່ມີໄຟລ໌ .clang-format
ອະ​ທິ​ບາຍ​ຮູບ​ແບບ​ທີ່​ຈະ​ນໍາ​ໃຊ້​ສໍາ​ລັບ​ການ​ຈັດ​ຮູບ​ແບບ​ລະ​ຫັດ​ໃນ​ເວ​ລາ​ທີ່​ -ແບບ=ເອກະສານ.

ທາງເລືອກໃນການລວມ/ຍົກເວັ້ນ:

-ຍົກເວັ້ນ=- ລາຍຊື່ເສັ້ນທາງທີ່ແຍກກັນດ້ວຍເຄື່ອງໝາຍຈຸດທີ່ບໍ່ສາມາດປ່ຽນໄດ້

-exclude-from=- ໄຟລ໌ທີ່ມີບັນຊີລາຍຊື່ຂອງເສັ້ນທາງທີ່ບໍ່ສາມາດປ່ຽນໄດ້

-include=- ບັນ​ຊີ​ລາຍ​ຊື່​ເສັ້ນ​ທາງ​ທີ່​ແຍກ​ອອກ​ຈາກ​ຈຸດ​ທີ່​ຈະ​ພິ​ຈາ​ລະ​ນາ​ທີ່​ຈະ​ໄດ້​ຮັບ​ການ​ຫັນ​

-include-from=- ໄຟລ​໌​ທີ່​ປະ​ກອບ​ດ້ວຍ​ບັນ​ຊີ​ລາຍ​ການ​ຂອງ​ເສັ້ນ​ທາງ​ທີ່​ຈະ​ພິ​ຈາ​ລະ​ນາ​ທີ່​ຈະ​ຫັນ​ເປັນ​

ທາງ​ເລືອກ​ທີ່​ທັນ​ສະ​ໄຫມ​:

-final-syntax-check - ກວດເບິ່ງ syntax ທີ່ຖືກຕ້ອງຫຼັງຈາກນໍາໃຊ້ການຫັນປ່ຽນ

-for-compilers=- ເລືອກ​ການ​ຫັນ​ປ່ຽນ​ເປົ້າ​ຫມາຍ​ຕັດ​ກັນ​ຂອງ​
ລັກສະນະພາສາທີ່ສະຫນັບສະຫນຸນໂດຍ compilers ທີ່ໃຫ້. ເອົາລາຍການທີ່ຂັ້ນດ້ວຍເຄື່ອງໝາຍຈຸດ
ຂອງ - .

ສາມາດເປັນອັນໃດກໍໄດ້: clang, gcc, icc, msvc
ແມ່ນ [. ]

-ຊ່ວຍ - ສະ​ແດງ​ທາງ​ເລືອກ​ທີ່​ມີ​ຢູ່ (-help-ເຊື່ອງ ສໍາລັບເພີ່ມເຕີມ)

- ລາຍ​ການ​ຊ່ວຍ​ເຫຼືອ​ - ສະ​ແດງ​ລາຍ​ການ​ທາງ​ເລືອກ​ທີ່​ມີ​ຢູ່ (-help-list-hidden ສໍາລັບການ
ເພີ່ມເຕີມ)

-perf=- ເກັບ​ກໍາ​ຂໍ້​ມູນ​ການ​ປະ​ຕິ​ບັດ​ແລະ​ຜົນ​ຜະ​ລິດ​ໃນ​ລະ​ບົບ​ທີ່​ກໍາ​ນົດ​ໄວ້​.
ຄ່າເລີ່ມຕົ້ນ: ./migrate_perf

- ຄວາມ​ສ່ຽງ​ - ເລືອກ​ລະ​ດັບ​ຄວາມ​ສ່ຽງ​ສູງ​ສຸດ​:

=safe - ພຽງແຕ່ການຫັນເປັນທີ່ປອດໄພ

=ສົມເຫດສົມຜົນ
- ເປີດ​ໃຊ້​ງານ​ການ​ຫັນ​ປ່ຽນ​ທີ່​ອາດ​ຈະ​ປ່ຽນ​ຄວາມ​ຫມາຍ (ຄ່າ​ເລີ່ມ​ຕົ້ນ​)

=risky - ເປີດໃຊ້ການຫັນປ່ຽນທີ່ມີແນວໂນ້ມທີ່ຈະປ່ຽນ semantics

- ສະຫຼຸບ - ພິມບົດສະຫຼຸບການຫັນປ່ຽນ

-ການປ່ຽນແປງ - ສະ​ແດງ​ສະ​ບັບ​ຂອງ​ໂຄງ​ການ​ນີ້​

ທາງເລືອກ Serialization:

-serialize-dir=- ເສັ້ນທາງໄປຫາໄດເລກະທໍລີທີ່ມີຢູ່ແລ້ວທີ່ຈະຂຽນ
ການທົດແທນແບບ serialized. ພຶດຕິກຳເລີ່ມຕົ້ນແມ່ນການຂຽນໃສ່ໄດເລກະທໍລີຊົ່ວຄາວ.

-serialize-ທົດແທນ - Serialize ການ​ທົດ​ແທນ​ຫົວ​ຫນ່ວຍ​ການ​ແປ​ພາ​ສາ​ກັບ​ແຜ່ນ​ແທນ​ທີ່​ຈະ​ເປັນ​
ການ​ປ່ຽນ​ແປງ​ໄຟລ​໌​.

ການຫັນປ່ຽນ:

-add-override - ໃຊ້ຕົວລະບຸການ override ຖ້າເປັນໄປໄດ້

-loop-ແປງ - ໃຊ້ range-based ສໍາລັບ loops ບ່ອນທີ່ເປັນໄປໄດ້

- ຄ່າຜ່ານທາງ - ຜ່ານຕົວກໍານົດການໂດຍມູນຄ່າທີ່ເປັນໄປໄດ້

-replace-auto_ptr - ແທນທີ່ std::auto_ptr (ປະຕິເສດ) ໂດຍ std::unique_ptr
(ທົດລອງ)

-ໃຊ້ອັດຕະໂນມັດ - ການ​ນໍາ​ໃຊ້​ຕົວ​ກໍາ​ນົດ​ປະ​ເພດ 'ອັດ​ຕະ​ໂນ​ມັດ​

-use-nullptr - ໃຊ້ຄໍາສໍາຄັນ nullptr ບ່ອນທີ່ເປັນໄປໄດ້

ທາງ​ເລືອກ​ຂອງ​ການ​ຫັນ​ປ່ຽນ​:

-override-macros - ກວດຫາແລະນໍາໃຊ້ມະຫາພາກທີ່ຂະຫຍາຍໄປຫາຄໍາທີ່ 'override'.

-user-null-macro=- ບັນຊີລາຍຊື່ທີ່ແຍກກັນດ້ວຍເຄື່ອງໝາຍຈຸດຂອງຊື່ມະຫາພາກທີ່ກຳນົດໂດຍຜູ້ໃຊ້ທີ່ມີພຶດຕິກຳ
ຄື NULL

-p ຖືກນໍາໃຊ້ເພື່ອອ່ານຖານຂໍ້ມູນຄໍາສັ່ງລວບລວມ.

ຕົວຢ່າງ, ມັນສາມາດເປັນ CMake build directory ທີ່ໄຟລ໌ທີ່ມີຊື່
compile_commands.json ມີຢູ່ (ໃຊ້ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON CMake ທາງເລືອກ
ເພື່ອ​ໃຫ້​ໄດ້​ຮັບ​ຜົນ​ຜະ​ລິດ​ນີ້​)​. ໃນເວລາທີ່ບໍ່ມີເສັ້ນທາງການກໍ່ສ້າງຖືກກໍານົດ, ຄົ້ນຫາສໍາລັບ
compile_commands.json ຈະຖືກພະຍາຍາມຜ່ານເສັ້ນທາງຫຼັກທັງໝົດຂອງການປ້ອນຂໍ້ມູນທຳອິດ
ໄຟລ໌ . ເບິ່ງ: http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html ຕົວຢ່າງ
ການຕັ້ງຄ່າ Clang Tooling ເທິງຕົ້ນໄມ້ແຫຼ່ງ.

... ລະບຸເສັ້ນທາງຂອງໄຟລ໌ແຫຼ່ງ. ເສັ້ນທາງເຫຼົ່ານີ້ແມ່ນ

ຊອກຫາຢູ່ໃນຖານຂໍ້ມູນຄໍາສັ່ງລວບລວມ. ຖ້າເສັ້ນທາງຂອງໄຟລ໌ແມ່ນຢ່າງແທ້ຈິງ, ມັນ
ຕ້ອງການຊີ້ໃຫ້ເຫັນເຖິງຕົ້ນໄມ້ແຫຼ່ງຂອງ CMake. ຖ້າເສັ້ນທາງແມ່ນພີ່ນ້ອງ, ປະຈຸບັນ
ໄດເລກະທໍລີທີ່ເຮັດວຽກຕ້ອງຢູ່ໃນຕົ້ນໄມ້ແຫຼ່ງ CMake ແລະໄຟລ໌ຕ້ອງຢູ່ໃນ a
ໄດເລກະທໍລີຍ່ອຍຂອງໄດເລກະທໍລີທີ່ເຮັດວຽກໃນປະຈຸບັນ. "./" ຄໍານໍາຫນ້າໃນໄຟລ໌ທີ່ກ່ຽວຂ້ອງ
ຈະຖືກເອົາອອກໂດຍອັດຕະໂນມັດ, ແຕ່ສ່ວນທີ່ເຫຼືອຂອງເສັ້ນທາງພີ່ນ້ອງຕ້ອງເປັນຄໍາຕໍ່ທ້າຍ
ເສັ້ນທາງໃນຖານຂໍ້ມູນຄໍາສັ່ງລວບລວມ.

ຕົວຢ່າງ:

ນຳໃຊ້ການຫັນປ່ຽນທັງໝົດໃນໄຟລ໌ທີ່ບໍ່ຕ້ອງການການລວບລວມຂໍ້ມູນ:

clang-modernize file.cpp

ແປງສໍາລັບ loops ເປັນ ranged-based ສໍາລັບ loops ສໍາລັບໄຟລ໌ທັງຫມົດໃນຖານຂໍ້ມູນການລວບລວມທີ່
ຂຶ້ນກັບໂຄງການຍ່ອຍ ແລະຈາກນັ້ນປະຕິຮູບລະຫັດອັດຕະໂນມັດໂດຍໃຊ້ຮູບແບບ LLVM:

clang-ທັນສະໄຫມ -p ສ້າງ/ເສັ້ນທາງ - ລວມ​ທັງ​ ໂຄງການ/ເສັ້ນທາງ - ຮູບ​ແບບ​ -loop-ແປງ

ໃຊ້ທັງ nullptr ແລະ override specifier, ໂດຍໃຊ້ git ls-files:

git ls-files '*.cpp' | xargs -I{} clang-modernize -p ສ້າງ/ເສັ້ນທາງ

-use-nullptr -add-override -override-macros {}

ນຳໃຊ້ການຫັນປ່ຽນທັງໝົດທີ່ຮອງຮັບໂດຍທັງ clang >= 3.0 ແລະ gcc >= 4.7 ກັບ foo.cpp ແລະອັນໃດກໍໄດ້.
ລວມ​ຫົວ​ຂໍ້​ໃນ​ແຖບ​:

clang-ທັນສະໄຫມ -for-compilers=clang-3.0,gcc-4.7 foo.cpp

- ລວມ​ທັງ​ ພາທະນາຍຄວາມ -- -std=c++ 11 -Ibar

ໃຊ້ clang-modernize-3.5 ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net



ລ່າສຸດ Linux ແລະ Windows ໂຄງການອອນໄລນ໌