Click here to analyse any file

HomeFormats.MMID

What is a .MM file?

MM is an Objective-C++ source file - C++ code that can also call Objective-C, used on Apple platforms to bridge portable C++ with macOS and iOS frameworks.

Did you know
  • The .mm extension tells Apple’s Clang compiler to build the file as Objective-C++, so one file can freely mix C++ classes with Objective-C objects and Cocoa calls.
  • Cross-platform apps like OrcaSlicer use .mm files only where they must touch macOS APIs - Retina handling, native dialogs - while the rest of the code stays plain C++.
  • Rename a .mm file to .cpp and its Objective-C parts stop compiling: the double m is the only thing that flips the compiler into Objective-C++ mode.
What Analyser reads
Open and read programming-language source, build and configuration files as text: C, C++ and their headers, C#, Java, Kotlin, Go, Rust, Python, Ruby, PHP, Swift, Scala, Lua, Perl, R, Dart, Groovy and Visual Basic, GPU shaders (GLSL, HLSL), shell scripts (sh, Bash, Zsh, Fish), and the build and tooling files that fill a source repository - CMake, Makefiles, Ninja, Autotools (.in / .ac / .am / .m4), qmake projects, Doxygen configs and the dotfiles that configure Git, Docker, npm, ESLint, Prettier, Cursor and clang-format. Also opens Objective-C++ (.mm / .hmm), more GPU shaders (.fs / .vs / .gs), Boost.Jam and Meson build scripts, Unix manual pages, web stylesheets (Less, Sass/SCSS) and Svelte components, gettext translations (.po / .pot), Apple entitlements and licence/readme text, plus Cython (.pyx), OpenGL shaders (.fsh / .vsh / .geom), Git hook samples, ESLint and Yarn configs and ASP.NET (.aspx) pages. Each opens with a source preview, line count and metadata, entirely in your browser.
Depth of analysis
.MM is an identification-grade format: Analyser recognises it from its bytes and decodes the header metadata it carries, rather than opening it in a full viewer. Formats that do get a full viewer are marked "Full" on the formats page.
Open a .MM file
Drag a .MM file onto the Analyser home page (or tap to pick one). It is identified entirely in your browser - nothing is uploaded, there is no account, and it works offline once installed.
Related formats
.C · .H · .CC · .CPP · .CXX · .HPP · .HH · .HXX · .INO · .HMM · .CS · .Java · .KT · .KTS · .Go · .RS · .PY · .PYW and more. See all supported file types.