Where can I find the makerange() function?

I noticed a lot of forum post responses mention the use of makerange() function.

I'm on 7.10 and 16.2 but I do not see this function.

Where can I get a hold of this function?

Thanks.

OriginalPostID-239372

  Discussion posts and replies are publicly visible

Parents
  • I would like to simulate bitmasks and bitwise operations to help keep track of conditional field completeness of sub section forms. The forms are three levels deep and it would be too difficult to manage vertically and horizontally all the conditional field completeness rules. So, the idea is that each layer is only worried about the context of it's own layer by relying on what a subsection reports back up with a bitmask. Of course, the fields are on a form are heterogeneous.

    This layered approach makes it modular/flexible and makes code less brittle to change.

    The bitmask has its own challenge with the integer size of the host, so either 32 or 64 bits (fields to track). We have a lot of fields. My intent is to build a dictionary/cdt to encapsulate based on a constructor to take on how many bits (fields) the caller requires. Based on 32 bit integers, modulo math would be used to determine the particular integer bitmask to use and the specific bit within that bitmask. That'll give me everything I need.

    An alternate approach I was thinking of is just have an array of integers where I use a union() to add to the bit number. Of course I would have to remove it from the list when user deletes contents of a field. At the end, I can just simply check for the length to make sure it matches the initial value given for the number of bits initialized with. I'm not going to get a single number like with a bitmask, but at least I'll get a count that should equal to that initialized number and it doesn't have the integer size limitation.

    What do you think?
Reply
  • I would like to simulate bitmasks and bitwise operations to help keep track of conditional field completeness of sub section forms. The forms are three levels deep and it would be too difficult to manage vertically and horizontally all the conditional field completeness rules. So, the idea is that each layer is only worried about the context of it's own layer by relying on what a subsection reports back up with a bitmask. Of course, the fields are on a form are heterogeneous.

    This layered approach makes it modular/flexible and makes code less brittle to change.

    The bitmask has its own challenge with the integer size of the host, so either 32 or 64 bits (fields to track). We have a lot of fields. My intent is to build a dictionary/cdt to encapsulate based on a constructor to take on how many bits (fields) the caller requires. Based on 32 bit integers, modulo math would be used to determine the particular integer bitmask to use and the specific bit within that bitmask. That'll give me everything I need.

    An alternate approach I was thinking of is just have an array of integers where I use a union() to add to the bit number. Of course I would have to remove it from the list when user deletes contents of a field. At the end, I can just simply check for the length to make sure it matches the initial value given for the number of bits initialized with. I'm not going to get a single number like with a bitmask, but at least I'll get a count that should equal to that initialized number and it doesn't have the integer size limitation.

    What do you think?
Children
No Data