1. 25 Sep, 2017 1 commit
  2. 24 Sep, 2017 1 commit
    • Christian Hergert's avatar
      style-guide: use #pragma once header guards · 4de226ea
      Christian Hergert authored
      This changes most of the code base to using #pragma once instead
      of the old style #ifndef FOO_H header guards. I hear that the
      old style is still slightly faster, but I don't care much about
      that. I'm sure GCC will continue to optimize for this going
      forward.
      
      Also, we're already using a bunch of other C11 features, so
      might as well use this too.
      4de226ea
  3. 21 Sep, 2017 1 commit
    • Christian Hergert's avatar
      source tree reorganization · 9b9db776
      Christian Hergert authored
      As the project has grown, we've let things get a bit out of their
      logical place. This does a bit of cleanup and tries to bring some
      of the embedded resources closer to where they are used.
      
      But more importantly, this allows us to clean some things up to
      the point that we can move forward statically linking a bunch of
      the plugins into libide. The plan here is to speed up the initial
      loading by avoiding lots of disk I/O stats which are currently
      hurting us.
      9b9db776
  4. 14 Feb, 2017 1 commit
  5. 25 Oct, 2016 1 commit
  6. 19 Oct, 2016 2 commits
  7. 17 Jun, 2016 1 commit
    • Christian Hergert's avatar
      build: reorganize libide · d0121822
      Christian Hergert authored
      The libide/ directory was getting a bit out of control. The number of files
      in the directory was simply too much to make it easy for newcomers to
      find what they are looking for.
      
      This breaks things up into a bunch of, somewhat logical, directories.
      
      We no longer use a bunch of crazy include paths with -I, and instead
      include the directory name when including as such:
      
        #include "buffers/ide-buffer.h"
      
      This will hopefully make it easier to navigate, and basically the same to
      open files if you use fuzzy search to open files.
      d0121822
  8. 20 Jun, 2015 2 commits
    • Christian Hergert's avatar
      c5c91ecf
    • Christian Hergert's avatar
      symbol-tree: add plumbing for symbol tree abstraction · 3d6db85c
      Christian Hergert authored
      The current symbol abstraction only allows for getting an array of
      symbols. This isn't entirely useful going forward as we support more
      complex languages.
      
      This provides the interface and stub implementation for clang to
      extract the symbols into a tree like interface.
      
      You will notice that the IdeSymbolTree interface is as vague as possible.
      This is meant to avoid inflating symbol objects until necessary, and
      allow them to be released as early as possible.
      
      Some impelementations may choose to hold onto a translation unit in the
      IdeSymbolTree subclass and inflate from internal strings on demand.
      3d6db85c
  9. 30 Mar, 2015 1 commit
    • Christian Hergert's avatar
      libide is a GPL-3.0 shared library · 7d137ac9
      Christian Hergert authored
      Typically I use LGPL-2.1+ for shared libraries. However, due to the
      nature of libide being the "guts" of Builder, I do intend for this to
      be GPL-3.0. Additionally, it simplifies what we can include in the
      library without worrying about staying LGPL safe.
      
      Exceptions will of course be made for upstreaming into libraries such as
      GtkSourceView. Just ask if you want something in particular.
      7d137ac9
  10. 23 Mar, 2015 1 commit
    • Christian Hergert's avatar
      libide: add libide design and prototype · f97cfeeb
      Christian Hergert authored
                  ** This is not ready for public consumption **
      
      This includes the basic design and skeleton implementation of plans for
      libide. Everything extends from the IdeContext object. All objects, with
      the exception of IdeContext, are decendants of an IdeContext.
      
      Since scripting is important for this system, it is important that objects
      are GObject Introspectable. We will add this in the not too distant
      future.
      
      For more information on the objects and components of libide, see
      libide/DESIGN.md.
      
      If you would like to contribute to libide development, get in touch via
      email or IRC so we can collaborate on which component you would like to
      implement.
      
      -- Christian
      f97cfeeb
  11. 11 Dec, 2014 1 commit